2011-12-03 172 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; 

當嘗試存儲數據,我得到

錯誤轉換數據類型爲varchar爲bigint。

任何建議?

回答

6

變化

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

INSERT INTO tbl_subscribers VALUES (@callerID2, ... 
+0

謝謝。有用。將此標記爲答案。 –

2

在參數化的SQL查詢的情況下,你不需要把單引號(')與參數名。

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