我试图将一些信息插入到sql server表中,但不是插入一条记录而是插入多条记录:
string fileName1 = "imgs/" + FileUpload1.PostedFile.FileName;
string fileName2 = "imgs/" + FileUpload2.PostedFile.FileName;
string fileName3 = "imgs/" + FileUpload3.PostedFile.FileName;
string fileName4 = "imgs/" + FileUpload4.PostedFile.FileName;
System.Data.SqlClient.SqlConnection conn = new System.Data.SqlClient.SqlConnection(@"Data Source=AHMED-PC\SQLEXPRESS;Initial Catalog=test;Persist Security Info=True;User ID=sa;Password=123456");
System.Data.SqlClient.SqlCommand cmd = new System.Data.SqlClient.SqlCommand("INSERT INTO img (img) VALUES (@img)", conn);
conn.Open();
cmd.Parameters.AddWithValue("@img", fileName1);
cmd.ExecuteNonQuery();
cmd.Parameters.Clear();
cmd.Parameters.AddWithValue("@img", fileName2);
cmd.ExecuteNonQuery();
cmd.Parameters.Clear();
cmd.Parameters.AddWithValue("@img", fileName3);
cmd.ExecuteNonQuery();
cmd.Parameters.Clear();
cmd.Parameters.AddWithValue("@img", fileName4);
cmd.ExecuteNonQuery();
cmd.Parameters.Clear();
conn.Close();
它会添加8条或更多条记录而不是4条
使用asp.net 4
感谢
答案 0 :(得分:4)
你可能两次调用该函数。
答案 1 :(得分:1)
您执行此声明四次。
cmd.ExecuteNonQuery();
cmd表示一个SQL INSERT语句。
cmd = new System.Data.SqlClient.SqlCommand("INSERT INTO img (img) VALUES (@img)", conn);
执行一次INSERT四次,除非违反约束,否则会得到四行。