当前位置:文档之家› 北大 数据库设计与实践 作业 参考答案

北大 数据库设计与实践 作业 参考答案


系统为每篇论文分配一个唯一的标识符,并且通过标题、摘要以及包含此 论文的电子文件名来描述。
一篇论文可能有多个作者,但是其中的一个作者被设计作为联系作者。 论文的评委由电子邮件地址唯一标识。同时记录每名审稿人的名、姓、电
话号码、附属关系,以及所关心的主题。 每篇论文分配给两到四个评委。评委按照送审论文的技术特点、可读性、
题目二: 1. 考虑研究人员提交他们的研究论文的 CONFERENCE_REVIEW 数据库。 审稿人的评审意见在论文的评审过程中都要保留下来,已备选择论文时参 考。数据库为审稿人提供了最基本的服务,审稿人为每篇论文记录评估问 题的答案,并对这篇论文提出接受或拒绝的建议。数据需求总结如下: 论文的作者由电子邮件唯一标识。论文的作者的姓和名也同时被记录。
其差即为所求校验码的值。
设计函数 CheckIDCode(ID_code),计算身份证的校验码。 身份证前 17 位是本体码,最后一位是校验码,它的生成过程如下: 一、对前 17 位数字本体码加权求和: S = SUM ( Ai *Wi ),i = 1,2,2,17 ,其中 Ai 表示第 i
位置上的身份证号码数字值,Wi 表示第 i 位置上的加权因子,依次为 7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2。
实习一:ER 设计
题目一: 已知有如下关系模式:E1(a1, a2, a3),E2(a3, a4),E3(a5, a6),E4(a3, a5, a7),
其中带下划线的属性标识为所在关系模式的主码。试画出相应的 E-R 图,使 得可以从该 E-R 图推导出上述关系模式。 注:以下设计题目中的 er 图均需要用数据建模工具 ERWin 来完成设计 (把设 计好的 ER 图粘贴到 word 文档中)。
创新性以及论文主题与会议的相关性这四个原则,对分配给他的论文在 1~10 这 10 个等级范围内进行分级。最后每个评委对每篇论文做出总的评 价。 每个评审包括两个书面意见:一个是仅供评委委员会参考的,另一个是反 馈给作者的。
参考答案二:
2. 下面是一张采购订单的票据,根据上面列出的信息,给出其实体联系模型。
实习五:关系规范化
(答案参见“实习五参考作业.pdf”)
• 题目一:
R(ABCDE), F = {AB→C, B→D, C→E, CE→B, AC→B}。 – 给出其候选码 – 判断范式级别 – 分别给出保持无损连接和函数依赖的分解
• 题目二:
R(ABCDE), 给出下面函数依赖集在 S(ABCD)上的投影。 – F={AB → D,AC → E,BC → D,D → A, E → B}
题目三: 现在安排你来设计一个学校的信息管理系统。请仔细考察学校的各个部门
活动(至少三个部门),类似图书馆、院系、后勤、体育馆等,给出学校 ER 的设计图。 (只要自圆其说即可,略)
实习二:关系代数
S(SNO, SNAME, STATUS, CITY) P(PNO, PNAME, COLOR, WEIGHT, CITY) J(JNO, JNAME,CITY) SPJ(SNO, PNO, JNO, QTY) S 表示供应商,各属性依次为供应商号,供应商名,供应商状态值,供应商所在城市; P 表示零件,各属性依次为零件号,零件名,零件颜色,零件重量,零件存放的城市; J 表示工程,各属性依次为工程号,工程名,工程所在城市; SPJ 表示供货关系,各属性依次为供应商号,零件号,工程号,供货数量。 试用关系代数完成下面查询
实现一个触发器,每当插入一条记录,检查是否可以成交,成交的条件是买入价大于等 于卖出价,并且最老的标的优先成交。成交时如果一方(A)的标的数量小于另一方(B),则从 表中删除 A 的记录,保留 B 的记录并且修改 B 的标的数量。同时要求显示成交的相关信息, 包括成交的买卖方、股票号、价格、数量以及时间等。
6. 求供应了所有红色零件的供应商姓名。
7. 求最大的 QTY 值。 8. 列出恰好供应了相同零件的供应商对。Fra bibliotek习三:基本 SQL
安装 AdventureWorks2012_Database,基于该数据库自己设计至少 10 个查询,要求覆盖各种查询类型,同时把查询结果也粘贴到作业 文档中。(自圆其说即可,略)
OrderChar(‘database’)=aaabdest GroupChar(‘datadata’)={(a,4),(d,2),(t,2)}
(三) 下面两个函数二选一实现 设计函数 CheckBarCode(bar_code),计算条形码的校验码。 下面是条形码的校验码的计算过程(位置序号由右至左,校验码位置序号为 1): 一、从条形码位置序号 2 开始,所有偶数位的数字码求和。 二、将步骤一的和乘以 3。 三、从条形码位置序号 3 开始,所有奇数位的数字码求和。 四、将步骤二与步骤三的结果相加。 五、用大于或等于步骤四所得结果且为 10 最小整数倍的数减去步骤四所得结果,
二、计算模:Y = MOD(S, 11) 。 三、通过模得到对应的校验码,Y = 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,分别对应着校验码 1, 0, X, 9, 8, 7, 6, 5, 4, 3, 2。
3. 触发器
StockBid(stock_id, cust_id, flag, date, price, amount), 存储股票买入和卖出的标的,分别 代表股票号,客户号,flag 用来标识是买入还是卖出,标的日期,标的价格,以及标的数量。
实习四:存储过程、函数、触发器
(参见“实习四参考作业.pdf”)
1. 存储过程
(一)要求:创建一个 delete_one 存储过程,每次它删除表 T 中重复元组中的一个。例如 假定表 T={1, 2, 2, 3, 3, 3, 4, 4, 4, 4};对其执行一次 delete_one,T={2, 3, 3, 4, 4, 4}, 再执行一次 delete_one,T={3, 4, 4}。
(二)编写存储过程 MySum(n),计算从 1 到 n 的和,要求 n 不超过 30,利用递归来实现, 也即 MySum(n)= MySum(n-1)+n, MySum(1)=1。
2. 用户定义函数
(一) 设计函数 IntersectDistinct()以及 IntersectAll(),计算表 R(A)和 S(A)之间的交。 (二) 设计函数 OrderChar(string)或者 GroupChar(),它们各自的功能如下:
• 题目三:
分别写出关系代数和 SQL 语句,验证关系 R(ABC)上 A→B 和 A→→B 是否成立。
1. 求没有供应 p1 和 p2 两种零件的供应商姓名。
2. 列出所有供应商的信息,包括供应商姓名、所供应的零件名(没有供应零件的供应 商也要列出,最后结果中不要出现重复元组)
3. 求只向与自己位于不同城市的工程供应零件的供应商姓名。
4. 求只向与自己位于相同城市的工程供应零件的供应商姓名。
5. 求供应了所有零件的供应商姓名。
相关主题