日期:2014-05-17  浏览次数:20580 次

链接服务器 删除时,提示 提供程序内存不足
链接服务器连一个oracle 数据库

表 tb 其中一个列是 blob

现在删除 tb 的一行是,无论有没有这一行,都 提示 

消息 7399,级别 16,状态 1,第 1 行
链接服务器 "Oracle" 的 OLE DB 访问接口 "OraOLEDB.Oracle" 报错。提供程序内存不足。
消息 7330,级别 16,状态 2,第 1 行
无法从链接服务器 "Oracle" 的 OLE DB 访问接口"OraOLEDB.Oracle"提取行。


数据库是 sql server 2008

请教大家

------解决方案--------------------
标记下,我以前也遇到这类问题,但我的是由于操作大量数据引起的,看看这个高人怎么解答
------解决方案--------------------
我也看看高手怎么说
------解决方案--------------------
删除表的时候,应该会把整个表都读入内存中,加锁,然后操作;
如果内存不够,那么就会报错;
可以试试把这个表tb分区,然后加聚集索引对齐分区,然后再删除的时候,就不用把整张表都读进去了,而只是读你要删除操作的那个分区;
------解决方案--------------------
LZ:看下这个贴子试下:

http://blog.csdn.net/yuan8080/article/details/6192176
------解决方案--------------------
引用:
链接服务器连一个oracle 数据库

表 tb 其中一个列是 blob

现在删除 tb 的一行是,无论有没有这一行,都 提示 

消息 7399,级别 16,状态 1,第 1 行
链接服务器 "Oracle" 的 OLE DB 访问接口 "OraOLEDB.Oracle" 报错。提供程序内存不足。
消息 7330,级别 16,状态 2,第 1 行
无法从链接服务器 "Orac……


LZ先看看select能找到这行不?》
测试一下链接是否成功。

如果OK的话,LZ开启awe,sql 分配给链接服务器的内存,可以用这个方法提升。