简体   繁体   English

使用提供程序DB2OLEDB将链接服务器连接到AS400,选择带有字符Ñ的列

[英]Using provider DB2OLEDB for a link server to AS400, select a column with character Ñ

I have a link server to AS400 I am using DB2OLEDB provider, it works pretty fine, I need to select a column which on It's name has a Character Ñ, Provider throws me this error: 我有一个到AS400的链接服务器,我正在使用DB2OLEDB提供程序,它工作得很好,我需要选择一个列,该列的名称上有一个字符Ñ,提供程序将引发此错误:

OLE DB provider "DB2OLEDB" for linked server "AIRS" returned message "Símbolo ^?( + - ? : DAY NOT RRN CASE CAST CHAR DATE DAYS HASH HOUR LEFT no válido. Símbolos válidos: . SQLSTATE: 42601, SQLCODE: -104". Msg 7215, Level 17, State 1, Line 72 Could not execute statement on remote server 'XXX'. 链接服务器“ AIRS”的OLE DB访问接口“ DB2OLEDB”返回了消息“Símbolo^?(+-?:DAY NOT RRN案例铸造CHARD日期DAY HASH HOUR LEFT否válido。Símbolosválidos:。SQLSTATE:42601,SQLCODE:-104” 。消息7215,级别17,状态1,第72行无法在远程服务器“ XXX”上执行语句。

This are my tries: 这是我的尝试:

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');

看来您需要使用双引号对列名进行转义:

SELECT * FROM AICOLDP.FCOB10 WHERE "PDAÑOC"=2015

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM