【发布时间】:2014-11-17 15:20:01
【问题描述】:
我正在尝试使用 MS SQL 2005 上的链接服务器从 Oracle 数据库中导入大量数据。 这是 OPENQUERY 命令。
SELECT * from OPENQUERY(HRDEV9,
'SELECT EMPLOYEE_ID
,EMPLOYEE_NAME
,TO_CHAR(BIRTHDATE,''yyyy-mm-dd'') AS BIRTHDATE
FROM SYSADM.PS_EMPLOYEES')
为了简化示例,我没有包含所有列,我有大约 180 列和 75000 行要导入。
这是我在执行查询时遇到的错误:
返回链接服务器“HRDEV9”的 OLE DB 提供程序“OraOLEDB.Oracle” 消息“没有足够的存储空间来完成此操作。”。
消息 7399,级别 16,状态 1,第 1 行 OLE DB 提供程序 链接服务器“HRDEV9”的“OraOLEDB.Oracle”报告错误。这 提供程序内存不足。
消息 7372,第 16 级,状态 4,第 1 行不能 从 OLE DB 提供程序“OraOLEDB.Oracle”获取链接的属性 服务器“HRDEV9”。
我已启用自动增长,并为数据和日志文件设置了不受限制的文件增长。
我尝试使用 Oracle ROWNUM 仅导入 10 行,但仍然遇到相同的错误。
感谢您的宝贵时间。
【问题讨论】:
-
1.您可以从另一个 OLEDB 加载吗? (甚至SQL Server) 2. 可以通过这个驱动查询ORACLE数据库吗?
-
@vav 1. 我要导入的数据位于 Oracle 数据库中,我连接到 Oracle 的唯一方法是使用 OraOLEDB.Oracle 提供程序通过链接服务器。 2. 是的,我可以
标签: sql sql-server oracle sql-server-2005 linked-server