无法更新阅读状态

无法更新阅读状态

登陆后点击“想看” 或者 “看过” 显示以下错误。

我沿着entity, mapper, service, controller一路检查,也没发现book_id字段漏了或者命名错误的问题。不太确定这个问题出在哪,老师有什么建议吗?

相关代码:

### Error updating database.  Cause: java.sql.SQLException: Field 'book_id' doesn't have a default value
### The error may exist in com/imooc/reader/mapper/MemberReadStateMapper.java (best guess)
### The error may involve com.imooc.reader.mapper.MemberReadStateMapper.insert-Inline
### The error occurred while setting parameters
### SQL: INSERT INTO member_read_state  ( create_time )  VALUES  ( ? )
### Cause: java.sql.SQLException: Field 'book_id' doesn't have a default value
; Field 'book_id' doesn't have a default value; nested exception is java.sql.SQLException: Field 'book_id' doesn't have a default value

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕小尤 2023-02-23 09:56:33

同学你好,1、建议同学查看是否有成功传递bookid,并在后端代码中查看是否有成功接收。如下所示:

https://img1.sycdn.imooc.com//climg/63f6c878091d024a07540506.jpg

https://img1.sycdn.imooc.com//climg/63f6c86409deb21b09530253.jpg

2、查看代码中是否有成功书写查询条件。如下所示:

https://img1.sycdn.imooc.com//climg/63f6c88809c256c308670195.jpg

https://img1.sycdn.imooc.com//climg/63f6c899093c851208640468.jpg

祝学习愉快!

  • 提问者 cici哈 #1

    以上代码,我都看了没有问题。

    我网上查了一下,有的说可能是因为数据库中没有设置自增,但我看book表里的book_id也自增了呀,还可能会有什么问题呢?

    2023-02-25 06:58:36
  • 好帮手慕小蓝 回复 提问者 cici哈 #2

    同学你好,从报错信息中看,可能是某个方法中传递了“create_time”时,没有传递“book_id”的数据,建议同学在项目中搜索一下是否有“create_time”相关的代码。

    另外,建议同学检查一下项目中是否只在MemberServiceImpl使用过MemberReadStateMapper。

    如果依然没有检查到问题原因,建议同学提供一下MemberServiceImpl的完整代码。

    祝学习愉快~

    2023-02-25 10:35:20
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师