资源池“default”中的系统内存不足,无法运行此查询

时间:2010-01-03 18:01:59

标签: sql-server memory

我收到了这个错误:

资源池“default”中没有足够的系统内存来运行此查询。

我正在运行100,000个简单的插入语句,如下所示。我在第85,000次插入时得到了大约错误。

这是我正在上课的演示......

use sampleautogrow

INSERT INTO SampleData VALUES ('fazgypvlhl2svnh1t5di','8l8hzn95y5v20nlmoyzpq17v68chfjh9tbj496t4',1)
INSERT INTO SampleData VALUES ('31t7phmjs7rcwi7d3ctg','852wm0l8zvd7k5vuemo16e67ydk9cq6rzp0f0sbs',2)
INSERT INTO SampleData VALUES ('w3dtv4wsm3ho9l3073o1','udn28w25dogxb9ttwyqeieuz6almxg53a1ki72dq',1)
INSERT INTO SampleData VALUES ('23u5uod07zilskyuhd7d','dopw0c76z7h1mu4p1hrfe8d7ei1z2rpwsffvk3pi',3)

先谢谢, 吉姆M

更新:刚刚注意到一些非常有趣的事情。我创建了另一个数据库,忘了创建SampleData表。我运行查询以添加100,000行,并在它甚至抱怨该表不存在之前得到了内存不足错误。因此,我猜测它只是试图“读入”我的100,000行而耗尽内存?

2 个答案:

答案 0 :(得分:37)

您在一个批量请求中有100,000个插入语句吗?您的服务器需要更多RAM才能解析请求。购买更多RAM,升级到x64或减少发送到服务器的单批次的大小。 IE浏览器。在.sql文件中随时随地播放GO

答案 1 :(得分:0)

您可以尝试SQLServer连接工具应用程序。它有一个名为Massive Sql Runner的功能,它逐个执行每个命令。使用此功能,将很少使用内存来执行脚本命令,您将不再遇到问题。

SQL Server Connection Tools