今天发现了一个问题,一个长度设置为2000字节的字段,插入一条长度为1000的汉字数据,竟然报错了. 一个汉字占两个字节,按理说刚好是2000个字节.但通过查看日志,发现插入数据的长度为3000字节. 百度了一下,原来是不同的字符集造成的. 一般情况下,数据库的NLS_CHARACTERSET 为AL32UTF8或UTF8,即一个汉字占用三到四个字节.如果NLS_CHARACTERSET为ZHS16GBK,则一个字符占用两个字节. 而公司的运行环境上是AL32UTF8,因此一个汉字占到了3个字节…