【计算机类职业资格】中级数据库系统工程师下午试题-5及答案解析.doc
《【计算机类职业资格】中级数据库系统工程师下午试题-5及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】中级数据库系统工程师下午试题-5及答案解析.doc(11页珍藏版)》请在麦多课文档分享上搜索。
1、中级数据库系统工程师下午试题-5 及答案解析(总分:66.00,做题时间:90 分钟)一、试题一(总题数:1,分数:15.00)说明 某大型的产品售后服务机构计算机管理中需要如下的信息: 部门 (部门名,所处地点,部门电话,员工姓名) 柜台 (柜台号,维修产品,所属的部门) 员工 (姓名,工龄,所属部门,年龄,工作证号) 顾客 (服务记录号,姓名,性别,购买产品,接待员工,柜台号) 其中,一个部门可以拥有多个柜台,多名员工,一个柜台只能属于一个部门,一个员工只能属于一个部门,但是可以为多个顾客服务,一个顾客的接待员工只有一个。 完成如下设计:(分数:15.00)(1).问题 1 设计该计算机管
2、理系统的 E-R 图。(分数:5.00)_(2).问题 2 将该 E-R 图转换为关系模型结构。(分数:5.00)_(3).问题 3 指出转换结果中每个关系模式的候选码。(分数:5.00)_二、试题二(总题数:1,分数:15.00)【说明】 某论坛的部分关系模式如下: 用户(用户编号,账号,密码,积分,级别) 栏目(栏目编号,父栏目编号,名称,版主,描述) 主题(主题编号,标题,类型,点击率,内容,发布时间,栏目编号,用户编号,附件) 回复主题(回复主题编号,标题,主题编号,内容,发布时间,用户编号,附件) 其中: (1)用户编号唯一标识一个用户。用户的积分根据其发布的主题信息按积分规则计算。
3、级别的值来自集合高级用户,普通用户,初级用户,当用户开始注册时,积分为 100,级别为初级用户;当用户积分到达 1000 时,级别为普通用户;当用户积分到达 5000 时,级别为高级用户。 (2)栏目编号唯一标识一个栏目。栏目分两级,包括父栏目和子栏目。每个栏目必须有且仅有一个版主,版主是一个用户。 (3)主题编号唯一标识一个主题。类型的值来自集合精华,置顶,普通。 (4)回复主题编号唯一识别一个回复主题。一个回复主题对应一个主题,而一个主题可以有多个回复主题。(分数:15.00)(1).【问题 1】 请将下列 SQL 语句的空缺部分补充完整。 (1)假设已经创建好用户关系,现在想增加一个属性
4、“个性签名”,类型为 VARCHAR(60),请给出相关的SQL 语句。 _a._ ; (2)假设已经创建好用户关系,下面是创建栏目关系的 SQL 语句,请将空缺部分补充完整。 CREATE TABLE 栏目( 栏目编号 VARCHAR(8) PRIMARY KEY, 父栏目编号 VARCHAR (8), 名称 VARCHAR(40), 版主 VARCHAR(8) NOT NULL, 描述 VARCHAR(100), _b._ , _c._ ,(分数:3.75)_(2).【问题 2】 请将下列 SQL 语句的空缺部分补充完整。 (1)查询标题或内容包含“SQL”的主题标题,按发布时间降序排序。
5、 SELECT DISTINCT 标题 FROM 主题 _(d)_ _(e)_ ; (2)查找名称为“数据库技术”的栏目及其子栏目中的精华主题的标题和点击率。 SELECT 标题,点击率 FROM 主题 WHERE 类型=“精华“ AND 栏目编号 _(f)_ (SELECT 栏目编号 FROM 栏目 WHERE 名称=“数据库技术“ _(g)_ SELECT 栏目编号 FROM 栏目 WHERE _(h)_ (SELECT 栏目编号 FROM 栏目 WHERE 名称=“数据库技术“);(分数:3.75)_(3).【问题 3】 假设所有关系模式已创建,回复主题关系模式的“主题编号”是外键,参照
6、主题关系模式的“主题编号”。现在要删除编号为“T005”的主题及其相关的回复主题,下面是对应的删除语句,这些语句组成一个事务。DELETE 主题 WHERE 主题编号=T005; DELETE 回复主题 WHERE 主题编号=T005; (1)请问这些删除语句能否完成功能?若不能,请说明为什么? (100 字以内) _(i)_ (2)假设现在希望仅通过“DELETE 主题 WHERE 主题编号=T005;”这一条语句就能完成此删除功能,应如何实现? (100 字以内) _(j)_(分数:3.75)_(4).【问题 4】 为了了解每个栏目用户关注的主题,对原创主题创建视图主题 view,属性包括
7、主题编号、标题、用户账号、栏目名称、回复数、点击率和发布时间。 CREATE VIEW 主题 view(主题编号,标题,用户账号,栏目名称,回复数,点击率,发布时间)As SELECT 主题主题编号,标题,账号,名称,回复数,点击率,发布时间 FROM 主题,用户,栏目,( _(k)_ FROM 回复主题 _(l)_ )As A WHERE 主题用户编号=用户用户编号 AND 主题栏目编号=栏目栏目编号 AND _(m)_(分数:3.75)_三、试题三(总题数:1,分数:20.00)现有这样一个关系,用来表示某工厂工人家庭的信息。记录每个工人的工作证号、姓名和家庭住址,还包含他/她的每个孩子的
8、身份证号、姓名和年龄,以及他她所拥有的每部电话的电话号码和型号。 已知:有一些人可能有很多部电话,这些电话可能是同一型号,也可能不是同一型号;有一些人没有电话;如果某人有电话,他的每部电话都有一个电话号码。有一些人可能有很多个孩子,有一些人没有孩子。 初步设计的关系模式如下:R(身份证号,姓名,家庭住址,H 身份证号,H 姓名,H 年龄,电话号码,型号),其中“H 身份证号,H 姓名,H 年龄”分别是孩子的身份证号、姓名和年龄。(分数:20.00)(1).问题 1 请将该关系模式分解成第二范式的关系模式,确定主关系键。(分数:5.00)_(2).问题 2 请将该关系模式分解成第三范式的关系模式
9、,确定主关系键。(分数:5.00)_(3).问题 3 请将该关系模式分解成 BCNF 的关系模式,确定主关系键。(分数:5.00)_(4).问题 4 请简要说明各范式之间的关系。(文字和图标形式皆可)(分数:5.00)_四、试题四(总题数:1,分数:1.00)1.【问题 3】 (1)部门关系模式存在什么问题?请用 100 字以内的文字阐述原因。为了解决这个问题可将关系模式分解,分解后的关系模式的关系名依次取部门_A、部门_B、 (2)假定月工作业绩关系模式为:月工作业绩(职员代码,年月,工作时间),请给出“杳询职员代码、职员名、年月、月工资”的 SQL 语句。 (分数:1.00)_五、试题五(
10、总题数:1,分数:15.00)阅读下列说明,根据要求回答问题。 说明 某银行的转账业务分为如下两类操作。 (1)读取账户 A 余额到变量 x,记为 x=R(A)。 (2)将变量 x 值写入账户 A 中的余额,记为 W(A,x)。 从账户 A 向账户 B 转账金额 x 元的伪代码操作序列为:a=R(A),a=a-x,W(A,a),b=R(B),b=b+x,W(B,b)。 针对上述业务及规则,完成下列问题。(分数:15.00)(1).根据业务规则,转账业务要么被全部执行,要么全部不执行,应如何保障? 假设参与转账的账户余额有大于等于 0 的约束,上述伪代码执行中可能出现什么情况?应如何处理?请用1
11、00 字以内的文字进行阐述。(分数:5.00)_(2).若允许对同一账号同时进行转账,要保证转账程序的并发执行,引入共享锁指令 SLock(b)和独占锁指令 xLock(A)对数据 A 进行加锁,解锁指令 Unlock(A)对数据 A 进行解锁。 请补充上述转账业务的伪代码序列,使其满足 2PL 协议。(分数:5.00)_(3).若用 SQL 语句编写的转账业务事务程序如下。 START TRANSACTION; SET TRANSACTION ISOLATION LEVEL SERIALIZABLE UPDATE Accounts SET CurrentBalance=CurrentBala
12、nce - Amount WHERE AccountID=A; if error then ROLLBACK; COMMIT; UPDATE Accounts SET CurrentBalance=CurrentBalance + Amount WHERE AccountID=B; if error then ROLLBACK; CONMIT; 其中:Accounts 为账户表,CurrentBalance 为当前余额,Amount 为新存入的金额。 该事务程序能否保证数据的一致性?如不能,请说明原因并改正。请用 100 字以内的文字进行阐述。(分数:5.00)_中级数据库系统工程师下午试题-
13、5 答案解析(总分:66.00,做题时间:90 分钟)一、试题一(总题数:1,分数:15.00)说明 某大型的产品售后服务机构计算机管理中需要如下的信息: 部门 (部门名,所处地点,部门电话,员工姓名) 柜台 (柜台号,维修产品,所属的部门) 员工 (姓名,工龄,所属部门,年龄,工作证号) 顾客 (服务记录号,姓名,性别,购买产品,接待员工,柜台号) 其中,一个部门可以拥有多个柜台,多名员工,一个柜台只能属于一个部门,一个员工只能属于一个部门,但是可以为多个顾客服务,一个顾客的接待员工只有一个。 完成如下设计:(分数:15.00)(1).问题 1 设计该计算机管理系统的 E-R 图。(分数:5
14、.00)_正确答案:()解析:E-R 如下所示: (2).问题 2 将该 E-R 图转换为关系模型结构。(分数:5.00)_正确答案:()解析:对应的关系模型结构如下: 部门 (部门名,所处地点,部门电话) 柜台 (柜台号,维修产品,部门名) 员工 (姓名,工龄,所属部门,年龄,工作证号) 顾客 (服务记录号,姓名,性别,购买产品,接待员工,柜台号)(3).问题 3 指出转换结果中每个关系模式的候选码。(分数:5.00)_正确答案:()解析:对应的每个关系模型的候选码如下: 部门的候选码是部门名 柜台的候选码是柜台号+部门名 员工的候选码是工作证号 顾客的候选码是服务记录号二、试题二(总题数:
15、1,分数:15.00)【说明】 某论坛的部分关系模式如下: 用户(用户编号,账号,密码,积分,级别) 栏目(栏目编号,父栏目编号,名称,版主,描述) 主题(主题编号,标题,类型,点击率,内容,发布时间,栏目编号,用户编号,附件) 回复主题(回复主题编号,标题,主题编号,内容,发布时间,用户编号,附件) 其中: (1)用户编号唯一标识一个用户。用户的积分根据其发布的主题信息按积分规则计算。级别的值来自集合高级用户,普通用户,初级用户,当用户开始注册时,积分为 100,级别为初级用户;当用户积分到达 1000 时,级别为普通用户;当用户积分到达 5000 时,级别为高级用户。 (2)栏目编号唯一标
16、识一个栏目。栏目分两级,包括父栏目和子栏目。每个栏目必须有且仅有一个版主,版主是一个用户。 (3)主题编号唯一标识一个主题。类型的值来自集合精华,置顶,普通。 (4)回复主题编号唯一识别一个回复主题。一个回复主题对应一个主题,而一个主题可以有多个回复主题。(分数:15.00)(1).【问题 1】 请将下列 SQL 语句的空缺部分补充完整。 (1)假设已经创建好用户关系,现在想增加一个属性“个性签名”,类型为 VARCHAR(60),请给出相关的SQL 语句。 _a._ ; (2)假设已经创建好用户关系,下面是创建栏目关系的 SQL 语句,请将空缺部分补充完整。 CREATE TABLE 栏目(
17、 栏目编号 VARCHAR(8) PRIMARY KEY, 父栏目编号 VARCHAR (8), 名称 VARCHAR(40), 版主 VARCHAR(8) NOT NULL, 描述 VARCHAR(100), _b._ , _c._ ,(分数:3.75)_正确答案:()解析:(1)(a)ALTER TABLE 用户 ADD 个性签名 VARCHAR(60); (2)(b)FOREIGN KEY(父栏目编号)REFERENCES 栏目(栏目编号) (c)FOREIGN KEY(版主)REFERENCES 用户(用户编号)(2).【问题 2】 请将下列 SQL 语句的空缺部分补充完整。 (1)查
18、询标题或内容包含“SQL”的主题标题,按发布时间降序排序。 SELECT DISTINCT 标题 FROM 主题 _(d)_ _(e)_ ; (2)查找名称为“数据库技术”的栏目及其子栏目中的精华主题的标题和点击率。 SELECT 标题,点击率 FROM 主题 WHERE 类型=“精华“ AND 栏目编号 _(f)_ (SELECT 栏目编号 FROM 栏目 WHERE 名称=“数据库技术“ _(g)_ SELECT 栏目编号 FROM 栏目 WHERE _(h)_ (SELECT 栏目编号 FROM 栏目 WHERE 名称=“数据库技术“);(分数:3.75)_正确答案:()解析:(1)(d
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 中级 数据库 系统 工程师 下午 试题 答案 解析 DOC
