无法 运行 在链接服务器上打开查询
Cannot run openquery on linked server
我是 运行 链接服务器 (IBM DB2) 上的一个查询,我这样做的原因是执行一个简单的查询需要很多时间。
下面是两个查询,第一个成功运行,所以问题不在于查询
select top 10 * from [AS400TS_LNK].[TEST].[AUPRDDBF].CONTACCT where actrno = '8971'
select * from openquery(AS400TS_LNK, 'select * from [TEST].[AUPRDDBF].CONTACCT where actrno = ''8971''')
以及 运行 打开查询时出现的错误
OLE DB provider "DB2OLEDB" for linked server "AS400TS_LNK" returned message "Token *N was not valid. Valid tokens: *N. SQLSTATE: 42601, SQLCODE: -104".
Msg 7321, Level 16, State 2, Line 1
An error occurred while preparing the query "select * from [AS400TS_LNK].[TEST].[AUPRDDBF].CONTACCT where actrno = '8971'" for execution against OLE DB provider "DB2OLEDB" for linked server "AS400TS_LNK".
试试这个:
select *
from openquery(AS400TS_LNK, 'select * from TEST.AUPRDDBF.CONTACCT where actrno = ''8971''')
或者,如果失败,试试这个:
select *
from openquery(AS400TS_LNK, 'select * from TEST.AUPRDDBF.CONTACCT')
where actrno = '8971'
我是 运行 链接服务器 (IBM DB2) 上的一个查询,我这样做的原因是执行一个简单的查询需要很多时间。 下面是两个查询,第一个成功运行,所以问题不在于查询
select top 10 * from [AS400TS_LNK].[TEST].[AUPRDDBF].CONTACCT where actrno = '8971'
select * from openquery(AS400TS_LNK, 'select * from [TEST].[AUPRDDBF].CONTACCT where actrno = ''8971''')
以及 运行 打开查询时出现的错误
OLE DB provider "DB2OLEDB" for linked server "AS400TS_LNK" returned message "Token *N was not valid. Valid tokens: *N. SQLSTATE: 42601, SQLCODE: -104".
Msg 7321, Level 16, State 2, Line 1
An error occurred while preparing the query "select * from [AS400TS_LNK].[TEST].[AUPRDDBF].CONTACCT where actrno = '8971'" for execution against OLE DB provider "DB2OLEDB" for linked server "AS400TS_LNK".
试试这个:
select *
from openquery(AS400TS_LNK, 'select * from TEST.AUPRDDBF.CONTACCT where actrno = ''8971''')
或者,如果失败,试试这个:
select *
from openquery(AS400TS_LNK, 'select * from TEST.AUPRDDBF.CONTACCT')
where actrno = '8971'