关系数据库设计理论与DBMS结构

关系数据库设计理论与DBMS结构

关系数据库的设计理论

关系数据模型以集合论为基础表示和处理数据.

依赖

函数依赖研究一个关系中属性之间的关系,一些实例与概念:

函数依赖:学号->姓名,学号->院系.传递依赖:学号->院系,院系->系主任,学号->系主任.
循环依赖:学号->身份证号,身份证号->学号.
完全依赖与部分依赖:W->A,V是W的真子集,存在V->A成立,A为部份依赖,不存在,A为完全依赖.
多值依赖:其中一个属性A取特定值,与其他属性B取值无关,则为多值依赖A->->B.实例:Student(N, A, B),N同学的A参加社团与选课B无关,称为A->->B或者B->->A.

分解后的模式关系模式可以恢复就是无损分解.

范式

1NF:所有数据项/属性/列不可再分.
2NF:其他属性完全依赖于主键.不能有部分依赖,不能有孤儿属性.
3NF:其他属性对主属性依赖之间不能有传递依赖.3NF的关系模式一定不包含部分(不完全)函数依赖和传递函数依赖.
BCNF:消去对候选键的部分函数依赖和传递函数依赖;每个属性不传递依赖于键码;主键的子集不能作为属性的依赖.
4NF:消去多值依赖,一般来说,只有两个值的关系就可以满足到4NF.

“一门课程只由一位教师讲授.”,"一本教材仅用于一门课程"类似这样的描述指的是1:n的关系.对于具体的概念模型或者ER图,需从中再挖掘出可以拆分的表,使之满足3NF范式.

DBMS组成结构

查询处理器

将使用高级语言所描述的数据库操作转换成一系列的对数据库操作请求(编译查询语句).生成执行计划,根据执行计划访问相关数据.

存储管理器

检查用户是否具有数据访问权限,以事务方式管理用户对数据的访问,确保并发情况下的正确性.

文件管理程序

跟踪文件在磁盘上的位置.

缓冲区管理程序

控制主存的使用.将部分内存用于数据缓冲,利用一定算法置换缓冲区的数据块,提高数据访问效率.

事务管理器

保证事务正确执行.事务的四大特性是:原子性,一致性,隔离性,持久性

数据文件结构

堆文件,又称无序文件,适合存储数据量少,增删改操作频繁的基本表.为了提高性能,在数据量上去后,可以将对文件修改为B+文件以获取更高的查询效率.顺序文件也是一种常用的结构,在查询上有着可以二分查找的优势.散列文件可以实现根据值来随机访问,获得较高的性能,但查询若是模糊查询则在性能上没有优势.

SQL SERVER 数据库对象

新建数据库的大小最小值是系统数据库中model数据库的大小,SQL Server中新建数据库是以model为模板的.master是存储系统及信息与实例范围元数据的系统数据库.msdb由 SQL Server Agent 服务使用,用于调度报警与作业,记录操作员使用,一般不需要人工干预.

创建数据表时,CHECK只涉及到一列时可以写在该列定义子句之后,多列时就属于表级约束了,需要写在整个表定义的最后面.索引和日志不一定要分别放置在告诉磁盘和低速磁带上面,应根据业务具体的访问频率确定.SELECT语句查询数据库时,DBMS一般不会进行完整性约束检查.

开头为#字符的为临时表,会在用户链接(会话)结束后被DBMS自动删除,创建方法除了命名开头的特殊符号外与创建普通表基本一致.#为本地临时表,仅仅只有创建用户的创建链接中才可以访问此表.##为全局临时表,所有会话都可以引用此表.创建的表存储在tempdb数据库中.

参考

[1]何玉洁, 刘乃嘉. 全国计算机等级考试三级教程-数据库技术[M]. 高等教育出版社. 2020.
[2]Ben Forta. SQL必知必会[M]. 人民邮电出版社. 2020.
[3]史嘉权. 数据库系统概论[M]. 清华大学出版社. 2006.
[4]褚华, 霍邱艳. 软件设计师教程[M]. 清华大学出版社. 2018.
[5]王珊, 陈红. 数据库系统原理教程[M]. 清华大学出版社. 1998.
[6]汤小丹, 梁红兵, 哲凤屏, 汤子瀛. 计算机操作系统[M]. 西安电子科技大学出版社. 2014.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值