我已经开始学习asp.net了。我正在使用VS 2013 Express for C#。 如何使用一个if if来检查一个重复的值,如果这个值存在,那么我得到一个关于它的红色摘要,并且不能插入到DB中,否则插入数据库,并且使用更新按钮。
你能帮忙吗?
SqlConnection con = new SqlConnection(@"Data Source=TSS\SQLEXPRESS;Initial Catalog=DB;Integrated Security=True");
protected void Add(object sender, EventArgs e)
{
var vardas = GridView1.FooterRow.FindControl("txtname") as TextBox;
var pavarde = GridView1.FooterRow.FindControl("txtlastname") as TextBox;
var pozymis = GridView1.FooterRow.FindControl("DropDownList2") as DropDownList;
SqlCommand comm = new SqlCommand();
comm.CommandText = "insert into asmenys (name,lastname, status) values(@name,@lastname, @status)";
comm.Connection = con;
comm.Parameters.AddWithValue("@name", name.Text);
comm.Parameters.AddWithValue("@lastname", lastname.Text);
comm.Parameters.AddWithValue("@status", status![enter image description here][1].Text);
con.Open();
comm.ExecuteNonQuery();
con.Close();
DataBind();
}
答案 0 :(得分:0)
当您说检查某个值是否存在时,哪些字段不应该有重复项?这些是您必须编写select语句以检查它们是否首先存在的字段。
实施例
protected void Add(object sender, EventArgs e)
{
var vardas = GridView1.FooterRow.FindControl("txtname") as TextBox;
var pavarde = GridView1.FooterRow.FindControl("txtlastname") as TextBox;
var pozymis = GridView1.FooterRow.FindControl("DropDownList2") as DropDownList;
SqlCommand comm = new SqlCommand();
comm.CommandText = "select lastname from asmenys where lastname = @lastname";
comm.Parameters.AddWithValue("@lastname", lastname.Text);
SqlDataReader reader = comm.ExecuteReader();
if (reader.HasRows)
{
Console.WriteLine("Values exist");
}
else
{
comm.CommandText = "insert into asmenys (name,lastname, status) values(@name,@lastname, @status)";
comm.Connection = con;
comm.Parameters.AddWithValue("@name", name.Text);
comm.Parameters.AddWithValue("@lastname", lastname.Text);
comm.Parameters.AddWithValue("@status", status![enter image description here][1].Text);
con.Open();
comm.ExecuteNonQuery();
con.Close();
DataBind();
}
}