logo资料库

杭电数据库期末资料.docx

第1页 / 共2页
第2页 / 共2页
资料共2页,全文预览结束
数据库(DB):存储在计算机系统内部的有结构的数据集合是相关数据的集合。 事务:就是用户定义的一个数据库操作序列,是一个不可分割的工作单位。 数据库管理系统(DBMS):是在操作系统支持下工作的数据管理软件,是支 事务特性:原子性、一致性、隔离性、持久性。 持用户创建和维护数据库的一组程序包。 一级封锁协议:任何事务在修改某数据之前,必须先对其加上自己的 X 锁, 数据库系统(DBS):是指在计算机系统中引入数据库后的系统构成,由计算 直至事务结束才能释放之。 机硬件、操作系统、DBMS、DB、应用程序和用户以及数据库开发和管理人 二级封锁协议:一级封锁协议、任一事务在读取某数据(不修改)前必须先 员等组成。 对其加上 S 锁,读完后即可释放 S 锁。 数据库管理员(DBA):是数据库所属单位的代表。 三级封锁协议:一级封锁协议、任一事务在读取某数据(不修改)前必须先 DBA 职责:在用户与数据库开发人员之间进行协调和沟通;参与数据库设计 对其加上 S 锁,直至事务结束才释放此 S 锁。 工作;决定数据的完整性约束条件和不同用户的存储权限;提出数据库的重 故障的种类:事务内部故障、系统故障、介质故障、计算机病毒。 构计划。 数据库系统人员构成:数据库管理员、数据库设计者、应用系统开发人员、 终端用户。 数据的三级模式结构:外模式(子模式或用户模式,视图)、模式(逻辑模式, 基本表)、内模式(存储模式,存储文件)。目的是将用户应用和物理数据库 分离出来。 恢复手段:数据库转储法(静态转储、动态转储、海量转储)、日志文件法。 R 并 S:R∪S={t∣t∈R∨t∈S}当且仅当 t 属于 R 或属于 S R 和 S 的差:R-S={t∣t∈R∧t∈≠S}当且仅当 t 属于 R 并且不属于 S R 交 S:R∩S={t∣t∈R∧t∈S}当且仅当 t 既属于 R 又属于 S R×S={∣∈R∧∈S}任取和,当且仅当属于 R 且属于 S 数据库的完整性与安全性有什么不同?(5 分) 数据独立性:逻辑独立性(指当数据库的模式发生改变时,只需要改变存在 数据的完整性和安全性是两个不同的概念。前者是为了防止数据库中存在不 于外模式和模式之间的映射转换,无需改变外模式或应用程序)、物理独立性 符合语义的数据,防止错误信息的输入和输出,即所谓垃圾进垃圾出(Garbage (指当数据库的内模式发生改变时,系统只要改变概念模式和内模式的映射 In Garbage Out)所造成的无效操作和错误结果。后者是保护数据库防止恶意 转换,而不必改变模式)。 的破坏和非法的存取。也就是说,安全性措施的防范对象是非法用户和非法 码:在一个实体集中,根据一个或几个属性的值可唯一地确定每一个实体, 操作,完整性措施的防范对象是不合语义的数据。 而又没有包含多余的属性,则称此属性或属性组为该实体集的码。 什么是数据冗余?在关系数据库中能完全消除数据冗余吗?(5 分) E-R 三要素:实体集、联系集、属性。 数据库中数据重复存储的现象称为数据冗余。 数据模型三要素:结构、操作集合、完整性约束。 在关系数据库中不能完全消除数据冗余。因为要实现关系数据库中表与表之 关系六大基本性质:关系中的每个分量值都是原子的,即是不可分的基本数 间的联系,必须通过公共属性来完成,这些公共属性可能是一个表的主键, 据项;属性列是同质的,即同一列的分量值应该出自相同的域;不同的列可 也可能是另一个表的外键,有相应的参照完整性规则来保证表之间的联系。 以出自同一个域;列的次序可以相互交换;行的顺序也可以相互交换、一个 所以关系数据库中存在数据冗余,但能控制数据的冗余度。 关系中的任意两个元组不能相同。 关系的完整性约束:实体完整性、参照完整性、用户定义的完整性。 创建表 SQL 分类:数据定义语言 DDL(创建、更改或删除数据库对象,CREATE、 CREATE TABLE course ALTER、DROP)、数据操纵语言 DML(负责数据库中数据的插入、修改、查 (cno char(1) primary key, 询、删除。SELECT、INSERT、UPDATE、DELETE)数据控制语言 DCL(授 cname varchar(20) not null, 予和撤销用户对数据的操作权限。GRANT、REVOKE)。 主码在 CREATE TABLE 中用 PRIMARY KEY 定义 credit smallint) 插入数据 安全:用户识别和鉴别(口令、利用用户的个人特征、磁卡)、访问控制{数 INSERT INTO class (clno,speciality,inyear,number) 据库用户的种类(一般数据库用户、具有创建表权利的用户、具有 DBA 特权 VALUES ('00311','计算机软件','2000',120) 的用户);DBA 对用户的注册;一般授权—GRANT;收回一般授权给出的权 修改数据 class 限—REVOKE。}、强制存取控制的方法、视图和查询修改、跟踪审计、数据 UPDATE class 加密 SET monitor='2000101' 函数依赖是属性之间的一种联系,指在关系 R 中,X、Y 为 R 的两个属性或 WHERE clno='00311' 属性组,如果对于 R 的所有关系 r 都存在:对于 X 的每一个具体值,Y 都只 删除学号为”2001110”的学生的成绩记录; 有一个具体值与之对应,则称属性 Y 函数依赖于属性 X。或者说,属性 X 函 DELETE grade 数决定属性 Y,记作 X→Y。其中 X 叫决定因素,Y 叫被决定因素。 FROM grade 第二范式(2NF):如果一个关系 R 属于 1NF,且它的所有非主属性都完全函 第三范式(3NF):如果关系模式 R 属于 2NF,且它的每一个非主属性都不传 第一范式(1NF):如果关系模式 R 中不包含多值属性,则 R 满足第一范式, 记作 R∈1NF。 数依赖于 R 的任一候选码,则 R 属于第二范式,记作 R∈2NF。 递依赖于任何候选码,则 R 属于第三范式,记作 R∈3NF。 不符合 2NF 的关系模式会出现:插入异常、删除异常、修改异常。 WHERE sno='2001101' 给学生表增加一属性 Nation(民族),数据类型为 Varchar(20); ALTER TABLE student ADD nation varchar(20) 删除学生表中新增的属性 Nation; ALTER TABLE student DROP column nation
为学生表创建一个名为 IX_Class 的索引,以班级号的升序排序; CREATE INDEX IX_Class on student (clno asc) 删除 IX_Class 索引。 DROP INDEX student.IX_Class 找出 01311 班女学生的个人信息; select * from student where clno='01311' and ssex='女' 找出学生李勇所在班级的学生人数; --使用连接查询 SELECT number FROM class,student WHERE class.clno=student.clno and sname='李勇' --或使用嵌套子查询 SELECT number FROM class WHERE clno = (SELECT clno FROM student WHERE sname='李勇') 用户张勇对 Student 表和 Course 表有 Select 权力。 Grant select on student to 张勇 Grant select on course to 张勇 把对表 Student 的 INSERT 和 Delete 权限授予用户张三,并允许他再把此权 限授予其他用户。 Grant insert,delete on student to 张三 with grant option 把查询 Course 表和修改属性 Credit 的权限授给用户李四。 Grant select,update(credit) on course to 李四 授予用户李勇敏对 Student 表的所有权力(读、插、删、改),并具有给其他 用户授权的权力。 Grant all privilege on student to 李勇敏 with grant option 撤销(1)中对张勇所授予的所有权力。 Revoke select on student to 张勇 或:Revoke select on student from 张勇 撤销(2)中对张三所授予的所有权力。 revoke insert,delete on student to 张三 cascade 或 revoke insert,delete on student from 张三 cascade 找年龄不小于 20 的男学生 AGE≥20 ∧ SEX=‘male’(S) 查询职工的姓名和职称。 (Employee) 找出 01311 班、01312 班的学生姓名、性别、年龄。 σclno='01311'orclno='01312'(student) Ename,Title sname,ssex,sage WHERE clno=clno='01311'orclno='01312' SELECT sname,ssex,sage FROM student
分享到:
收藏