我已经创建了数据库链接,使Oracle和Azure SQL之间的连接。当我运行查询
SELECT
'text',
a.c5,
d.c6
from tab1@db_link_azure a
left join tab2@db_link_azure b
on a.c1 = b.c2
left join tab3@db_link_azure c
on c.c3= b.c4
left join tab4@db_link_azure d
on a.c5= d.c6
字符串
它工作得很好。但是当我添加新的列来选择状态时,
SELECT
'text',
a.c5,
d.c6,
a.c10
from
tab1@db_link_azure a
left join tab2@db_link_azure b on a.c1 = b.c2
left join tab3@db_link_azure c on c.c3= b.c4
left join tab4@db_link_azure d on a.c5= d.c6
型
d.c6列返回中文字符-
㔸㈱㌹愱摢敡愸㔰㥤捥搸攷㑢㤶ㄹ㝡
㔸㈱㌹愱摢敡愸㔰㥤捥搸攷㑢㤶ㄹ㝡
型
你知道为什么吗?
1条答案
按热度按时间0x6upsns1#
locale charmap
或echo $LANG
命令检查终端上的设置,以确认它们是否设置为ZHS16GBK
。这将帮助您验证字符编码是否与导致问题的字符编码匹配。
您不一定需要使用与数据库完全相同的字符集。在终端中使用
NLS_LANG=AMERICAN_AMERICA.AL32UTF8
和UTF-8
也应该有效。关键是确保NLS_LANG
设置与终端中的字符集匹配。下面也试试
字符串
或
型
并评论了
型
参考:Oracle connect to SQL Server Chinese character becomes question mark
ORACLE SQLPLUS CHINESE CHARACTERS GARBLED-ORACLE的