gpt4 book ai didi

c# - OleDbException 系统资源超出

转载 作者:太空狗 更新时间:2023-10-29 20:29:41 26 4
gpt4 key购买 nike

以下代码执行一个简单的插入命令。如果连续调用 2,000 次(插入 2,000 行),则会抛出消息为“已超出系统资源”的 OleDbException。我还应该做些什么来释放资源吗?

using (OleDbConnection conn = new OleDbConnection(connectionString))
using (OleDbCommand cmd = new OleDbCommand(commandText, conn))
{
conn.Open();
cmd.ExecuteNonQuery();
}

最佳答案

系统资源超出错误不是来自托管代码,它来自您杀死数据库(JET?)

您打开的连接太多,速度太快...

一些提示:

  • 通过不为每个命令打开新连接来避免往返,并使用单个连接执行插入。
  • 确保数据库连接池正常工作。 (不确定这是否适用于 OLEDB 连接。)
  • 考虑使用更优化的方式插入数据。

你试过吗?

using (OleDBConnection conn = new OleDBConnection(connstr))
{
while (IHaveData)
{
using (OldDBCommand cmd = new OldDBCommand())
{
cmd.Connection = conn;
cmd.ExecuteScalar();
}
}
}

关于c# - OleDbException 系统资源超出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/155959/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com