在数据库中,AptNumber的值=1º,但是当使用select查询时,它返回AptNumber =1ㅊ,因此在selct中º
更改为ᄎ
。
应用:Spring Batch 使用:JdbcTemplate连接DB 数据BAse:Oracle Querty:从CUST_ADDR WHERE CUST_ADDR_ID = 12345中选择APT_NBR;
答案 0 :(得分:0)
º
是字符U+00BA: MASCULINE ORDINAL INDICATOR
您的数据库字符集为US7ASCII
,此集不支持º
,因此您无法存储它。
您的数据库设置为US7ASCII
,但您的Java使用UTF-16。
Java将0x00 0xBA
发送到数据库。我不知道为什么,但当编码为UTF-16时,这会转换为0xFF 0xBA
ᄎ
U+FFBA HALFWIDTH HANGUL LETTER CHIEUCH。
你可以这样做。
NVARCHAR2
数据类型而不是VARCHAR2
。通常,国家字符集是支持所有Unicode字符的Unicode集。°
U+00B0: DEGREE SIGN作为解决方法。但是,ASCII也不支持它。