今天用mybatis插入数据库数据的时候一直报错,sql语句类似以下:
insert into test_table (wind_code,name,read,creade_time) values (?,?,?,?)
经过排查,发现是read是mysql的保留字(关键字)引起的冲突。
解决方法我目前总结这两个:
1、字段命名尽量不要跟sql的保留字一样,想status啊,index啊
2、有时候难免一样,或者改字段比较麻烦,这时候可以用mysql的转移符:`
在冲突的字段加上转移符,这样子就可以了:
insert into test_table (wind_code,name,`read`,creade_time) values (?,?,?,?)
(注意:这个转移符不是中文(‘)或者英文(’)的单引号,而是这个(`),长得很像对不对?如果用单引号,还是会报错,之前不知道,被坑了几次)
版权声明:本文为GDUTACMA2011149原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。