邻接学科 / Database Design
数据库设计
研究如何把真实问题中的对象、属性和关系组织成可靠、可查询、可维护的数据结构。
Identity · 身份
- 子类型
- 分类
- 层级
- 邻接学科
What · 是什么
- 定义
- 研究如何把真实问题中的对象、属性和关系组织成可靠、可查询、可维护的数据结构。
- 范围与组成
- 关系型数据库基础、关系表设计、键与约束、ER 图、规范化、基础 SQL,以及知识图谱与图数据库的区别。
Why · 为什么
- 核心问题
- 一个业务问题应如何拆成实体、字段、表、键和关系?
Lifecycle · 生命周期
- 状态
- 草稿
相关邻接概念
关系来自本地关系表,并包含反向关联。
- 基础 SQL 与 CRUDBasic SQL and CRUD反向 · 属于
SQL 是操作关系型数据的声明式语言;CRUD 分别指创建、读取、更新和删除数据。
- 一对一、一对多与多对多Cardinality and Relationship Types反向 · 属于
关系基数描述一侧实体与另一侧实体可以关联多少个实例,常见类型是一对一、一对多和多对多。
- 关系型数据库与图数据库如何选择Choosing Relational or Graph Databases反向 · 属于
数据库选择应根据数据结构、主要查询、完整性要求、事务边界、团队生态和运维成本做权衡,而不是根据流行程度决定。
- 约束与数据完整性Constraints and Data Integrity反向 · 属于
约束是数据库强制执行的数据规则;数据完整性是数据在结构、引用、取值和业务事实上的正确性与一致性。
- 数据库与数据库管理系统Database and DBMS反向 · 属于
数据库是有组织的数据集合;数据库管理系统(DBMS)是负责定义、存储、查询、更新、授权和保护这些数据的软件。
- 数据库设计流程Database Design Process反向 · 属于
数据库设计流程是把业务需求逐步转成概念模型、关系表、约束和可验证查询的过程。
- 实体、属性与关系Entities, Attributes and Relationships反向 · 属于
实体是需要被识别的对象或概念,属性描述实体,关系描述实体之间发生的联系或事实。
- ER 图Entity–Relationship Diagram反向 · 属于
ER 图是描述实体、属性、关系及其基数的建模图示,用于在实现数据库前检查结构和含义。
- ER 图、知识图谱和图数据库的区别ER Diagrams, Knowledge Graphs and Graph Databases反向 · 属于
ER 图是关系数据库的设计图示,知识图谱是以实体和关系表达知识的表示方式,图数据库是存储和查询图结构数据的数据库系统。
- 外键与引用完整性Foreign Keys and Referential Integrity反向 · 属于
外键是引用另一张表候选键或主键的字段;引用完整性要求这个引用指向一个存在且允许被引用的目标。
- 图数据库Graph Database反向 · 属于
图数据库是以节点、边和属性为核心数据结构,并针对关系遍历和图查询进行存储与执行优化的数据库系统。
- 多对多关系如何拆成中间表Junction Tables反向 · 属于
中间表是把多对多关系拆成两条一对多关系的表,每一行表示一对实体之间的一次关联。
- 知识图谱Knowledge Graph反向 · 属于
知识图谱以实体、关系、属性和来源等结构表达可连接、可追溯的知识事实。
- 图书馆数据库设计案例Library Database Design Case反向 · 属于
通过图书、作者、会员和借阅需求,完整演示从粒度、实体、关系和 ER 图到 SQLite DDL 与典型查询的数据库设计过程。
- 规范化与反规范化Normalization and Denormalization反向 · 属于
规范化是通过拆分表和明确依赖来减少不必要重复与更新异常;反规范化是在有明确读写权衡时主动保留部分重复。
- 主键与候选键Primary and Candidate Keys反向 · 属于
候选键是能唯一识别一行且不可再缩减的属性组合;从候选键中选作主要标识的称为主键。
- 关系模型Relational Model反向 · 属于
关系模型用关系(通常呈现为表)组织数据,用行表示元组,用列表示属性,并通过键和约束表达关联与规则。
- 表、行、列与记录Tables, Rows, Columns and Records反向 · 属于
表是同类事实的集合,行或记录是一条事实,列是这类事实的属性,单元格是某条事实在某个属性上的值。