繁体   English   中英

SQL Server:UPDATE关系表

[英]SQL Server : UPDATE Relation Table

我想更新我的书和名为R_Kital_Al用户之间的关系表,但是出现此错误;

System.Data.SqlClient.SqlException(0x80131904):无法在具有唯一索引'IX_Kitap_Al'的对象'dbo.R_Kitap_Al'中插入重复的键行。 重复键值为(15)。

如何解决此错误?

private void Update_Click(object sender, EventArgs e)
{
        SqlConnection conn = new SqlConnection(@"Data Source=HP\SQLEXPRESS;Initial Catalog=Kütüphane;Integrated Security=True");

        conn.Open();
        SqlCommand cmd = new SqlCommand("UPDATE R_Kitap_Al SET SSN=@SSN,Book_No=@Book_No,BaslamaTarihi=@BaslamaTarihi,BitisTarihi=@BitisTarihi", conn);
        DateTime dt = new DateTime();
        cmd.Parameters.AddWithValue("@SSN",dataGridView1.CurrentRow.Cells[0].Value);
        cmd.Parameters.AddWithValue("@Book_No",book_NoTextBox.Text);
        cmd.Parameters.AddWithValue("@BaslamaTarihi",baslamaTarihiDateTimePicker.Value);
        dt = Convert.ToDateTime(baslamaTarihiDateTimePicker.Value);
        dt = dt.AddDays(0);
        bitisTarihiDateTimePicker.Value = dt.AddDays(15);
        cmd.Parameters.AddWithValue("@BitisTarihi", bitisTarihiDateTimePicker.Value);

        cmd.ExecuteNonQuery();
        this.Hide();
        R_Kitap_Al kit = new R_Kitap_Al();
        kit.ShowDialog();
        this.Close();
}

没有where子句,因此您要使用指定的值更新该表中的每一行。 这些列之一是主键还是外键?

我们不能在唯一键中插入重复值。

因此,在您的表中, “ SSN”“ Book_No ”列可能是唯一的。 请检查 SSN”列或“ Book_No”中是否存在“ 15

请从提及列中删除唯一键,或尝试使用其他值而不是15更新。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM