memo012 / ac-blog

适合学生搭建的个人博客-从零开始(网站地址:www.lqnb.xyz)
514 stars 114 forks source link

提几个地方,不算问题的问题 #3

Open jsunlove opened 4 years ago

jsunlove commented 4 years ago

1、数据库sql文件有一个地方有问题:users表的字符集你设定为了utf8,应该与其他表保持一致,使用utf8mb4,执行导入操作的时候会报错的。 2、如果可以,尽量不要使用外键关联,具体原因可以去看阿里巴巴的开发手册,里面有讲解,可以说外键这个东西已经适合外界使用了。 3、pom.xml文件注意一个地方 image把我圈起来的地方去掉就可以了

memo012 commented 4 years ago

好的 蟹蟹

memo012 commented 4 years ago

如果不使用外键,假如我要删除某个用户的所有信息,该怎么删除?

jsunlove commented 4 years ago

如果不使用外键,假如我要删除某个用户的所有信息,该怎么删除? image 从理论上,一般情况下是不会真的去删除数据的,毕竟数据是很重要的一个资产,都是通过字段去决定这条信息的状态(可用,不可用等),所以,你没必要真的要删除用户的所有信息,你只需要把关键数据的状态设置成不可用即可,查询的时候多一个状态判断而已。

如果你真的想删除某个用户的所有信息(个人信息,博客,留言等等),需要对不同的信息创建对应的操作接口,通过调用不同的实现类去关联删除对应的信息,虽然会造成代码冗余,但是扩展性高了很多。

现在公司都是在sql的联表查询和代码操作进行平衡,自己可以偏向于自己爱好的来,不过外键是不可取的。

memo012 commented 4 years ago

懂了 蟹蟹