【发布时间】:2010-11-15 17:38:20
【问题描述】:
我想知道如何使用一个连接将多行插入 MySQL 数据库,而不是打开和关闭多个连接。插入的数据来自 string[],所以我使用了一个 foreach 循环来获取每个值。
这里是我当前不工作的 C# 代码:
string[] tempfin = table.Split(',');
string username = null;
connection.Open();
foreach (object hope in tempfin)
{
command.CommandText = "INSERT INTO ATable (Tried, Username) VALUES" + "('" + hope + "','" + username + "')";
command.ExecuteReader();
}
connection.Close();
我可以在 foreach 循环中打开和关闭连接,但是在插入大量行时这对我来说是不可靠的,那么有没有办法在 C# 中使用一个连接插入多行?
更新:没关系,我发现了我的问题。这是关于使用command.ExecuteReader() 而不是command.ExecuteNonQuery()
【问题讨论】:
-
为什么你认为需要打开和关闭多个连接?
-
不确定,但我尝试的其他方法最终返回 mysql 错误,例如“必须关闭现有连接”