NLS_LANG=AMERICAN_AMERICA.UTF8
最近执行一条sql
insert into test_tab (F1,F2) values (34334,'小面包中间一排座椅坏了,拆掉在去装新的路上就被罚款,郑州的交警真黑▒')
报了一个ORA-01756: quoted string not properly terminated
下面这条却执行正常
insert into test_tab (F1,F2) values (34334,'小面包中间一排座椅坏了,拆掉在去装新的路上就被罚款,郑州的交警真黑')
怀疑是▒ 的原因
将▒拷入 ultriedit发现这是一个三字节的UTF8编码。
按理说也不会出错才是。这也是一个合法的utf8
为什么会出错呢?
我想了想是不是一下原因
每个utf8字符对应一个unicode字符。对应规则可见uft8的编码规则。
如果对应的unicode不存在,或者对应的oracle服务器上未安装此unicode。会不会就出现未识别的情况呢?
然后就爆ORA-01756: quoted string not properly terminated
期待牛人解答
谢谢了