如果应用开发规范规定的sql_mode参数值与OceanBase默认不一致,很容易踩坑。
见图片:
另外企业版ODC也有该问题,社区版不清楚,建议检查。
mysql驱动也会加 STRICT_TRANS_TABLES
可以参考
mysql驱动 mysql-connector-j/ConnectionImpl.java at release/5.1 · mysql/mysql-connector-j · GitHub
oceanbase驱动 obconnector-j/AbstractConnectProtocol.java at master · oceanbase/obconnector-j · GitHub
虽然我们的sql_mode参数与系统默认不一样,但用jdbc从来都没有添加过sql_mode参数,都是数据库全局级别设置好,应用也没出过错。
但适配ob的时候应用报错了。。。最后检查是因为sql_mode
搞不懂
navicate也不会变更客户线程级别的sql_mode,ODC就会给改。。。