前因 数据库编码为utf-8 数据库列的数据单位默认为byte,即设置一个verchar2(32)的一个列,改字段只能输入32位英文字符,或者十个中文,10*3=30. 办法 设置列的数据单位为char。即设置一个verchar2(32)的一个列,改字段只能输入32位英文字符,或者32个中文. alter system set nls_length_semantics='CHAR' scope=spfile 查看设置结果: show parameter nls_length_semantics