必须声明标量变量异常



我使用的是:

string insertQ = "insert into Customer(Name, CNIC, Address, Balance) values(@name, @cnic, @address, @balance); SELECT CAST(scope_identity() AS int);";
SqlCommand insertCmd1 = new SqlCommand(insertQ, con);
Int32 newId = (Int32)insertCmd1.ExecuteScalar();

但是

"必须声明标量变量"

异常出现在ExecuteScalar

请告诉我如何解决…

您需要传入参数的值:

string insertQ = "insert into Customer(Name, CNIC, Address, Balance) values(@name, @cnic, @address, @balance); SELECT CAST(scope_identity() AS int);";
SqlCommand insertCmd1 = new SqlCommand(insertQ, con); 
insertCmd.Parameters.Add("name", SqlDbType.VarChar).Value = "name";     
insertCmd.Parameters.Add("cnic", SqlDbType.VarChar).Value = "cnic"; 
insertCmd.Parameters.Add("address", SqlDbType.VarChar).Value = "address";     
insertCmd.Parameters.Add("balance", SqlDbType.VarChar).Value = "balance"; 

Int32 newId = (Int32)insertCmd1.ExecuteScalar();

SqlDbType必须与您的方案相匹配。

最新更新