问题 问答题

[说明]

图书管理系统详细记录图书库存情况、读者信息以及读者借阅记录(包括借书日期和还书日期)。

新书入库时要为该书编制图书卡片,包括分类目录号、图书流水号(要保证每本书都有唯一的流水号,即使同类图书也是如此)、书名、作者、内容摘要、价格和购书目期。同一个书名由于版次、作者等不同有可能存在多“种”图书,其间用“分类目录号”区分。

系统为每一位合法读者编制一个唯一的借书证号,读者需要提供姓名、单位。

一个读者最多可以同时借阅5本图书。借阅图书时,新添借阅记录,并将对应的“归还标记”字段置为“false”,表示“尚未归还”;归还图书时,将相应的“归还标记”字段置为“true”,表示“已经归还”。一本书可能供多位读者借阅,同一本书读者可以重复借阅。

图2-1为该系统的E-R图。

[图2-1]

若用表Reader存储读者信息,Book表存储图书信息,Borrow表存储借阅情况。
以下SQL语句是“查询证号为12345的读者当前所借阅的图书书名(即尚未归还的图书)”,请补充完整。
SELECT 书名 FROM Book WHERE 流水号 (1)
(SELECT流水号FROM (2) WHERE 证号="12345" AND (3)
以下SQL语句是“查询书名包含‘软件设计师’的图书情况”,请补充完整。
SELECT * FROM Book WHERE书名 (4) "%软件设计师%\

答案

参考答案:

IN (2) Borrow (3) 归还标记="false" (4) LIKE

解析:

是引出子查询的,该类连接词有:IN、NOT IN、EXISTS、NOTEXISTS,EXISTS引出的子查询一般是SELECT*型,故排除;再据语意分析应填IN。

子查询的语意是“查询当前所借阅的图书流水号(即尚未归还的图书)”,因此应从Borrow表中查询,而且归还标记应为false,故空(2)应填Borrow,空(3)应填:归还标记="false"。

对字符串进行的操作通常是使用操作符LIKE的模式匹配,正符合题意,故空(4)应填“LIKE”。

单项选择题 A1/A2型题
单项选择题 A1型题