为什么我会不断收到“指定的演员表无效”的信息。错误?

时间:2019-06-11 22:09:43

标签: c# sql sql-insert

我的INSERT查询有问题,我想向订单表中插入一些数据,并且不断收到此错误。我在做什么错了?

我尝试将一些幻数添加到参数中,但错误仍然出现。

SqlCommand checkcmd = new SqlCommand("INSERT INTO [order] (user_id, overall_sum, date) VALUES (@user_id, @overall_sum, @date) SELECT SCOPE_IDENTITY()", con);
checkcmd.Parameters.AddWithValue("@user_id", ((MainWindow)Window.GetWindow(this)).UId);
checkcmd.Parameters.AddWithValue("@overall_sum", Convert.ToDecimal(sum));
checkcmd.Parameters.AddWithValue("@date", (DateTime.Now).ToString("yyyy-MM-dd HH:mm:ss"));


con.Open();
int insId = (int)checkcmd.ExecuteScalar();
con.Close();

1 个答案:

答案 0 :(得分:-1)

而不是使用Parameters.AddWithValue(),而是查看Parameters.Add()。使您对类型有更多的控制。 您的特定错误是因为您试图在日期字段中存储字符串

更改

checkcmd.Parameters.AddWithValue("@date", (DateTime.Now).ToString("yyyy-MM-dd HH:mm:ss"));

checkcmd.Parameters.Add("@date" DbType.DateTime).Value = DateTime.Now;