我有一个到AS400的链接服务器我正在使用DB2OLEDB提供程序,它工作得很好,我需要选择一个列,它的名字上有一个字符Ñ,提供商抛出这个错误:
链接服务器“AIRS”的OLE DB提供程序“DB2OLEDB”返回了消息 “Símbolo^?(+ - ?:DAY NOT RRN CASE CAST CHAR DATE DAYS HASH HOUR 左边没有válido。 Símbolosválidos:. SQLSTATE:42601,SQLCODE:-104“。 消息7215,级别17,状态1,行72无法执行语句 远程服务器'XXX'。
这是我的尝试:
EXEC('SELECT * FROM AICOLDP.FCOB10 WHERE PDAÑOC=2015 FETCH FIRST 10 ROW ONLY') AT AIRS
SELECT * FROM OPENQUERY(AIRS, 'SELECT * FROM AICOLDP.FCOB10 WHERE PDAÑOC=2015 Fetch First 100 row only');
答案 0 :(得分:0)
看起来你需要用双引号来转义列名:
SELECT * FROM AICOLDP.FCOB10 WHERE "PDAÑOC"=2015