设有关系模式:图书借阅(读者号,书号,借书日期,还书日期),其中

题目

设有关系模式:图书借阅(读者号,书号,借书日期,还书日期),其中书号代表唯一的一本书,若允许读者在不同时间借阅同一本书,则此关系模式的主键是()。

  • A、(读者号,图书号)
  • B、(读者号)
  • C、(读者号,图书号,借书日期)
  • D、(读者号,图书号,借书日期,还书日期)
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

有如下SQL语句:

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

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

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

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

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


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

第2题:

查询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。

第3题:

( 34 ) 查询 2 009 年被借过书的图书编号和借书日期,正确的 SQL 语句是

A ) SELECT 图书编号 , 借书日期 FROM 借阅 WHERE 借书日期 = 2009

B ) SELECT 图书编号 , 借书日期 FROM 借阅 WHERE year ( 借书日期 ) =2009

C ) SELECT 图书编号 , 借书日期 FROM 借阅 WIRE 借书日期 = year ( 2009 )

D ) SELECT 图书编号 , 借书日期 FROM 借阅 WHERE year ( 借书日期 ) =year ( 2009 )


正确答案:B

第4题:

查询尚未归还书的图书编号和借书日期,正确的SQIL语句是

A.sELECT图书编号,借书日期FROM借阅WHERE还书日期=””

B.SEI正cT图书编号,借书日期FROM借阅WHERE还书日期=NULL

C.sELECT图书编号,借书日期FROM借阅WHERE还书日期IS NULl。

D.SELECT图书编号,借书日期FROM借阅WwHERE还书日期


正确答案:C
解析:SQL支持空值,同样可以利用空值进行查询。查询空值时要使用ISNULL,而“=NULL”是无效的,因为空值不是一个确定的值,所以不能用“=”这样的运算符进行比较。

第5题:

以下2题使用如下图书管理数据库:

图书(总编号C(6),分类号C(8),书名C<16),作者C(6),出版单位C(20),单价N(6,2))

读者(借书证号C(4),单位C(8),姓名C(6),性别C(2),职称C(6),地址C(20))

借阅(借书证号C(4),总编号C(6),借书日期D(8))

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

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

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

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

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


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

第6题:

对“图书借阅管理”数据库中的表借阅、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的简单联接查询。

第7题:

根据以下资料,回答下列各题: 基于图书表、读者表和借阅表三个数据库表,它们的结构如下: 图书(图书编号,书名,第一作者,出版社):图书编号、书名、第一作者和出版社为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型的条件值需要用引号。

第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
解析:查询的基本形式为“SELECT-FROM-WHERE查询块”,多个查询块可嵌套执行。SELECT说明要查询的数据,FROM说明要查询的数据来自哪个或哪些表,wHERE说明查询条件,即选择元组的条件。此处需要注意的是字段值的表示方式,当需要指定某个特定的字段值时,应当用双引号(“”)进行表示,而对于特定的字段,不需加双引号。

第10题:

设有图书(图书编号,书名,第一作者,出版社.、读者(借书证号,姓名,单位,职称.和借阅(借书证号,图书编号,借书日期,还书日期.三张表,则表借阅的关键字(键或码.为( )。

A.借书证号,图书编号

B.图书编号,借书日期

C.借书日期,还书日期

D.借书证号,借书日期


正确答案:A
在二维表中凡能唯一标识元组的最小属性集称为关键字,关键字具有标识元组、建立元组间联系等重要作用。此题中,(借书证号,图书编号)是表借阅的主键,借书证号、图书编号分别是外键,借书证号是读者表的主关键字,图书编号是图书表的主关键字。

更多相关问题