读者借阅书籍产生新的关系“借阅RB”;
一个出版社可以出版多本书籍,一本书籍只能由一个出版社出版;
关系模式如下:
R(Rid, Rname, RIDcard, Rphone), 属性分别表示:读者编号,读者姓名,读者×××号,读者电话;
B(Bid, Bname, Bauthor, BpublishDate, Bprice, Pid),属性分别表示:书籍编号,书籍名称,作者,出版日期书籍价格,出版社编号;
P(Pid, Pname),属性分别表示:出版社编号,出版社名称;
RB(RBid, Rid, Bid, RBborrowDate, RBstate),属性分别表示:借阅编号,读者编号,书籍编号,借阅日期,借阅状态;
1. 为了提高查询速度,需要在RB表上通过Rid和Bid两个字段建立一个索引,索引名IX_RB,请写出创建此索引的SQL语句。
2. 为了方便查询出读者,书籍和借阅表的数据,请通过关系R,B和RB三个关系做内连接操作,创建一个视图,视图名为VIEW_RB,请写出创建此视图的SQL语句。
3. 通过VIEW_RB查询出被借阅次数超过(包括)100次的书籍名称。(在书籍B中Bname属性值是唯一的)
4. 查询出有借阅过书籍编号为’B<?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" />001’号和’B002’号两本书的读者姓名和读者电话
5. 查询出书籍名称中包含有‘数据库’三个字符的所有书籍名称和作者
6. 请把读者编号为‘R012’的读者电话修改为‘0123-12345678’。
7. 查询出‘福建出版社’出版的价格最贵的3本书的书籍名称和书籍价格。
59.设有关系R(V,W,X,Y,Z),各个属性的函数依赖集合有F={WX→Y, Z→V, X→Z},问:(1+1+4分)
1.关系R的候选码是什么?
2.关系R的范式等级是什么?
3.关系R是否达到3NF?如果没有,请把关系R进行分解,使分解后的关系达到3NF,写出分解后的关系。
60.使用关系代数描述下列查询:(关系数据库模式同第30题(3+3+3分))
1.查询出借阅状态为‘借出’的书籍名称。
2.查询出‘张三’所借阅过的所有书籍的名称。
3.查询出有借阅过书籍编号为‘B003’,但没有借阅过书籍编号为‘B009’书籍的读者姓名和读者电话。
61.某商业集团的数据库有如下四个基本表:(本大题25分)
商店表:A(ANO,ANAME,ADDR),属性分别为:商店号,商店名,地址;
职员表:B(BNO, BNAME, SEX, AGE, ANO, SALARY)其属性分别为:职员编号,姓名,性别,年龄,商店号,工资;
商品表:C(CNO, CNAME, PRICE)其属性分别为:商品号,商品名,单价;
销售表:D(ANO, CNO,QUANTITY)属性分别为:商店号,商品号,销售数量。
1. 查询性别是‘W’的职员的姓名,年龄,工资;
2. 查询工资在3000元(含3000元)以上的职员的姓名,商店名;
3. 查询销售总量前十名的商店号及销售总量;
4. 查询没有销售“光盘”记录的商店名称
5. 将职员编号为“012”的工资在原有的基础上增加15%
6. 给销售表添加一个销售时间DATET字段;
7. 在商店表中,创建一个名为VIEW_1的视图,实现查询商店地址为以“FU”打头的商店名,地址
62.设有关系R(A, B, C, D, E),各属性的函数依赖集合有F={AB→C,B→D,D→E},问:(1+2+3分)
1.关系R的候选键是什么?
2.若将关系R分解成R1(A, B, C)及R2(B, D, E),请分别写出关系R1和R2的范式等级。
3.将关系R分解到3NF
63.使用关系代数描述下列查询:(关系数据库模式同29题)(3+3+3分)
1.查询出年龄在20到30之间的职员的姓名,性别;
2.查询出销售数量大于5件的商品名及单价;
3.查询出商店名为“BAIAI”销售的商品的商品号和商品名.
转载于:https://blog.51cto.com/qianshao/255583