数据库设计基础知识

数据库设计基础知识

2023年7月27日发(作者:)

站长统计数据库设计基础知识基本概念数据库系统DBS:是⼀个采⽤了数据库技术,有组织地、动态地存储⼤量相关数据, ⽅便多⽤户访问的计算机系统。其由下⾯四个部分组成:

数据库(统⼀管理、长期存储在计算机内的,有组织的相关数据的集合)

硬件(构成计算机系统包括存储数据所需的外部设备)

软件(操作系统、数据库管理系统及应⽤程序)

⼈员(系统分析和数据库设计⼈员、应⽤程序员、最终⽤户、数据库管理员⼝BA)。

数据库管理系统DBMS的功能 实现对共享数据有效的组织、管理和存取。包括数据定义、数据库操作、数据库运⾏管理、数据的存储管理、数据库的建⽴和维等。三级模式-两级映射内模式:管理如何存储物理的数据,对应具体物理存储⽂件。模式:⼜称为概念模式,就是我们通常 使⽤的基本表,根据应⽤、需求将物理 数据划分成⼀张张表。

外模式:对应数据库中的视图这个级别 表进⾏⼀定的处理后再提供给⽤户使⽤

外模式⼀模式映像:是表和视图之间的 映射,存在于概念级和外部级之间,若 表中数据发⽣了修改,只需要修改此映 射,⽽⽆需修改应⽤程外模式⼀模式映像序。模式⼀内模式映像:是表和数据的物理 存储之间的映射,存在于概念级和内部级之间,若修改了数据存储⽅式,只需 要修改此映射,⽽不需要模式⼀内模式映像去修改应⽤程序。数据库设计需求分析:即分析数据存储的要求,产出物有数据流图、数据字典、需求说明书。概念结构设计:就是设计E-R图,也即实体-属性图,与物理实现⽆关,说明有哪些实体,实体有哪些属性。逻辑结构设计:将E-R图,转换成关系模式,也即转换成实际的表和表中的列属性,这⾥要考虑很多规范化的东西。物理设计:根据⽣成的表等概念,⽣成物理数据库。E-R模型数据模型三要素:数据结构(所研究的对象类型的集合)、数据操作(对数据库中各种对象的 实例允许执⾏的操作的集合)、数据的约束条件(⼀组完整性规则的集合)。E-模型:即实体-联系模型,使⽤椭圆表⽰属性(⼀般没有)、长⽅形表⽰实体、菱形表⽰联 系,联系两端要标注联系类型。联系类型:⼀对⼀1:1、⼀对多1:N、多对多M:N。属性分类:简单属性和复合属性(属性是否可以分割)、单值属性和多值属性(属性有多个取 值)、NULL属性(⽆意义)、派⽣属性(可由其他属性⽣成)。关系模型关系模型也即数据库中常⽤的表,包括实体的属性,标识出实体的主键和外键.模型转换E-R图转换为关系模型:每个实体都对应⼀个关系模式;联系分为三种:1:1联系中,联系可以放到任意的两端实体中,作为⼀个属性(要保证1:1的两端关联);

1:N的联系中,联系可以单独作为⼀个关系模式,也可以在端中加⼊1端实体的主键:M:N的联系中,联系必须作为⼀个单独的关系模式,其主键是M和N端的联合主键。关系代数运算并:结果是两张表中所有记录数合并,相同记录只显⽰⼀次。交:结果是两张表中相同的记录。差:S1-S2,结果是S1表中有⽽S2表中没有的那些记录。笛卡尔积:S1X S2,产⽣的结果包括S1和S2的所有属性列,并且S1中每条记录依次和S2中所有 记录组合成⼀条记录,最终属性列为S1+S2属性列,记录数为S1X S2记录数。投影:实际是按条件选择某关系模式中的某列,列也可以⽤数字表⽰。 Π选择:实际是按条件选择某关系模式中的某条记录。δ⾃然连接的结果显⽰全部的属性列,但是相同属性列只显⽰⼀次,显⽰两个关系模式中属性和同且值相同的记录。函数依赖给定⼀个X,能唯⼀确定⼀个Y,就称X确定Y,或者说Y依赖于X,例如Y=X* X函数。函数依赖⼜可扩展以下两种规则:部分函数依赖:A可确定C,(A,B)也可确定C,(A,B)中的⼀部分(即A)可以确定C, 称为部分函数依赖。传递函数依赖:当A和B不等价时,A可确定B,B可确定C,则A可确定C,是传递函数 依赖;若A和B等价,则不存在传递,直接就可确定C。键与约束超键:能唯⼀标识此表的属性的组合。候选键:超键中去掉冗余的属性,剩余的属性就是候选键。主键:任选⼀个候选键,即可作为主键。外键:其他表中的主键。主属性:候选键内的属性为主属性,其他属性为⾮主属性。实体完整性约束:即主键约束,主键值不能为空,也不能重复。参照完整性约束:即外键约束,外键必须是其他表中已经存在的主键的值,或者为空。⽤户⾃定义完整性约束:⾃定义表达式约束,如设定年龄属性的值必须在0到150之间。范式第⼀范式1F:所有属性都不可以再分割为两个或多个分量。第⼆范式2NF:当且仅当R是1NF,且每⼀个⾮主属性完全依赖主键(不存在部分依赖)时,R 就是2NF。⽐较典型的例⼦就是候选键是单属性,单属性是不可能存在部分函数依赖的。第三范式3NF:当且仅当R是2NF,且R中没有⾮主属性传递依赖于候选键时,R就是3NF(此时, 也不会存在部分依赖)。⼀般解决⽅法是拆分传递依赖的⾮主属性为⼀个新的关系模式。本质 就是主键要直接决定所有⾮主属性,不能通过⾮主属性间接决定。模式分解范式之间的转换⼀般都是通过拆分属性,即模式分解,将具有部分函数依赖和传递依赖的属性 分离出来,来达到⼀步步优化,⼀般分为以下两种:保持函数依赖分解对于关系模式R,有依赖集F,若对R进⾏分解,分解出来的多个关系模式,保持原来的依赖集 不变,则为保持函数依赖的分解。另外,注意要消除掉冗余依赖(如传递依赖)。⽆损分解:分解后的关系模式能够还原出原关系模式,就是⽆损分解,不能还原就是有损。当分解为两个关系模式,除了表格法以外,还可以通过以下定理判断是否⽆损分解:定理:如果R的分解为p={R1,R2},F为R所满⾜的函数依赖集合,分解p具有⽆损连接性的充分 必要条件是R1 ∩ R2->(R1-R2)或者R1 ∩ R2->(R2-R1)事务管理事务提交commit,事务回滚rollback。事务:由⼀系列操作组成,这些操作,要么全做,要么全不做,拥有四种特性,详解如 下:(操作)原⼦性:要么全做,要么全不做。(数据)⼀致性:事务发⽣后数据是⼀致的,例如银⾏转账,不会存在A账户转出,但是 B账户没收到的情况。(执⾏)隔离性:任⼀事务的更新操作直到其成功提交的整个过程对其他事务都是不可 见的,不同事务之间是隔离的,互不⼲涉。(改变)持续性:事务操作的结果是持续性的。并发控制事务是并发控制的前提条件,并发控制就是控制不同的事务并发执⾏,提⾼系统效 率,但是并发控制中存在下⾯三个问题:丢失更新:事务1对数据A进⾏了修改并写回,事务2也对A进⾏了修改并写回,此时 事务2写回的数据会覆盖事务1写回的数据,就丢失了事务1对A的更新。即对数据A 的更新会被覆盖。不可重复读:事务2读A,⽽后事务1对数据A进⾏了修改并写回,此时若事务2再读A, 发现数据不对。即⼀个事务重复读A两次,会发现数据A有误。读脏数据:事务1对数据A进⾏了修改后,事务2读数据A,⽽后事务1回滚,数据A恢 复了原来的值,那么事务2对数据A做的事是⽆效的,读到了脏数据。

发布者:admin,转转请注明出处:http://www.yc00.com/web/1690431822a348989.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信