美文网首页
数据库是否需要建立外键

数据库是否需要建立外键

作者: Apple_Boy | 来源:发表于2019-07-05 09:11 被阅读0次

建立外键的好处:

1) 由数据库保证数据完整性,比程序保证完整性更可靠,多应用时(如有应用A,B,C他们之间的实体存在关联关系),由程序来保证数据完整性变得困难

2) 外键约束使得数据库的ER图可读性变强,有助于业务逻辑设计

不建立外键的好处:

1) 可以用触发器或应用程序保证数据的完整性

2) 开发变得简单,维护数据时不用考虑外键约束

3) 性能高,大数据量插入操作时不用考虑维护外键

讨论结果:不建立外键约束,关联关系由程序控制,另外还需要删除现有的外键关系

此外,从面向对象设计的角度来看。是应该取消掉外键约束的。因为数据库的作用就是高效的存取数据。而不是表达业务逻辑关系。把业务逻辑关系放到数据库中来维护是一种非常面向过程的思维。使得程序设计,用例规则直接面向数据库而不是面向业务。怎么看都不是一种好的方式。

相关文章

  • 数据库是否需要建立外键

    建立外键的好处: 1) 由数据库保证数据完整性,比程序保证完整性更可靠,多应用时(如有应用A,B,C他们之间的实体...

  • ORM 关联关系

    关于文档的注解:仅供学习所用!!! -- ORM的映射关联关系,需要字段之间建立外键(如果指明可以省略建立外键) ...

  • 多表操作

    外键 建立外键是为了保证数据的完整和统一性 外建所在表为从表 创建数据库 CREATE DATABASE chap...

  • 数据库要不要建立外键

    目前在建立一个小说网站,数据库设计之后,在考虑要不要建立外键。自己觉得,外键是为了更好的对数据进行保护,防止你程序...

  • 互联网应用数据库设计的性能考虑

    数据库外键的使用 外键解决的是数据的安全性、完整性问题。 用不用外键,这取决于数据库的用途、规模、架构,有外键,可...

  • 互联网应用数据库设计的性能考虑

    数据库外键的使用 外键解决的是数据的安全性、完整性问题。 用不用外键,这取决于数据库的用途、规模、架构,有外键,可...

  • mysql 多表关联创建外键

    逻辑外键是数据库体现不出来的。物理外键是数据库知道的 一、多表关联-外键: 代码1: Foreign前面不写东西,...

  • thinkphp6 关联模型使用注意事项

    如果使用模型关联,建立数据库表时主键外键尽量使用不同的名字,避免起别名的麻烦

  • 浅谈数据库主键外键索引

    目录 1、主键、外键、索引定义 2、为什么定义主键、外键 3、主键和外键的关系 4、数据库中主键和外键的设计原则 ...

  • Sql知识

    主键外键 主键:PRIMARY KEY 外键:FOREIGN KEY 创建SQL FOREIGN KEY关于数据库...

网友评论

      本文标题:数据库是否需要建立外键

      本文链接:https://www.haomeiwen.com/subject/myajhctx.html