数据库模型
三级模式
🍀外模式(用户/子模式):外模式对应视图级别,是用户与数据库系统的接口,是用户用到那部分数据的描述,比如说:用户视图;
🍀模式(概念模式):对于表级,是数据库中全部数据的逻辑结构和特质的描述,由若干个概念记录类型组成,只涉及类型的描述,不涉及具体的值;
🍀内模式(存储模式):对应文件级,是数据物理结构和存储方式的描述,是数据在数据库内部表示的表示方法,定义所有内部的记录类型,索引和文件的组织方式,以及数据控制方面的细节。例如:B树结构存储,Hash方法存储,聚簇索引等等。
两级映射
两级映射是为了实现数据的两层独立性。模式/内模式映射实现数据的物理独立性,模式/外模式映射实现数据的逻辑独立性。
数据模型
ER图
在E-R模型中,实体用矩形表示、属性用椭圆形表示、联系用菱形表示。
er图之间的冲突
🍅属性冲突。同一属性可能会存在于不同的分E-R图,由于设计人员不同或是出发点不同,对属性的类型、取值范围和数据单位等可能会不一致,这些属性对应的数据将来只能以一种形式 在计算机中存储,这就需要在设计阶段进行统一。
🍅命名冲突。相同意义的属性在不同的分E-R图上有着不同的命名,或是名称相同的属 性在不同的分E-R图中代表着不同的意义,这些也要进行统一。
🍅结构冲突。同一实体在不同的分E-R图中有不同的属性,同一对象在某一分E-R图中 被抽象为实体,而在另一分E-R图中又被抽象为属性,需要统一。
数据库操作
关系模型的完整性规则
🍀1,实体完整性:主属性(主键)不能为空。
🍀2,参照完整性:外键的值必须存在(即不能引用不存在的外键)
🍀3,用户定义完整性:满足用户要求。
关系运算
关系数据库的规范化
函数依赖
候选码: 某属性集A决定另一个属性集B时,称另一属性集B依赖于该属性集A。
主属性:包含在任何一个候选码中的属性叫做主属性,否则叫做非主属性。
推理规则
合并规则:由X->Y,X->Z,则有X->YZ
伪传递规则:由X->Y,WY->Z,则有XW->Z
传递规则:由X->Y及Y->Z,则X->Z
求候选键
🍂1,将关系模式的函数依赖关系用“有向图”的方式表示。
🍂2,找入度为0的属性,并以该属性集合为起点,尝试便利有向图,若能正常遍历图中的所有结点,则该属性集即为关系模式中的候选键。
🍂3,若有入度为0的属性不能遍历图中所有的结点,则需要尝试性的将一些中间结点(既有入度,也有出度的结点)并入入度为0的属性集中,直至该集合能遍历所有结点,集合为候选键。
范式
数据库的控制功能
索引是数据库中提高查询效率的一种机制,不能进行数据更新。
视图一般是提供查询数据的,具有一定安全机制,但是不能进行数据更新。
触发器可以作为更新机制,但是无法避免数据库的关系模式被第三方所获取,并不安全。
存储过程,可以定义一段代码,从而提供给用户程序来调用,具体更新过程通过代码调用,避免了向第三方提供系统表结构的 过程