mysql插⼊超过字段长度的新数据时,insertintoonduplicatekey和单。。。表结构如下
insert语句字段顺序
现在插⼊⼀个查过128(26的英⽂字符循环5遍即130个字符)的字符
insert into t_user (mold,open_id)
values(1,‘ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ ’);
执insert into语句效果如图
会报错
ERROR 1406 (22001): Data too long for column ‘open_id’ at row 1,原因 插⼊数据超过字段最⼤长度,使⽤MariaDB也是如此
使⽤MariaDB执⾏insert into on duplicate key效果如图
使⽤Mysql执⾏insert into on duplicate key效果如图
可见mysql和mariaDB在执⾏insert into on duplicate key 插⼊会更新⼀个超过表字段的字符串类型的字段是不⼀样的,mysql会报错,不会执⾏,mariaDB则会将舍弃超过字段⼤⼩的值,依然存⼊数据库,并会报⼀个警告,这是⼀个MariaDB的⼀个坑。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。