0

我试图在单个查询中提供多个插入或更新,例如

OleDbCommand command = new OleDbCommand("INSERT INTO Employee (Id, Name, Address, Salary) VALUES (2001, 'name1', 'address1', 100000);UPDATE Employee SET Salary = 2000000 WHERE Id = 2001;");

这成功执行。

但我不希望单次执行多个 sql 查询。在 C# 中是否有任何属性或类似的东西可以用来限制只有一个查询。

我想将其限制为单个执行中的单个 sql 查询。

谢谢。

4

1 回答 1

0

尝试这样的事情

创建值的字符串构建器

StringBuilder sb = new StringBuilder();
string sep = "";
for (int i = 0; i < dataGridView1.Rows.Count - 1; i++)
{
sb.AppendFormat("value1","value2" etc);
 }  
string insertthis = sb.ToString();

然后插入到sql

using (OleDbCommand cmd = new OleDbCommand("INSERT INTO Employee (ItemName) VALUES (@ins)", con))
  {
  cmd.Parameters.AddWithValue("@ins", insertthis );
  cmd.ExecuteNonQuery();
  }
MessageBox.Show("Data added");

更新也像插入一样工作

参考

于 2017-09-04T15:07:49.570 回答