asp.net检查重复并将数据插入sql

时间:2015-08-10 08:37:49

标签: c# mysql asp.net

我想插入复选框数据。在插入数据之前,系统需要验证记录是否存在于数据库中。如果记录已插入,则显示标签为“用户已存在”。目前只有插入记录到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";
                    }

1 个答案:

答案 0 :(得分:0)

您可以在表格中要检查唯一性的字段中应用唯一键约束。

当你这样做并且Record已经存在时,ExecuteNonQuery()函数将返回 0 给你的值不同于成功插入后的值**(受影响的行数)* *。我想你可以检查退货价格并相应地显示消息。

希望这有帮助。