我想插入复选框数据。在插入数据之前,系统需要验证记录是否存在于数据库中。如果记录已插入,则显示标签为“用户已存在”。目前只有插入记录到sql数据库才有效。我尝试了一些代码,但它不适用于检查重复
protected void Submit(object sender, EventArgs e)
{
string _connStr = "Data Source=.;Initial Catalog=UniKL;Integrated Security=True";
string _query = "Insert Into [UniKL].[dbo].[table](id, IDcard, name) VALUES (@id, @IDcard, @name)";
foreach (GridViewRow gvrow in gvADList.Rows)
{
//Find checkbox control in gridview for particular row
CheckBox cbSelect = (CheckBox)gvrow.FindControl("cbSelect");
if (cbSelect.Checked)
{
string userid = gvrow.Cells[1].Text;
string name = gvrow.Cells[2].Text;
string idcard = gvrow.Cells[3].Text;
using (SqlConnection conn = new SqlConnection(_connStr))
{
using (SqlCommand comm = new SqlCommand())
{
comm.Connection = conn;
comm.CommandType = CommandType.Text;
comm.CommandText = _query;
comm.Parameters.AddWithValue("@id", userid);
comm.Parameters.AddWithValue("@name", name);
comm.Parameters.AddWithValue("@IDcard", idcard);
try
{
conn.Open();
comm.ExecuteNonQuery();
}
catch (SqlException ex)
{
lblMsgLuqman.Text = "Insert data error";
}
lblMsgLuqman.Text = "Details Inserted Successfully";
}
答案 0 :(得分:0)
您可以在表格中要检查唯一性的字段中应用唯一键约束。
当你这样做并且Record已经存在时,ExecuteNonQuery()函数将返回 0 给你的值不同于成功插入后的值**(受影响的行数)* *。我想你可以检查退货价格并相应地显示消息。
希望这有帮助。