データベースにプライマリキーが存在しないことを確認しましたが、問題があります。追加情報:オブジェクトに重複キーを挿入できません
追加情報:PRIMARY KEY制約の違反 'PK_Yeucaukhachhang'。オブジェクト 'dbo.Yeucaukhachhang'に重複キーを挿入できません。重複キー値は(MH01123123)です。
using (SqlConnection sqlCon = new SqlConnection(sqlCnt))
{
for (int i = 0; i < metroGrid2.Rows.Count; i++)
{
SqlCommand cmd = new SqlCommand("INSERT INTO
Yeucaukhachhang(MaKH,MaHang,TenHang,DonViTinh,Dongia,
SoLuong,Duyet) values('"+ makh.Text+"','"+
metroGrid2.Rows[i].Cells["mahang"].Value +
"','"+metroGrid2.Rows[i].Cells["tenhang"].Value+"', '"+
metroGrid2.Rows[i].Cells["donvitinh"].Value+"', '"+
metroGrid2.Rows[i].Cells["dongia"].Value+"', '"+
metroGrid2.Rows[i].Cells["soluong"].Value+"', 'N')", sqlCon);
SqlCommand cmd1 = new SqlCommand("INSERT INTO DanhMucKhachHang(MaKhachHang,TenKhachHang,DiaChiKhachHang,SDTKhachHang,CMD,masothue,thanhtoan,nganhang,taikhoannganhang,ngaythang,MaHang,TenHang,DonViTinh,Dongia,SoLuong,Duyet) VALUES(@MaKhachHang,@TenKhachHang,@DiaChiKhachHang,@SDTKhachHang,@CMD,@masothue,@thanhtoan,@nganhang,@taikhoannganhang,@ngaythang)", sqlCon);
cmd1.Parameters.AddWithValue("@MaKhachHang", makh.Text);
cmd1.Parameters.AddWithValue("@TenKhachHang", namekh.Text);
cmd1.Parameters.AddWithValue("@DiaChiKhachHang", address.Text);
cmd1.Parameters.AddWithValue("@SDTKhachHang", phone.Text);
cmd1.Parameters.AddWithValue("@CMD", idkh.Text);
cmd1.Parameters.AddWithValue("@masothue", idthue.Text);
cmd1.Parameters.AddWithValue("@thanhtoan", deliver.Text);
cmd1.Parameters.AddWithValue("@nganhang", bank.Text);
cmd1.Parameters.AddWithValue("@taikhoannganhang", idacc.Text);
cmd1.Parameters.AddWithValue("@ngaythang", this.datekh.Value);
sqlCon.Open();
cmd.ExecuteNonQuery();
cmd1.ExecuteNonQuery();
sqlCon.Close();
MessageBox.Show("Thêm thành công, đa chuyển qua xác nhận yêu cầu");
LTQL.Home.Home cort = new LTQL.Home.Home();
cort.Show();
this.Hide();
}
1.チェックされているデータベース名が正しい。 2. sql delete makh = MH01123123を書き込んで、もう一度やり直してください。 –
なぜ 'cmd1'に対してパラメータ化されたクエリを使用しますが、' cmd'には使用しませんか? –
Yeucaukhachhangのテーブル構造を投稿してください – tharif