切换导航
新动弹计划
搜索
文章
动弹
排行榜
登录
注册
×
搜索
文章
动弹
热门关键词
重读《掌控习惯》
ChatGPT
Docker
Laravel
读书
跑步
#daily tips#
#稍后阅读#
FalconChen
2021-03-19 16:16
动弹
发现一个坑,Mysql往decimal(4,2)的字段类型插入100的话里会报错,然而在WordPress里用$wpdb->insert方法是可以插入的,结果是99.99。。。查了半天
在OSC查看
0
评论 ( 6 )
FalconChen
弹主
2021-03-19 19:11
@wantor 你是对的,wordpress的确是把SESSION的sqlmode改成了非严格模式。而Global的sqlmode是STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION 。
0
FalconChen
弹主
2021-03-19 18:47
@夜中孤影 这个我当然知道。。。我就是测试溢出
0
夜中孤影
2021-03-19 17:41
Mysql 的 decimal(4,2) 是总共4位,两位是小数 100.00 已经是5位了,你试下99
1
wantor
2021-03-19 17:27
因为框架连接时候可以设置sqlmode 为非严格模式: sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION" 改为 sql-mode="NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"。
1
FalconChen
弹主
2021-03-19 16:20
@OSC首席保安 我还专门在phpmyadmin测试了,也插不进去的,会报错:#1264 - Out of range value for column 'number' at row 1
0
OSC首席保安
2021-03-19 16:18
还得看你是在navicat里看的4,2还是phpmyadmin里看的4,2,前者报错,后者没问题
0