今天在导数据时遇到 ORA-64204: 出现部分多字节字符 错误。
INSERT INTO CS.CASE_INSPECT(CLUE_NO, SERIAL_NO, INSFROM, INSTO, INSSPOT, INSPECTOR, EYEWITNESS, EYSUNITS, EYSHOUSE, RECORDER, INSITEM, INSST, EYE_CER_NO, LITIGANT_NAME, LITIGANT_NO, WRIT_UUID, ATTACH_UUID, VALIDITY, OPER_ID, OPER_TIME, NEW_FLG)
SELECT * FROM V_CASE_INSPECT;
语句没有问题,视图也没有问题。单独执行select * from view;可以正常显示视图。但是往表里查数据就不行。
反复查询后,发现是INSST这个字段的问题。
上网查了很久,没有搜到ORA-64204,但是搜到了很多错误码不同但提示都是“出现部分多字节字符 错误。”
说是字段里可能包含半个中文字符可能会出现类似问题。
解决方案:to_nchar(INSST)
TO_NCHAR(x):将数据库字符散开的x转换为一个NVARCHAR2字符串