Oracle服务器编码为AMERICAN.WE8MSWIN1252,java应用程序编码为GBK。
我想将中文字符插入NVARCHAR2字段。我可以用PLSQL正确插入中文字符,PLSQL编码也是AMERICAN_AMERICA.WE8MSWIN1252。
SQL
update TEST_TEST t set t.val = N'测试' where t.id = '1';
我还在preparedStatement
个应用中尝试了java
,它适用于setNString
。
当我使用sql string join时,我想我需要转换字符串编码:
String value = "测试";
byte[] destinationBytes = value.getBytes("GBK");
String value_c = new String(destinationBytes, "Windows-1252");
String sql = "update TEST_TEST t set t.val22 = N'" + value_c + ".pdf' where t.id = '1'";
但是,这些字符无法正常显示。
如何正确插入SQL字符串?
谢谢!