【发布时间】:2011-06-14 14:32:42
【问题描述】:
我正在尝试从 Microsoft SQL 服务器连接到 AS/400,以便我可以从 AS/400 中提取数据,然后将数据标记为被提取。
我已经成功创建了 OLE DB“IBMDASQL”连接,并且能够提取一些数据,但是当我尝试从一个非常大的表中提取数据时遇到了问题
这运行良好,并返回 1.7 亿个计数:
select count(*)
from transactions
这个查询在我放弃之前执行了 15 个小时。 (它应该返回零,因为我还没有将任何东西标记为“处理中”)
select count(*)
from transactions
where processed = 'In process'
我是 Microsoft 人员,但我的 AS/400 人员说“已处理”列上有一个索引,并且在本地,该查询会立即运行。
对我可能做错了什么有任何想法吗?我找到了一个只有 68 条记录的表,并且能够在大约一秒钟内运行此查询:
select count(*)
from smallTable
where RandomColumn = 'randomValue'
所以我知道 AS/400 至少能够理解这种类型的查询。
【问题讨论】:
标签: tsql ssis odbc oledb ibm-midrange