我遇到了问题。 我在清单框中有一些项目,我想在表格中添加所选项目的名称。但是当我使用这段代码时。
con.Open();
foreach (object item in chkOrder.CheckedItems)
{
string selectedItems = item.ToString();
SqlCommand cmd = con.CreateCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = "INSERT INTO Kitchen (Order_ID,Customer_ID,Reservation_ID,Customer_Name,Charges,Order_Name) VALUES ('" + txtOrderID.Text + "','" + txtCustomerID.Text + "','" + txtReservationID.Text + "','" + txtCustomerName.Text + "','" + allOrders + "',@Order_name)";
cmd.Parameters.AddWithValue("@Order_Name",selectedItems);
cmd.ExecuteNonQuery();
}
con.Close();
它会引发异常。
注意:" Order_ID"是一把钥匙。
System.Data.SqlClient.SqlException: 'Violation of PRIMARY KEY constraint 'PK_Kitchen'. Cannot insert duplicate key in object 'dbo.Kitchen'. The duplicate key value is (1).
The statement has been terminated.'
我该怎么办? 请帮助。
答案 0 :(得分:0)
您可以将参数AUTO_INCREMENT添加到PRIMARY KEY,而不是手动插入,这样您的数据库就可以处理它,或者您可以在代码中增加它。