全国计算机四级通过率:2010年全国计算机四级数据库工程师笔试设计与应用真题

副标题:2010年全国计算机四级数据库工程师笔试设计与应用真题

时间:2023-06-04 06:06:01 阅读: 最新文章 文档下载
说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

  三、设计与应用题

  (1)设有某简化的网上购物系统,其ER图如下:

  该系统数据之间存在下列约束:

  Ⅰ. 一个客户(编号)可以拥有多个订单,每个订单仅属于一个客户;

  Ⅱ. 一个订单(编号)可以包含多个订购细目,每个订购细目只属于一个订单;

  Ⅲ. 一种商品可以出现在多个订购细目中,一个订购细目只包含一种商品;

  Ⅳ. 一个商品类别可以包含多种商品,一种商品只属于一个商品类别。

  ① 请根据以上约束,标出ER图中各实体集之间联系的基数。(2分)

  ② 请将ER图转换成符合3NF的关系模式,并给出各关系模式的主码和外码。(4分)

  ③ 请修改所设计的关系模式使之支持下列功能(仅列出发生修改的关系模式)。(4分)

  Ⅰ. 使客户能方便了解每个订购细目的处理状态和到货时间;

  Ⅱ. 使客户能方便查询商品供应商的编号、名称、所在城市、联系电话和信誉。(限定一个供应商可以供应多种商品,一种商品只选自一个供应商)

  (2)某学校的学籍管理系统实现了对学生学籍信息的管理,其中学生表结构为:学生表(学号, 姓名, 性别, 系号, 是否有学籍),此表中除学号列有索引外,其它列均无索引。

  ①设学籍管理系统中经常执行如下形式的操作:

  SELECT*FROM学生表

  WHERE姓名='张三' AND 系号='10' AND 是否有学籍='有'

  系统运行中发现这类操作的效率比较低,系统工程师建议:由于查询条件中使用了“系号”、“姓名”和“是否有学籍”三列,建议在这三个列上分别建立索引,以提高查询效率。

  请问其建议建立的三个索引是否都能提高查询效率?请简要说明原因。

  ②设学生表中有下列数据:

  并且已经在学生表的姓名列上建立了一个非聚集索引(按姓名拼音升序排序)。请给出查找码“姓名”对应的稠密索引示意图。(4分)

  (3)在SQL Server 2000中,设有教师表(教师号, 姓一名, 所在部门号, 职称)和部门表(部门号, 部门名, 高级职称人数)。请编写满足下列要求的后触发型触发器(设触发器名字为tri_zc)。(10分)

  每当在教师表中插入一名具有高级职称(“教授”或“副教授”)的教师时,或者将非高级职称教师的职称更改为高级职称时,均修改部门表中相应部门的高级职称人数。(假设一次操作只插入或更改一名教师的职称

2010年全国计算机四级数据库工程师笔试设计与应用真题.doc

本文来源:https://www.wddqw.com/u0fn.html