今天在DB2数据库做数据插入时报错
update com.ibm.db2.jcc.am.mo: 在 EXECUTE 或 OPEN 语句中的主变量值对于其相应的使用而言过大。. SQLCODE=-302, SQLSTATE=22001, DRIVER=3.58.81
Error saving data
Inserted 0 row(s)
Updated 0 row(s)
Deleted 0 row(s)
原因是超出字符长度,解决方法如下,
DB2数据库 版本 v9.5_linux
数据库编码 UTF-8
DB2数据库
1个中文字符在表结构中占3个varchar字符
1个字符占一个varchar字符
1个数据占一个varchar字符
varchar(20)最多可以存放6个中文字符,再加2个字母或数据。
在Oracle数据库中一个中文字符就占2个varchar2字符,不知是DB2数据库编码的问题还是什么原因要占3个