背景:
之前数据库设置的是int(10)类型,后改为bigint(20),代码中的数据库对应表字段以及xml文件都已修改类型,插入的时候仍然报错。
com.mysql.jdbc.MysqlDataTruncation: Data truncation: Out of range value
解决
修改后的bigint(20)未设置无符号位,真正存储的位数是19未位,第一位是表示符号的,正负位,因此插入失败。
修改字段为
bigint(20) UNSIGNED NOT NULL DEFAULT 0 COMMENT ‘d’,
总结:
出现这种报错,不要慌
先检查下数据类型的长度
超出数据长度,加长度或者更改数据类型即可
其他类型超出长度都会报错,需要看下各类型的取值范围。