【发布时间】:2016-06-24 19:04:51
【问题描述】:
如何在使用 asp.net 插入 SQL Server 之前检查该值是否已经存在?
这是当前代码:
protected void Button1_Click(object sender, EventArgs e)
{
SqlCommand cmd = new SqlCommand("insert into customers_testing (cust_id,cust_name,cust_group,acc_mgr2,acc_mgr) values('" + textCustID.Text + "','" + textCustName.Text + "','" + textCustSector.Text + "','" + dropdAccAdmin.Text + "','" + dropdAccManager.Text + "')", con);
cmd.ExecuteNonQuery();
con.Close();
Label1.Visible = true;
Label1.Text = "New Customer Added Successfully";
textCustID.Text = "";
}
【问题讨论】:
-
请仔细阅读this one 之类的答案。您可以修改查询以检查重复项,您可以添加唯一约束,或两者兼而有之。确切的答案实际上取决于您的用例。
-
SQL Injection alert - 你应该不将你的 SQL 语句连接在一起 - 使用 参数化查询 来避免 SQL 注入
-
在检查 SQL 中记录的存在之前,您需要知道一些独特的东西,否则在某些情况下它会失败
标签: c# sql asp.net sql-server