我的具体情况是这样的:
1.ORACLE的language设置:
在SQL*PLUS工具中查询server端的字符集SQL> select userenv('language') from dual;得出结果 AMERICAN_AMERICA.WE8MSWIN1252
在client端的字符集为:NA(之后,我通过注册表将NA 该为了AMERICAN_AMERICA.WE8MSWIN1252)
注:server端的oracle字符集设置不可更改2.Client端的OS为英文版的(此项设置为用户需要,不可更改)3.SQL SERVER端的数据库是CHINESE_PRC_CI_AS的问题出现了,我从oracle中获得的字符串存入sql server 中后却为乱码,这个问题已经困扰我很多天了,一直没有解决,请大家帮帮忙!先谢谢了!!
1.ORACLE的language设置:
在SQL*PLUS工具中查询server端的字符集SQL> select userenv('language') from dual;得出结果 AMERICAN_AMERICA.WE8MSWIN1252
在client端的字符集为:NA(之后,我通过注册表将NA 该为了AMERICAN_AMERICA.WE8MSWIN1252)
注:server端的oracle字符集设置不可更改2.Client端的OS为英文版的(此项设置为用户需要,不可更改)3.SQL SERVER端的数据库是CHINESE_PRC_CI_AS的问题出现了,我从oracle中获得的字符串存入sql server 中后却为乱码,这个问题已经困扰我很多天了,一直没有解决,请大家帮帮忙!先谢谢了!!
UPDATE TABLE1 SET NAME=N:NAME WHERE ID=1000错误信息为:Invalid column name 'N@P1'我该如何写这条语句呢?
语法错误没有了
但是存入的数据还是乱码各位大侠有什莫好的解决办法????补充:我在调试时从ORACLE中抓取得数据就是乱码,这该如何解决,使其不是乱码呢????
你说的是SetThreadLocale吗?我尝试了这种方法,但是似乎没有效果,写法如下:
Application.Initialize;
SetThreadLocale(DWORD(Word(SORT_DEFAULT) shl 16) or
DWORD(Word(SUBLANG_CHINESE_SIMPLIFIED) shl 10) or
DWORD(Word(LANG_CHINESE)));
......
不知什莫原因
to hongqi162:
在我的问题描述中已经写清楚了,两端的字符集是一样的