发表于: 2019-10-26 18:57:36

2 885


今天完成的事:
1、添加留言的增、查操作。
先将数据表中的是否为null设置一下,结果在留言表的work_id处设为非null失败。

因为这里设置的作品id为外键,不能勾选not null,因为外键表中设置的是set null。这里父表为作品表work,子表为留言表message。
set null 即父表删除、更改时,子表会将外键设为null,但是数据本身保留。
比如父表删除id为2的数据,则子表中外键字段为2的数据不会删除,但是外键字段会从2变为null。
cascade 即父表删除、更改时,子表会将外键关联的数据也删除,更改。
比如子表外键关联父表id2,父表中将2修改为22,子表中的外键字段也会修改为22。父表删除删除id为2的数据,则子表中外键字段为2的数据也会删除。


所以这里进行修改,作品删除时,对应留言也删除。

因为在后台管理中留言查询还要展示对应的作品名称,本来想着如果作品名称修改,留言里的作品名称字段也能跟着修改就好了,于是又加了作品名称的外键,但是发现不行,名称可能会有重复,在重复名称中有一个修改的话,不是对应的留言的作品名称也会修改,所以外键只能是用唯一性的字段建立,查了下,果然是,外键需唯一。。
这里只能等到到时候再考虑了,先紧着前台的留言查询、插入功能做。


这里需要注意的是留言的数据表中work_id是外键,所以添加留言时,set的数字必须是work作品表内存在的id,这样的话,在作品详情页面添加留言就必须要获取作品的id信息,那么根据作品id查询留言也就是顺理成章的事。

又添加了作品的删除操作,根据作品id删除作品,该作品对应的留言也会删除。
明天计划的事:
1、编写作品的controller、jsp,总结springmvc。
3、继续编写其余功能。
遇到的问题:
1、目前外键只用于关联删除操作,留言与作品的多对一关系通过外键直接关联查询有待学习。
收获:
1、添加留言的增、查操作。
2、添加作品的删除操作。
3、了解了外键的相关属性。

返回列表 返回列表
评论

    分享到