一、sql实行正常,mybatis报错
其实这个报错就是由于在xml中自定义sql语句中使用了一些mybatis 保存的字符串, 我用了 ur ,这个字符串作为了一个表的别名,换一个就好了,可以从上述日志中看到,还有许多其他的保存字符串

这些都是
二、sql实行正常,mybatis-plus报错
- 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'CUBE FROM table_user' at line 1
复制代码 此中实行的sql语句中,有一个字段为CUBE,此为mysql中的保存关键字,编写mysql语句,可以通过增加 重音符 ` 包裹起来解决这个题目;但我此时用的是mybatis-plus,它是主动拼接的没有给我手动拼接重音符的机会,如那边理呢?
直接改变字段
这个table_user表中的这个字段cube 的名字就不该用,直接改掉就行,改成cube_name,大概其他的;
使用mybatis-plus特性处置惩罚
如果这个字段已经用在了许多地方,改字段的方式影响很大,那么我们还有一个补救措施;
比方: table_user的实体如下:
- @TableName("table_user")
- public class User {
- private String userId;
- private String userName;
-
- @TableField("`cube`")
- private String cube;
- }
复制代码 就是在原本的字段你上,增加 @TableField("cube"),让他在拼接sql的时候,主动增加这个重音符,如许就不用改变这个字段了。
总结
在表计划的时候,应该综合考量后续扩展性,见名知意的字段特性,以及制止使用mysql的保存关键字,如许能镌汰不必要的错误
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |