我在WINDOWS(意大利语)上遇到以下问题:
我的NLS_LANG参数是: ITALIAN_ITALY.UTF8
我要执行以下查询:
INSERT INTO SCHEMA.MY_TABLE("NAME") VALUES('ò');
使用命令行(纯sqlplus)执行此操作会将无效数据存储在DB内。
使用SQLDEVELOPER进行操作会存储正确的数据。
我找不到任何正确设置此东西的方法,该怎么办? 必需。从命令行使用SQLPLUS。
感谢您的帮助。
使用sqlplus时,它将从命令行窗口继承字符集。您可以使用chcp
询问和修改字符集(也称为编码),我假设它是CP850
-不是UTF8
。
在启动sqlplus之前运行chcp 65001
,它应该可以工作。另请参阅Converting German special characters to English equivalent one in Oracle SQL / PL-SQL或阅读更多详细信息OdbcConnection returning Chinese Characters as "?"