一、核心知识点
1、数据库系统和文件系统的比较。
文件系统:
(1)数据可以长期保存
(2)数据的存取基本上以记录为单位
(3)数据的共享性差
(4)数据的性低
(5)数据的不一致性
(6)数据的冗余度大
数据库系统:
(1)数据结构化(与文件系统的根本区别)
(2)数据的共享性好,冗余度低
(3)数据的性高
(4)数据由DBMS统一管理和控制
2、简述数据库系统的三级模式结构。
外模式(子模式或用户模式):从用户角度看待的局部的逻辑视图
模式(逻辑模式):从全局角度看待的逻辑视图
内模式(储存模式):从计算机角度看待的全局的物理视图
3、数据库的概念及在磁盘上的组织形式。
数据库是长期存储在计算机内有组织的大量的共享的数据集合
4、DBMS、DB、DBS和OS的关系。
数据库系统DBS包括数据库DB和数据库管理系统DBMS,DBMS是安装在OS
5、简述数据库系统三级模式结构中的两级映像,并说明其优点。
外模式/模式映像、模式/内模式映像
优点:保证了数据库系统中数据能够具有较高的逻辑性和物理性
6、简述数据模型的三要素。:数据结构、数据操作、完整性约束
7、数据库设计的基本步骤:
需求分析——概念结构设计——逻辑结构设计——数据库物理设计——数据库实施——数据库运行和维护
8、数据系统数据性的特点。
逻辑性:当数据的总体逻辑结构改变时,通过对映像的相应改变可以保持数据的局部逻辑结构不变,由于应用程序是依据数据的局部逻辑结构编写的,所以应用程序也不必修改
物理性:当数据的存储结构改变时,通过对映像的相应改变可以保持数据的逻辑结构不变,从而应用程序也不必改变
9、简述数据库系统的组成部分。
数据库、数据库管理系统(及其开发工具)、应用程序、数据库管理员、用户
10、数据安全性的概念。
数据的安全性是指保护数据,防止不合法使用数据造成数据的泄密和破坏,使每个用户只能按规定对某些数据已某些方式进行访问和处理
11、简述DBA的主要职责。
设计与定义数据库系统—帮助最终用户使用数据库系统—监督与控制数据库系统的使用和运行—改进和重组数据库系统,调优数据库系统的性能—转储和恢复数据库—重构数据库
12、简述DBMS的功能。
数据定义,数据操纵,数据库运行管理,数据组织、储存和管理, 数据库的建立和维护,数据通信接口
13、简述关系模型的特点。
(1)关系模型的概念单一
(2)关系必须是规范化关系
(3)在关系模型中,用户对数据的检索操作不过是从原来的表中得到一张新的表
优点:
(1)关系模型建立在严格的数学概念的基础上的
(2)关系模型的概念单一
(3)关系模型的存取路径对用户透明,从而具有更高的数据性,更好地安全保密性
缺点:
(1)查询效率不如非关系数据模型
(2)增加了数据库管理系统的负担
14、关系间联系的体现形式。一对一、一对多、多对多
15、根据给定的二维表格,判断是否可以成为关系,并说明原因。
不一定,一个关系模型的逻辑结构是一张二维表格,而关系中的每一个分量必须是一个不可分的数据项,也就是说,不允许表中还有表,因此给定的二维表格中可能还有表,所以给定的二维表格不一定可以成为关系
16、超码、候选码、主码的概念及他们之间的关系。
超码:能唯一标识实体的属性或属性组
候选码:其任意真子集都不能成为超码的最小超码
主码:从所有候选码中选定一个用来区别同一实体集中的不同实体
17、简述关系模型的组成部分。:关系数据结构、关系操作集合、完整性约束
18、简述关系的性质。:关系是笛卡尔积中有意义的子集
(1)列是同质的
(2)不同的列可出自同一个域
(3)列的顺序无所谓,即列的次序可以任意交换
(4)日益两个元组不能完全相同
(5)行的顺序无所谓,即行的次序可以任意交换
(6)分量必须取原子值,即每一个分量都必须是不可分的数据项(第一范式)
19、关系数据库的基本运算和专门运算。
基本运算:并、差、交、除
专门运算:选择、投影、连接
20、简述关系数据库的完整性规则。
(1)实体完整性规则(规定候选码的取值):若属性A是基本关系R的主属性,则属性A不能取空值
(2)参照完整性规则(规定外码的取值):若属性(属性组)F是基本关系R的外码,它与基本关系S的主码Ks相对应(基本关系R和S不一定是不同的关系),则对于R中的每个元组在F上的值必须为:取空值或等于S中某个元组的主码值
21、简述自然连接和等值连接的区别。
自然连接:自然连接是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且要在结果中把重复的属性去掉
等值连接:它是从关系R与S的笛卡尔积中选取A,B属性值相等的那些元组
22、外连接的概念、分类及各自的含义
外连接=自然连接+失配元组
左外连接=自然连接+左边失配元组
右外连接=自然连接+右边失配元组
全外连接=自然连接+两边失配元组
23、简述视图和关系的区别。
视图是从一个或多个基本表(基本关系)导出的表,它与基本表不同,是一个虚表
关系包括三种类型:基本关系(基本表或基表)、查询表、视图表
24、简述在SQL语言中实现子查询的方法和各自的特点。
子查询可以分为相关子查询和不相关子查询
相关子查询:子查询的条件依赖于父查询
不相关子查询:由里向外逐层处理,其中子查询的结果用做父查询的查找条件
25、SQL语言支持的模式结构。数据库的三级模式结构(外模式、模式、内模式)
26、说明DROP TABLE语句和DELETE语句的联系和区别。
DROP TABLE是删除基本表,基本表定义一旦删除,表中的数据和在此表上建立的索引都将自动被删除掉,而建立在此表上的视图虽仍保留,但已无法引用
DELETE语句删除的是表中的数据,而不是关于表的定义
27、简述在SQL中建表时如何实现对关系完整性。
建表的同时通常还可以定义与该表有关的完整性约束条件,这些完整性约束条件被存入系统的数据字典中,当用户操作表中的数据时由DBMS自动检查该操作是否违背这些完整性约束条件,如果完整性约束条件涉及到该表的多个属性列,则必须定义在表级上
28、简述E-R模型之间的冲突类型及相应的解决方法。
冲突类型有:属性冲突、结构冲突、命名冲突等
属性冲突:需要在设计阶段进行统一,各部门协商解决
结构冲突:同一实的属性取各局部E-R图中属性的并集。将属性变换为实体,或将实体变换为属性。
命名冲突:需要通过讨论或协商等行政手段解决
29、简述E-R模型向关系模型转换的基本规则。
(1)将实体转换为关系,实体的属性转换为关系的属性
(2)联系:
一对一:双方的主码均作为对方的外码
一对多:将1方的主码作为多方的外码
多对多:将联系转换为关系,联系的属性转为该关系的属性,双方的主码均作为关系的主码属性
(3)联系的属性:
1:1:转到双方的任意一方均可
1:n:一般转到多方
30、简述常用数据模型的数据结构及其特点。
层次模型:它用树形结构表示各类实体以及实体间的联系
特点:
(1)层次模型本身比较简单,只需要很少几条命令就能操纵数据库,比较容易使用
(2)提供了良好的完整性支持
(3)对于实体间联系是固定的且预先定义好的系统,采用层次模型,其性能优于关系模型,不次于网状模型
(4)对插入的比较多
(5)查询子女结点必须通过双亲结点
(6)结构严密,层次命令趋于程序化
网状模型:在层次模型的基础上,去掉了层次模型的两个,比层次模型更普遍
特点:
(1)能够更为直接的描述现实世界
(2)具有良好的性能,存取效率较高
(3)DDL语言复杂
(4)数据性较差
关系模型:是最重要的一种模型,关系模型中,实体及实体间的联系都用表来表示
特点:
(1)关系模型建立在严格的数学概念的基础上
(2)关系模型的概念单一
(3)关系模型的存取路径对用户透明,从而具有更高的数据性,更好地安全保密性
(4)查询效率不如非关系数据模型
(5)增加了数据库管理系统的负担
31、简述视图的概念及视图与数据性的关系。
视图是从一个或多个基本表(基本关系)导出的表,它与基本表不同,是一个虚表
视图只能在一定的程度上提供数据的逻辑性
32、现有系dept(dno,dname),学生S(sno,sname,sex,age,dno),现需要删除dno为‘05’的系的信息,请写出SQL语句,并说明原因。
Delete from dept where dno=’05’
33、Microsoft sql server确认用户对数据库引擎服务的验证模式;
Windows模式
34、对现实世界的事物进行抽象后形成数据,一般要经历的三个世界;
现实世界、信息世界、计算机世界
35、索引的分类及含义
分类:
(1)聚簇索引:指索引项的顺序与表中记录的物理顺序一致的索引组织
(2)聚集索引:一个表中最多只能建立一个聚集索引
(3)唯一索引
二、关系代数及SQL语言训练
1、设有如图所示的关系S、SC和C,试用关系代数表达式表示下列查询语句:
学生S:S#:学号,SNAME:姓名,AGE:年龄 SEX:性别
S# | SNAME | AGE | SEX | dept |
1 | 李强 | 23 | 男 | |
2 | 刘丽 | 22 | 女 | |
3 | 张友 | 22 | 男 |
C# | CNAME | TEACHER |
K1 | C语言 | 王华 |
K5 | 数据库原理 | 程军 |
K8 | 编译原理 | 程军 |
S# | C# | SCORE |
1 | K1 | 83 |
2 | K1 | 85 |
5 | K1 | 92 |
2 | K5 | 90 |
5 | K5 | 84 |
5 | K8 | 80 |
[1] 用关系代数和SQL语言表达完成如下要求:
(1)检索至少选修"程军"老师所授全部课程的学生姓名(SNAME);
(2)检索"李强"同学不学课程的课程号(C#);
(3)检索选修不少于3门课程的学生学号(C#);
(4)检索选修全部课程的学生姓名(SNAME)。
(5)检索不学C语言的学生信息
(6)检索“信息系” 所有学生都选修的课程的课程号、课程名。
2 设供销管理系统的部分数据库模式如下所示:
供应商(供应商编号,供应商名称, 地址, 联系电话, 联系人)
商品(商品编号,商品名称,型号,单价,产地,生产日期)
供货记录(供应商编号,商品编号,供货日期,数量,经办人)
根据要求请使用关系代数和SQL完成如下查询:
(1) 统计由王明经办的供货记录数;
(2) 查询由成都的供应商提供的商品详细信息;
(3) 查询单次供货数量超过1000件或金额超过10000元的供应商名称;
(4) 查询至少供应了由S1101供应商供应的所有商品的供应商编号。
3、已知:一组关系模式:
部门(部门号,部门名称,电话号码)
职工(职工号,姓名,性别,职务,部门号)
工程(项目号,项目名称,经费预算)
施工(职工号,项目号,工时)
工资级别(职务,小时工资率)
根据这组关系模式请用关系代数和SQL语言实现。
(1)查询“技术部”的详细信息;
(2)查询职务为“工程师”的姓名和部门名称。
(3)列出每个部门的职工所承担工程项目的信息,要求显示部门名称、姓名和项目名称。
(4)将职务为“工程师”的小时工资率提高5%。
(5)查询各职工的工资总和,要求显示职工号,姓名,性别,工资总和。
4 设有如下的关系S、SC和C。
学生S:S#:学号,SNAME:姓名,AGE:年龄 SEX:性别
课程C:C#:课程代码,CNAME:课程名称,TACHER:教师
学生成绩SC:S#:学号,C#:课程代码,SCORE:成绩
请用SQL语言完成如下查询:
(1)查询“王平”老师所教授的所有课程;
(2)查询“李利”同学所有课程的成绩;
(3)查询课程名为“C语言”的平均成绩;
(4)查询选修了所有课程的同学信息。
5 设某数据库有三个关系:
音像(音像编号,音像名,租金,类别)
会员(会员编号,会员名,年龄,所在地区,性别,联系电话)
租借(音像编号,会员编号,租借日期,归还日期)
请用SQL语言完成如下查询:
(1) 检索年龄在30-45之间的会员名、所在地区和联系电话。
(2) 检索至少租借三种音像的会员编号。
(3) 检索没有借“红楼梦”音像的会员编号、会员名、年龄、联系电话。
(4) 检索所有男性都租借的音像名。
6 现有一商店销售模型,
SD(SNO,SNAME,CITY)
SP(PNO,PNAME,JG,KCSL)
XS(SNO,PNO,SL,XSJG)
其含义如下∶
SD为商店,SNO(商店代码),SNAME(商店名称),CITY(所在城市)
SP为商品,PNO(商品代码),PNAME(商品名称),JG(价格),KCSL(库存数量)
XS为销售,SNO(商店代码),PNO(商品代码),SL(销售数量),XSJG(销售价格)
请使用sql语言完成以下要求
(1)查询“重庆”(所在城市)的所有商店;
(2)查询“商店1”(商店名称)销售的所有商品;
(3)查询所有“北京”(所在城市)的商店销售商品的总金额(销售数量*销售价格);
(4)查询销售“商店2”(商店名称)的所有商品的商店。
三、综合应用
1、学生运动会模型:
(1)有若干班级,每个班级包含:班级号、班级名、专业、人数;
(2)每个班级有若干运动员,运动员只能属于一个班,包括:运动员号、姓名、性别、年龄;
(3)有若干比赛项目,包括:项目号、名称、比赛地点;
(4)每名运动员可参加多项比赛,每个项目可有多人参加;
(5)要求能够公布每个比赛项目的运动员名词与成绩;
(6)要求能够公布各个班级团体总分的名词和成绩;
要求:
(1)请设计该问题的E-R模型;
(2)请完成数据库逻辑模型(关系模型)实际,包括各个表的名称、属性及码。
2、已知某建筑公司有若干部门,每一个部门有多名职工,且每一职工只属于一个部门,公司承揽多个项目,每个项目有多个职工,每个职工可参加多个项目。
(1)请设计该问题的E-R模型;
(2)请完成数据库逻辑模型(关系模型)实际,包括各个表的名称、属性及码。
3、某学生宿舍管理系统,涉及的部分信息如下:
(1) 学生:学号,姓名,性别,专业,班级。
(2) 寝室:寝室号,房间电话。
(3) 管理员:员工号,姓名,联系电话。
其中:每个寝室可同时住宿多名学生,每名学生只分配一个寝室;每个寝室指定其中一名学生担当寝室长;每个管理员同时管理多个寝室,但每个寝室只有一名管理员。
(1)根据上述规则设计E-R模型。
(2)将E-R模型转换成关系数据模型,并指出每个关系的主键和外键。
4、假定一个部门的数据库包括以下的信息:
职工的信息:职工号、姓名、住址和所在部门;
部门的信息:部门所有职工、经理和销售的产品;
产品的信息:产品名、制造商、价格、型号及产品内部编号;
制造商的信息:制造商名称、地址、生产的产品名和价格;
(1)请设计该问题的E-R模型;
(2)请完成数据库逻辑模型(关系模型)实际,包括各个表的名称、属性及码。
5、假设某公司的业务规则如下:
(1)公司下设几个部门,如技术部、财务部、市场部等。
(2)每个部门承担多个工程项目,每个工程项目属于一个部门。
(3)每个部门有多名职工,每一名职工只能属于一个部门。
(4)一个部门可能参与多个工程项目,且每个工程项目有多名职工参与施工。根据职工在工程项目中完成的情况发放酬金。
(5)工程项目有工程号、工程名两个属性;部门有部门号、部门名称两个属性;职工有职工号、姓名、性别属性;
问题:
1.根据上述规则设计E-R模型。
2.将E-R模型转换成关系数据模型,并指出每个关系的主键和外键。
6、某商店要建立一个数据库,保存顾客、商品和顾客购买商品的记录。为顾客保存的信息包括顾客编号、姓名、单位和电话;为商品保存的信息包括商品编号、名称、单价和产地;另外,顾客每次购买商品要保存购买数量、金额和日期。
1.根据上述语义画出E-R图,要求在图中画出属性并注明联系的类型。
2.试将E-R模型转换成关系模型,并指出每个关系模式的主码和外码。下载本文