谁还没遇见过几个坑——命名篇(一)

为什么没人告诉我lines是关键字~

报错信息如下

java.sql.SQLSyntaxErrorException: 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 'lines lines0_ where 1=1 order by lines0_.created_at asc limit 10' at line 1

 

我研究了好久 明明别的代码也都是这样写的 为什么别的不报错 偏偏这个表的报错了

然后换到Navicat里面跑一遍SQL语句 也是报错 就连最基本的select*from lines 也报错

然后我发现 为什么那个lines是蓝色的(正常的不都是黑色的嘛)

于是有一个不好的念头在我脑海里划过(lines莫不是关键字吧,啊这 也没人告诉过我啊)

因为我们用的是JPA 所以我也没法在SQL语句里面加``呀

然后我的解决办法是把lines改名line(机智如我)

后来我们老大说 数据库的表一般用复数形式其对应的entity用单数形式 老大又把line改回了line

不过可能他看出了我的无知 知道我把lines改成line是因为关键字 所以老大的解决办法是

 emmm 在entity的@Table里面的name上加上``即可

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值