Ye Myat Aung
Ye Myat Aung

Reputation: 1853

Error converting data type varchar to bigint (C# ASP.NET)

I'm trying to store a Int64 variable to data column with bigint data type. Following is my sql insert query and parameter declarations.

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;

When it try to store the data, I get

Error converting data type varchar to bigint.

Any advices?

Upvotes: 0

Views: 4474

Answers (2)

Elias Hossain
Elias Hossain

Reputation: 4469

In case of parametrized sql query, you don't need to put single quote (') with parameter name.

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

Upvotes: 2

giftcv
giftcv

Reputation: 1662

Change

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

to

INSERT INTO tbl_subscribers VALUES (@callerID2, ...

Upvotes: 6

Related Questions