当前位置: 代码迷 >> Sql Server >> 紧急有关问题?多谢
  详细解决方案

紧急有关问题?多谢

热度:18   发布时间:2016-04-27 11:45:24.0
紧急问题求助??谢谢!
select * from Openrowset('Microsoft.ACE.OLEDB.12.0',
'Excel 12.0;HDR=YES;IMEX=1;Database=\\172.16.1.29\unrar\data.xls',
'select * from [Sheet1$]')


在一台数据库服务器上执行上述语句,开始的时候不会报错,并能查出结果,但次数多了之后,就报下面的错误,重启动数据库服务器之后,错误消失,但使用一段时间之后,错误依旧,不知道什么原因,请高人指点迷津:


补充:

数据库服务器配置:  

操作系统:32位 windows 2008
内存:64G
硬盘:600TB


错误信息如下:


消息 7399,级别 16,状态 1,第 1 行
链接服务器 "(null)" 的 OLE DB 访问接口 "Microsoft.ACE.OLEDB.12.0" 报错。提供程序内存不足。
消息 7320,级别 16,状态 2,第 1 行
无法对链接服务器 "(null)" 的 OLE DB 访问接口 "Microsoft.ACE.OLEDB.12.0" 执行查询"select * from [sheet$]"。


------解决方案--------------------
估计是内存调度"BUG",在32位系统上,AWE内存只能缓存数据,而不能用作SQLOS内部使用。。。问题大约出在这里
解决这个也比较简单,先在其他SQL服务器如台式机里查询EXCEL数据,再将数据倒入正式数据库
  相关解决方案