生僻字写入oracle后被转为??
生僻字写入oracle后被转为??
处理方法:
1、将数据库字段类型改为NVARCHAR2;
2、代码写入的时候进行转换,转成unicode,不用拼接\u;
public static String toUnicode(String str) {StringBuilder unicode = new StringBuilder();for (char c : str.toCharArray()) {// 将字符转换为 Unicode 码点int codePoint = (int) c;// 将码点转换为十六进制字符串unicode.append(String.format("%04x", codePoint));}return unicode.toString();}
3、sql插入的时候用,使用函数进行转换
utl_raw.cast_to_nvarchar2(#{name})