当前位置:首页 > 数据库原理及应用习题参考答案
这个ER图转换的关系模式如下:
商品(商品号,商品名,规格,单价) 供应商(供应商编号,供应商名,地址) 商店(商店号,商店名,地址)
供应(商品号,供应商编号,月供应量)
销售(商品号,商店号,月计划数)
6-17 假设要为银行的储蓄业务设计一个数据库,其中涉及到储户、存款、取款等信息,试设计ER模型。
解:储蓄业务主要是存款、取款业务,设计的ER图如下所示。
存款单号 储户 账号 身份证号 姓名 地址 存款余额 1 存款日期 存款 1 取款日期 取款 N 存款单 N 取款单 金额 存款方式 取款单号 金额 取款方式 6-18 假设某超市公司要设计一个数据库系统来管理该公司的业务信息。该超市公司的业务管理规则如下:
⑴ 该超市公司有若干仓库,若干连锁商店,供应若干商品。
⑵ 每个商店有一个经理和若干收银员,每个收银员只在一个商店工作。 ⑶ 每个商店销售多种商品,每种商品可在不同的商店销售。
⑷ 每个商品编号只有一个商品名称,但不同的商品编号可以有相同的商品名称。每种商品可以有多种销售价格。
⑸ 超市公司的业务员负责商品的进货业务。 试按上述规则设计ER模型。 解: M 仓库 N M M 业务员 进货 库存 发货 P N 1 商店 1 P N 商品 1 具有 N N M 第21页 销售 拥有 主管 N 1
6-19 假设要根据某大学的系、学生、班级、学会等信息建立一个数据库。一个系有若干专业,每个专业每年只招一个班,每个班有若干学生;一个系的学生住在同一宿舍区;每个学生可以参加多个学会,每个学会有若干学生,学生参加某学会有入会年份。试为该大学的系、学生、班级、学会等信息设计一个ER模型。
解:下图所示的是一种设计方案。
设置 1 系 N 住宿 N 专业 1 招收 N 班级 1 有 1 宿舍区 N 学生 M 参加 N 学会 习题7
7-1 名词解释
数据库安全性 用户标识 存取控制机制 数据库角色 事务 并发操作 封锁 X锁 PX协议 PXC协议 S锁 PS协议 PSC协议 活锁 饿死 死锁
串行调度 并发调度 可串行化调度 两段封锁协议 约束 规则 更新锁(U锁) 完整数据库备份 差异数据库备份 事务日志备份 文件组备份 答:
数据库安全性:数据库的安全性就是指数据库中数据的保护措施,一般包括的登陆的身份验证管理、数据库的使用权限管理和数据库中对象的使用权限管理三种安全性保护措施。
用户标识:用户标识是系统提供的最外层安全保护措施。其方法是由系统提供一定的方式让用户标识自己的名字或身份。每次用户要求进入系统时,由系统进行核对,通过鉴定
第22页
后才提供机器使用权。
存取控制机制:存取控制机制主要包括两部分:定义用户权限,并将用户权限登记到数据字典中;合法权限检查,每当用户发出存取数据库的操作请求后(请求一般应包括操作类型、操作对象和操作用户等信息),DBMS查找数据字典,根据安全规则进行合法权限检查,若用户的操作请求超出了定义的权限,系统将拒绝执行此操作。
数据库角色:数据库角色是被命名的一组与数据库操作相关的权限,角色是权限的集合。可以为一组具有相同权限的用户创建一个角色,使用角色来管理数据库权限可以简化授权的过程
事务:事务是构成单一逻辑工作单元的操作集合。
并发操作:在多用户共享系统中,许多事务可能同时对同一数据进行操作,这种操作称为并发操作。
封锁:封锁是系统保证对数据项的访问以互斥方式进行的一种手段。
X锁:事务T对某数据加了X锁后,其他事务要等T解除X锁后,才能对这个数据进行封锁。
PX协议:只有获准X锁的事务,才能修改数据,否则这个事务进入等待状态。 PXC协议:PX协议再加上一条规则:“X锁必须保留到事务终点才能解除”。 S锁:事务T对某数据加了S锁后,仍允许其他事务再对该数据加S锁,但在对该数据的所有S锁都解除之前决不允许任何事务对该数据加X锁。
PS协议:只有获准X锁的事务,才能修改数据,否则这个事务进入等待状态。
PSC协议:PX协议再加上一条规则:“X锁必须保留到事务终点才能解除”。
活锁:系统可能使某个事务永远处于等待状态,得不到封锁的机会,这种现象称为“活锁”。
饿死:若干事务连续不断地对某数据实现加S锁和释放S锁的操作,那么若有一个事务欲对该数据加X锁,将永远轮不上封锁的机会。这种现象称为“饿死”。
死锁:若干事务都处于等待状态,相互等待对方解除封锁,结果造成这些事务都无法继续执行,这种现象称为系统进入了“死锁”状态。
串行调度:多个事务依次执行,称为事务的串行调度。
并发调度:利用分时的方法,同时处理多个事务,则称为事务的并发调度。
可串行化调度:如果一个并发调度的执行结果与某一串行调度的执行结果等价,那么这个并发调度称为“可串行化的调度”。 两段封锁协议:事务分成两个阶段,前一阶段只能申请封锁,后一阶段只能释放封锁,这一规则称为事务的两段封锁协议。
约束:约束是Microsoft SQL Server提供的自动保持数据库完整性的一种方法,它定义了可输入表或表的单个列中的数据的限制条件。它是用来维护关系数据中数据的正确性和一致性、保证数据库完整性的必要条件。
规则:规则是数据库中对存储在表的列或用户定义数据类型中值的规定和限制。规则同默认值一样,也是单独存储的独立数据库对象。规则与其作用的表或用户定义数据类型是相互独立的,即表或用户定义数据类型的删除、修改不会对与之相连的规则产生影响。
更新锁(U锁):当一个事务查询数据以便进行修改时,可以对数据项施加更新锁,如果事务修改资源,则更新锁会转换成排他锁,否则会转换成共享锁。一次只有一个事务可以获得资源上的更新锁,它允许其他事务对资源的共享式访问,但阻止排他式的访问。 完整数据库备份:完整数据库备份就是备份整个数据库。它备份数据库文件、这些文件的地址以及事务日志的某些部分(从备份开始时所记录的日志顺序号到备份结束时的日志顺序号)。
第23页
差异数据库备份:差异数据库备份是指将从最近一次完全数据库备份以后发生改变的数据进行备份。如果在完整备份后将某个文件添加至数据库,则下一个差异备份将会包括该新文件。这样可以方便地备份数据库,而无须了解各个文件。
事务日志备份:事务日志备份就是自从上一个事务以来已经发生了变化的部分。事务日志备份比完整数据库备份节省时间和空间,而且利用事务日志备份进行恢复时,可以指定恢复到某一个事务。
文件组备份:文件组备份就是对数据库中的部分文件或文件组进行备份。文件组是一种将数据库存放在多个文件上的方法,并允许控制数据库对象(比如表或视图)存储到这些文件当中的某些文件上。
7-2 试叙述事务的四个性质,并解释每一个性质由DBMS的哪个子系统实现?每一个性质对DBS有什么益处?
答:① 事务的原子性,是指一个事务对DB的所有操作,是一个不可分割的工作单元。原子性是由DBMS的事务管理子系统实现的。事务的原子性保证了DBS的完整性。
② 事务的一致性,是指数据不会因事务的执行而遭受破坏。事务的一致性是由DBMS的完整性子系统实现的。事务的一致性保证数据库的完整性。
③事务的隔离性,是指事务的并发执行与这些事务单独执行时结果一样。事务的隔离性是由DBMS的并发控制子系统实现的。隔离性使并发执行的事务不必关心其他事务,如同在单用户环境下执行一样。
④事务的持久性,是指事务对DB的更新应永久地反映在DB中。持久性是由DBMS的恢复管理子系统实现的。持久性能保证DB具有可恢复性。
7-3 设有两个关系模式:
职工(职工号,姓名,年龄,职务,工资,部门号) 部门(部门号,名称,经理名,地址,电话号)
请用SQL的GRANT和REVOKE语句完成以下授权定义: ⑴ 用户王明对两个表有SELECT权限;
⑵用户李勇对两个表有INSERT和DELETE权限; ⑶ 每个职工只对自己的记录有SELECT权限;
⑷ 用户刘星对职工表有SELECT权限,对工资字段具有更新权限; ⑸ 撤销各用户所授予的权限。 解:
⑴ GRANT SELECT ON TABLE 职工,部门 TO 王明
⑵ GRANT INSERT,DELETE ON TABLE 职工,部门 TO 李勇
⑶ GRANT SELECT ON 职工 WHEN USER()=NAME TO ALL
⑷ GRANT SELECT,UPDATE(工资) ON TABLE 职工
TO 刘星
⑸ ① 撤销用户王明对两个表有SELECT权限; REVOKE SELECT ON 职工,部门
第24页
共分享92篇相关文档