作为后端开发如何设计数据库系列文章(一)设计传统系统表结构(Java开发)
本篇为第一篇。讲解传统系统的表结构设计(Java开发)。
讲讲如何避免数据库设计的一些坑,方便后期的开发与维护。
以前经常能够看到,数据库范式,现在说数据库三大范式的少了。
三大范式我以前也很严格的弄过,但是后来发现,还是灵活好啊,为什么,业务变动太快了啊,按照范式来,结构变更顶不住。
下面我就说一说设计数据库表要注意的一些地方吧。我不是DBA,只是Java后端开发,以下是根据我的个人经验所得,至于能不能体会,看个人了。
外键、触发器
外键、触发器不要有。
有了外键、触发器,你会发现: 写代码不方便。 订正数据不方便。 迁移数据也麻烦。 总之,你要是坚持用,后续的坑等着你。
自增id
数据库表,一定要有id,而且要用自增id!
有些人喜欢用自定义的,用UUID或者其他七七八八的id,如果在架构设计,代码比较好的情况下,不会出啥大问题,但是一旦代码写的