如何避免使用ASP.NET插入数据库中的数据时重复值



我正在构建一个程序,用户在其中导入excel文件(通过asp.net c#(,我想做的是,在我的Web应用程序中插入,如果用户使用用户放置已经插入的相同数据显示了一条消息,说它失败了

这是代码:

public partial class Inserir : System.Web.UI.Page
    {
        SqlConnection con = new SqlConnection(@"Data Source=PEDRO-PCSQLEXPRESS;Initial Catalog=costumizado;Integrated Security=True");
        protected void Page_Load(object sender, EventArgs e)
        {
        }
        protected void btn_Click(object sender, EventArgs e)
        {
            con.Open();
            SqlCommand cmd = con.CreateCommand();
            cmd.CommandType = CommandType.Text;
            cmd.CommandText = "INSERT INTO Dados values('"+TextBox1.Text+"','"+TextBox2.Text+"','"+TextBox3.Text+"','"+TextBox4.Text+"')";
            cmd.ExecuteNonQuery();
        }
    }
}
Mov. Date   Value Date   move description   Value in EUR
28/02/2001 - 20/04/2019 - Fh123iasdasd    - 20119  
28/02/2001 - 20/04/2019 - Fh123iasdasd12  - 20119 
28/02/2001 - 20/04/2019 - Fh123iasdasd    - 20119 <--- Dont want this line

我不希望列"移动描述"能够,具有与其他名称相同的名称

在数据库中的字段上设置一个唯一键。任何尝试在另一个记录中添加副本的尝试都应引发异常。

在表上创建一个唯一的索引,其中包括必须是唯一的列。这将禁止重复条目,而不论用于插入数据的方法如何。

CREATE UNIQUE NONCLUSTERED INDEX [IX_TableName_ColumnName] ON [dbo].[TableName]
(
    [ColumnName] ASC
)

最新更新