¶绪论
¶数据模型
数据模型由概念模型
和逻辑模型
构成
如下图所示:

¶概念模型
用于按照用户的观点进行对数据和信息建模,用于数据库设计,供数据库设置人员和用户交流

- 实体(Entity):客观存在并可相互区别的事物称为实体。可以是具体的人、事、物或抽象的概念。
- 属性(Attribute):实体所具有的某一特性称为属性。一个实体可以由若干个属性来刻画
- 码(Key):唯一标识实体的属性集称为码。
- 实体型(Entity Type): 用实体名及其属性名集合来抽象和刻画同类实体称为实体型
- 实体集(Entity Set): 同一类型实体的集合称为实体集
- 联系(Relationship): 实体间(指属性和实体的联系)|实体内联系(如1对1,1对n,多对多)
E-R图就是用来描述概念模型
¶数据模型的性质
- 数据结构
- 以数据结构来命名数据模型:如层次结构-层次模型,关系结构-关系模型
- 数据操作
- 操作类型:如更新(增|删|改|)和查
- 操作语言:QL|DML
- 完整性约束
¶常见的数据模型(以其数据结构命名)
- 格式化模型:该类模型复杂,并且语言趋向于程序化
- 层次模型(Hierarchical Model)
- 网状模型(NetWork Model)
- 关系模型(Relational Model)
- 对象模型
- 面向对象模型(Object Oriented Data Model)
- 对象关系模型(Object Relational Data Model)
- 半结构化模型(Semi-struture Data Model) 如xml
- 非结构化模型,图模型
¶结构化模型举例
- 基本数据单位

- 层次模型:以树结构实现,不是二叉树


- 网状模型:使用网状结构表示 实体和实体间关系



- 关系型数据库:
- 在用户的角度关系就是一张二元表
- 关系(Relation)—— 一个关系对应通常说的一张表
- 元组(Tuple)—— 表中的一行即为一个元组
- 属性(Attribute)——表中的一列即为一个属性,给每一个属性起一个名称即属性名
- 主码(Key)——也称码键。表中的某个属性组,它可以唯一确定一个元组
- 域(Domain)——是一组具有相同数据类型的值的集合。属性的取值范围来自某个域。
例:学生年龄属性的域(15~45岁),性别的域是(男,女),系名的域是一个学校所有系名的集合; - 分量——元组中的一个属性值
- 关系模式——对关系的描述
关系名(属性1,属性2,…,属性n)学生(学号,姓名,年龄,性别,系名,年级)
- 关系是不可再分割的
- 数据操作
- 完整性:
- 优缺点:
¶关系数据库
¶关系数据库数据结构和完整性
¶关系
域(domain)表示属性的取值,将域D1,D2,D3...做笛卡儿积,就会得到关系,即关系二维表表


¶完整性约束
- 实体完整性
- 主键约束(实际就是非空和联合主键)
- 参照完整性:实体间引用存在关系
- 引用的值应该存在,如学生选课表存在的数据才能被选择
- 外键约束
- 用户完整性
- 唯一约束
- 非主键非空
- 指定取值
¶关系操作
¶关系代数
- 关系数据库语言:典型的为SQL
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 博客!
评论