2011-12-03 108 views
0

bigintデータ型のデータ列にInt64変数を格納しようとしています。以下は、私のSQLの挿入クエリとパラメータの宣言です。それはデータを保存しようとするとデータ型varcharをbigintに変換中にエラーが発生しました(C#ASP.NET)

cmd.CommandText = "INSERT INTO tbl_subscribers VALUES ('@callerID2', '@timeStamp', '@unregisterDate ', '1')"; 

cmd.Parameters.Add("@callerID2", SqlDbType.BigInt); 
     cmd.Parameters["@callerID2"].Value = SMSObject.callerID; 
     cmd.Parameters.Add("@timeStamp", SqlDbType.DateTime); 
     cmd.Parameters["@timeStamp"].Value = SMSObject.timeStamp.ToString("yyyy-MM-dd HH:mm:ss"); 
     cmd.Parameters.Add("@unregisterDate", DBNull.Value); 
     cmd.Parameters["@unregisterDate"].Value = DBNull.Value; 

、私はBIGINTするデータ型varchar型に変換

エラーを取得します。

アドバイスはありますか?

答えて

6

変更

INSERT INTO tbl_subscribers VALUES ('@callerID2', ... 

パラメータ化SQLクエリの場合
INSERT INTO tbl_subscribers VALUES (@callerID2, ... 
+0

ありがとうございました。できます。これを答えとしてマークします。 –

2

に、あなたはパラメータ名を単一引用符(')を配置する必要はありません。

cmd.CommandText = "INSERT INTO tbl_subscribers 
     VALUES (@callerID2, @timeStamp, @unregisterDate, '1')"; 
関連する問題