本题用到下面三个关系表:CARD 借书卡。 CNO 卡号,NAME 姓名,CLASS 班级BOOKS 图书。 BNO 书号,BNAME 书名,AUTHOR 作者,PRICE 单价,QUANTITY 库存册数BORROW 借书记录。 CNO 借书卡号,BNO 书号,RDATE 还书日期备注:限定每人每种书只能借一本;库存册数随借书、还书而改变。要求实现如下15个处理:1.找出借书超过5本的读者,输出借书卡号及所借图书册数。(2分)2.查询借阅了"水浒"一书的读者,输出姓名及班级。(3分)3.查询过期未还图书

题目

本题用到下面三个关系表:

CARD 借书卡。 CNO 卡号,NAME 姓名,CLASS 班级

BOOKS 图书。 BNO 书号,BNAME 书名,AUTHOR 作者,PRICE 单价,QUANTITY 库存册数

BORROW 借书记录。 CNO 借书卡号,BNO 书号,RDATE 还书日期

备注:限定每人每种书只能借一本;库存册数随借书、还书而改变。

要求实现如下15个处理:

1.找出借书超过5本的读者,输出借书卡号及所借图书册数。(2分)

2.查询借阅了"水浒"一书的读者,输出姓名及班级。(3分)

3.查询过期未还图书,输出借阅者(卡号)、书号及还书日期。(3分)

4.查询书名包括"网络"关键词的图书,输出书号、书名、作者。(2分)

5.查询现有图书中价格最高的图书,输出书名及作者。(2分)

6.查询当前借了"计算方法"但没有借"计算方法习题集"的读者,输出其借书卡号,并按卡号降序排序输出。(4分)

7.将"C01"班同学所借图书的还期都延长一周。(2分)

8.从BOOKS表中删除当前无人借阅的图书记录。(2分)

9.在BORROW表上建立一个触发器,完成如下功能:如果读者借阅的书名是"数据库技术及应用",就将该读者的借阅记录保存在BORROW_SAVE表中(注ORROW_SAVE表结构同BORROW表)。(4分)

10.建立一个视图,显示"力01"班学生的借书信息(只要求显示姓名和书名)。(3分)

11.查询当前同时借有"计算方法"和"组合数学"两本书的读者,输出其借书卡号,并按卡号升序排序输出。(3分)

如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

图书馆数据库系统中有下列模式:书(书号,类别,书名,出版社,年份,作者,价格,总藏书量,现有库存)借书卡(卡号,姓名,单位,类别)借书记录(卡号,书号,借期,还期)其中关系书和关系借书卡的主键分别为书号和卡号,关系借书记录的主键为()。

A.卡号,书号

B.书号,借期

C.卡号,书号,借期

D.卡号,借期


正确答案:A

第2题:

对“图书借阅管理”数据库中的表借阅、loans和图书,建立文件名为myf的表单,标题为“图书借阅浏览”,表单上有三个命令按钮“读者借书查询”、“书籍借出查询”和“关闭”。

单击“读者借书查询”按钮,查询出02年3月中旬借出的书的所有的读者的“姓名”、“借书证号”和“图书登记号”,同时将查询结果保存在表new中。

单击“书籍借出查询”按钮,查询借“数据库原理与应用”一书的所有读者的“借书证号”和“借书日期”,结果中含“书名”、“借书证号”和“日期”字段,同时保存在表new2中。单击“关闭”按钮关闭表单。


正确答案:在命令窗口中输入命令:CREATE FORM myf打开表单设计器通过“表单控件”工具栏向表单添加3个命令按钮。在属性面板中修改表单的Caption属性值“图书借阅浏览”修改3个命令按钮控件的 Caption属性值分别为“读者借书查询”、“书籍借出查询”和“关闭”。 双击各命令按钮分别编写各控件的Click事件代码: ******命令按钮Command1(读者借书查询)的Click事件代码***** SELECT姓名借阅.借书证号loans.图书登记号; FROM loans图书借阅; WHERE loans图书登记号=图书.图书登记号 AND loans.借书证号=借阅.借书证号; AND MONTH(借书日期)=3; AND DAY(借书日期)>=10; AND DAY(借书日期)=20; INTO TABLE new1 **************************************************** ******命令按钮Command2(书籍借出查询)的Click事件代码***** SELECT 书名借书证号借书日期; FROM loans图书; WHERE loans.图书登记号=图书.图书登记号; AND 书名=“数据库原理与应用”; INTO TABLE new2 ************************************************************* ******命令按钮Command3(关闭)的Click事件代码***** Thisform.Release **************************************************** 保存表单完成设计运行表单结果如图3-36所示。
在命令窗口中输入命令:CREATE FORM. myf,打开表单设计器,通过“表单控件”工具栏向表单添加3个命令按钮。在属性面板中修改表单的Caption属性值“图书借阅浏览”,修改3个命令按钮控件的 Caption属性值分别为“读者借书查询”、“书籍借出查询”和“关闭”。 双击各命令按钮,分别编写各控件的Click事件代码: ******命令按钮Command1(读者借书查询)的Click事件代码***** SELECT姓名,借阅.借书证号,loans.图书登记号; FROM loans,图书,借阅; WHERE loans,图书登记号=图书.图书登记号 AND loans.借书证号=借阅.借书证号; AND MONTH(借书日期)=3; AND DAY(借书日期)>=10; AND DAY(借书日期)=20; INTO TABLE new1 **************************************************** ******命令按钮Command2(书籍借出查询)的Click事件代码***** SELECT 书名,借书证号,借书日期; FROM loans,图书; WHERE loans.图书登记号=图书.图书登记号; AND 书名=“数据库原理与应用”; INTO TABLE new2 ************************************************************* ******命令按钮Command3(关闭)的Click事件代码***** Thisform.Release **************************************************** 保存表单完成设计,运行表单,结果如图3-36所示。 解析:本大题考查的是表单设计,在设计控件属性中,不要将控件的标题和名称属性弄混淆,名称属性是该控件的一个内部名称,而标题属性是用来显示的一个标签名称。程序部分属于SQL的简单联接查询。

第3题:

第 ( 30 ) 到第( 35 )题基于图书表、读者表和借阅表三个数据库表,它们的结构如下:

图书 ( 图书编号 , 书名 , 第一作者 , 出版社 ) :图书编号、书名、第一作者和出版社为 C 型字段,图书编号为主关键字;

读者 ( 借书证号 , 单位 , 姓名 , 职称 ) :借书证号、单位 、姓名、职称为 C 型字段,借书证号为主关键字;

借阅 ( 借书证号 , 图书编号 , 借书日期 . 还书日期 ) : 借书证号和图书 编号为 C 型字段 ,借 书日期和还书日期为 D 型字段,还书日期默认值为 NULL ,借书证号和图书编号共同构成主关键字 。

( 30 )查询第一作者为 “ 张三 ” 的所有书名及出版社,正确的 SQL 语句是

A ) SELECT 书名,出版社 FROM 图书 WHERE 第一作者=张三

B ) SELECT 书名,出版社 FROM 图书 WHERE 第一作者二 " 张三 "

C ) SELECT 书名,出版社 FROM 图书 WHERE " 第一作者 " =张三

D ) SELECT 书名,出版社 FROM 图书 WHERE " 第一作者 "=" 张三 "


正确答案:B

第4题:

一个简化的图书馆信息管理系统有以下功能:(1)借书:输入读者借书证,系统检查借书证是否有效;查阅借书文件,检查该读者所借图书是否超过10本,若已达10本,显示信息“已经超出借书数量”,拒借;未达10本,办理借书(检查库存、修改库存信息并将读者借书信息登入借书记录)(2)还书:输入书号和读者号,从借书记录中读出与读者有关的记录,查阅所借日期,如果超过3个月,作罚款处理。否则,修改库存信息与借书记录。(3)查询:可通过借书记录、库存信息查询读者情况、图书借阅情况及库存情况,打印各种统计表。请就以上系统功能画出分层的DFD图,并建立重要条目的数据字典


参考答案:

第5题:

阅读以下说明,回答问题1-3。

在图书馆数据库有三个基本表:书目表Cata(书号Cno、书名Cname、作者Cauthor、出版年Cdate、价格Cprice)、学生表Student(学号Sno、姓名Sname、性别Sgender、专业Sdept)和借书历史表Borrow(所借书号Cno、借书者学号Sno、借书日期Bbdate、还书日期Brdate)。

请用SQL语句来建立这三个基本表(请注意数据类型的选择)。


正确答案:CREATE TABLE Cata( Cno INT Cname CHAR(40) Cauthor CHAR(10) Cdate INT Cpriee float ); CREATE TABLE Student( Sno INT Shame CHAR(20) Sgendcr CHAR(2) Sdept CHAR(20) ); CREATE TABLE BORROW( Cno INT Sno INT Bbdate INT: Brdate INT。 );
CREATE TABLE Cata( Cno INT, Cname CHAR(40), Cauthor CHAR(10), Cdate INT, Cpriee float, ); CREATE TABLE Student( Sno INT, Shame CHAR(20), Sgendcr CHAR(2), Sdept CHAR(20), ); CREATE TABLE BORROW( Cno INT, Sno INT, Bbdate INT: Brdate INT。 );

第6题:

有如下SQL语句:

SELECT读者.姓名,读者.职称,图书.书名,借阅.借书日期;

FROM图书管理!读者,图书管理!借阅,图书管理!图书;

WHERE借阅.借书证号=读者.借书证号;

AND图书.总编号=借阅.总编号

其中WHERE子句中的“借阅.借书证号=读者.借书证号”对应的关系操作是( )。


正确答案:
内部联接(INNER JOIN)或联接(JOIN)【解析】连接查询是一种基于多个关系的查询。

第7题:

查询2011年被借过图书的书名、出版社和借书日期,正确的SQL语句是( )。

A.SELECT书名,出版社,借书日期FROM图书,借书记录 WHERE借书日期=2011 AND图书.索书号=借书记录.索书号

B.SELECT书名,出版社,借书日期FROM图书,借书记录 WHERE借书日期=YEAR(2011)AND图书.索书号=借书记录.索书号

C.SELECT书名,出版社,借书日期FROM图书,借书记录 WHERE图书.索书号=借书记录.索书号AND YEAR(借书日期)=2011

D.SELECT书名,出版社,借书日期FROM图书,借书记录 图书.索书号=借书记录.索书号AND WHERE YEAR(借书日期)=YEAR(2011)


正确答案:C
C。【解析】根据题干所要查询的字段为书名、出版社和借书日期,其中涉及的表为图书和借书记录表,其中用图书.索书号和借书记录.索书号进行连接,并且结束日期为2011,其中年要使用YEAR函数,所以答案选择C。

第8题:

对于图书管理数据库,查询0001号借书证的读者姓名和所借图书的书名。下面SQL语句正确的是______。 SELECT 姓名,书名 FROM 借阅,图书,读者 WHERE; 借阅,借书证号=“0001”AND;

A.图书.总编号=借阅.总编号AND读者.借书证号=借阅.借书证号

B.图书.分类号=借阅.分类号AND读者.借书证号=借阅.借书证号

C.读者.总编号=借阅.总编号AND读者.借书证号=借阅.借书证号

D.图书.总编号=借阅.总编号AND读者.书名=借阅.书名


正确答案:A
解析:题目的要求是查询0001号借书证的读者姓名和所借图书的书名。此时涉及三个表,读者、借阅和图书表,并且是一个多表查询的题目,其中读者表与图书表通过纽带表借阅表进行关联,本题所应该采用的SQL语句如下
  SELECT 姓名,书名 FROM 借阅,图书,读者;
  WHERE 借阅.借书证号="0001"AND;
  图书.总编号=借阅.总编号AND读者.借书证号=借阅.借书证号
  因此本题的正确答案应该是A。

第9题:

根据以下资料,回答下列各题: 基于图书表、读者表和借阅表三个数据库表,它们的结构如下: 图书(图书编号,书名,第一作者,出版社):图书编号、书名、第一作者和出版社为C型字段,图书编号为主关键字; 读者(借书证号,单位,姓名,职称):借书证号、单位、姓名、职称为C型字段,借书证号 为主关键字; 借阅(借书证号,图书编号,借书日期,还书日期):借书证号和图书编号为C型字段,借书日期和还书日期为D型字段,还书日期默认值为NULL,借书证号和图书证号共同构成主关键字。 查询第一作者为“张三”的所有书名及出版社,正确的SQL语句是( )。

A.SELECT书名,出版社FROM图书WHERE第一作者=张三

B.SELECT书名,出版社FROM图书WHERE第一作者="张三"

C.SELECT书名,出版社FROM图书WHERE"第一作者"=张三

D.SELECT书名,出版社FROM图书WHERE"第一作者"="张三"


正确答案:B
B。【解析】查询条件语句中字段名不能用引号,字段内容为C型的条件值需要用引号。

第10题:

对于图书管理数据库,查询0001号借书证的读者姓名和所借图书的书名。 SQL语句正确的是 ______。 SELECT姓名,书名FROM 借阅,图书,读者 WHERE; 借阅.借书证号="0001"AND; ______ ______

A.图书.总编号=借阅.总编号 AND 读者.借书证号=借阅.借书证号

B.图书.分类号=借阅.分类号 AND 读者.借书证号=借阅.借书证号

C.读者.总编号=借阅.总编号 AND 读者.借书证号=借阅.借书证号

D.图书.总编号=借阅.总编号 AND 读者.书名=借阅.书名


正确答案:A
解析:使用SQL命令进行查询。查询结果出自不同的表,即姓名出自读者表,书名出自图书表,该题是涉及多个表的连接查询。读者和借阅表通过共有属性借书证号进行连接,从而可以获得借阅了图书的读者姓名,图书表和借阅表通过共有属性总编号进行连接,从而可以获得借出图书的书名,由于要进行3个关系即借阅、图书和读者3个表的连接,必须将连接条件放在WHERE短语后面,两个连接条件即“图书.总编号=借阅.总编号”和“读者.借书证号=借阅.借书证号”由AND运算符连接。

更多相关问题