软件水平考试

阅读下列说明和图,回答问题,将解答填入答题纸的对应栏内。【说明】某高校图书馆欲建设一个图书馆管理系统,目前已经完成了需求分析阶段的工作,功能需求均使用用例进行描述,其中用例“借书(Check Out 800ks)”的详细描述如下。?? ?参与者:读者<Patron>?? ?典型事件流:?? ?1.输入读者ID:?? ?2.确认该读者能够借阅图书,并记录读者ID;?? ?3.输入所要借阅的图书ID;?? ?4.根据图书目录中的图书ID确认该书可以借阅,计算归还时间,生成借阅记录;?? ?5.通知读者图书归还

题目
阅读下列说明和图,回答问题,将解答填入答题纸的对应栏内。【说明】某高校图书馆欲建设一个图书馆管理系统,目前已经完成了需求分析阶段的工作,功能需求均使用用例进行描述,其中用例“借书(Check Out 800ks)”的详细描述如下。?? ?参与者:读者<Patron>?? ?典型事件流:?? ?1.输入读者ID:?? ?2.确认该读者能够借阅图书,并记录读者ID;?? ?3.输入所要借阅的图书ID;?? ?4.根据图书目录中的图书ID确认该书可以借阅,计算归还时间,生成借阅记录;?? ?5.通知读者图书归还时间;?? ?重复步骤3~5,直到读者结束借阅图书。?? ?备选事件流:?? ?2a.若读者不能借阅图书,说明读者违反了图书馆的借书制度(例如,没有支付借书费用等)。?? ?①告知读者不能借阅,并说明拒绝借阅的原因;?? ?②本用例结束。?? ?4a.读者要借阅的书无法外借。?? ?①告知读者本书无法借阅;?? ?②回到步骤3。说明:图书的归还时间与读者身份有关。如果读者是教师,图书可以借阅一年:如果是学生,则只能借阅3个月,读者ID中包含读者身份信息,现采用面向对象方法开发该系统,得到如图1所示的系统类模型(部分);以及如图2所示的系统操作。“CheckOut(bookID).(借书)“通信图”(或协作图)。




【问题1】(5分)根据说明中的描述,以及图1和图2,给出图1中C1-C4处所对应的类名(类名使用图1和图2中给出的英文词汇)。【问题2】(5分)根据说明中的描述,以及图1和图2,给出图2中M1-M4处所对应的方法名(方法名使用图1和图2中给出的英文词汇)。【问题3】(5分)用例“借书”的备选事件流4a中,根据借书制度来判定读者能否借阅图书,随着图书馆的借书制度会不断地扩充,并需要根据图书馆的实际运行情况来调整具体使用哪些制度,为满足这一要求,在原有类设计的基础上,可以采用何种设计模式?简要说明原因。

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

第1题:

【说明】

一个图书馆信息管理系统的分析与建模。下面是某图书馆的有关介绍。

图书馆雇有若干管理员,各自具有编码、姓名等属性。管理员可上岗,也可下岗。

图书馆中备有若干图书,每本图书有书号、书名、出版社、价格等属性。图书馆不定期地购买并注册新图书供读者借阅,也可将报废的旧书注销以停止借阅。

图书馆可为众多读者提供服务。每个读者在借阅之前需注册姓名、性别、地址、Email等内容。读者可在终端上查询。每个读者最多可同时借阅5本书。每本图书借期为30天;若有一本书超期,则不可再借其他图书。一本书超期一天罚款0.1元。若一本书超期3个月不归还,则发布通告。若读者的图书丢失,在罚款处理之前不能借书,每本报失的图书罚款该书价的2倍。注册新读者不受限制;在注销读者之前,该读者必须归还所有借阅的图书,或者报失并接受罚款。

在需求分析阶段,采用UML的用例图描述系统功能需求,如图1-6所示。指出图1-6中(1)(2)、(3)、(4)分别是哪个用例?


正确答案:(1)return(还书)(2)outdate(超期)(3)Reader Register(读者注册)(4)Book Cancel ReSister(图书注销)
(1)return(还书)(2)outdate(超期)(3)Reader Register(读者注册)(4)Book Cancel ReSister(图书注销) 解析:仔细阅读题目,可以发现“图书馆不定期地购买并注册新图书供读者借阅,也可将报废的旧书注销以停止借阅”,这句需求前半部分已经在用例图中显示出来,后半部分没有用例图说明,同时(4)处的前件是“图书登记”,可以得出(4)是Book Cancel Register (图书注销)。同样道理,从题目说明中“每个读者在借阅之前需注册姓名、性别、地址、Email等内容”,得到(3)处是Reader Register(读者注册);从题目说明中“一本书超期一天罚款 0.1元。若一本书超期三个月不归还,则发布通告”,得到(2)处是outdate(超期),(1)处是return(还书)。

第2题:

以下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运算符连接。

第3题:

对于图书管理数据库,查询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。

第4题:

阅读下列说明,根据要求回答问题1~问题3。

[说明]

某企事业单位资料室需要建立一个图书管理系统,初步的需求分析结果如下:

(1)资料室有图书管理员若干名,他们负责已购入图书的编目和借还工作,每名图书管理员的信息包括工号和姓名;

(2)读者可在阅览室读书,也可通过图书流通室借还图书,读者信息包括读者ID、姓名、电话和 E-mail,系统为不同读者生成不同的读者ID;

(3)每部书在系统中对应唯一的一条图书在版编目数据(CIP,以下简称书目),书目的基本信息包括ISBN号、书名、作者、出版商、出版年月,以及本资料室拥有该书的册数(以下简称册数),不同书目的ISBN号不相同;

(4)资料室对于同一书目的图书可拥有多册(本),图书信息包括图书ID、ISBN号、存放位置、当前状态,每一本书在系统中被赋予唯一的图书ID;

(5)一名读者最多只能借阅十本图书,且每本图书最多只能借两个月,读者借书时需由图书管理员登记读者ID、所借图书ID、借阅时间和应还时间,读者还书时图书管理员在对应的借书信息中记录归还时间;

(6)当某书目的可借出图书的数量为零时,读者可以对其进行预约登记,即记录读者ID、需要借阅的图书的ISBN号、预约时间。

某书目的信息如表7-13所示,与该书目对应的图书信息如表7-14所示。

系统的主要业务处理如下。

(1)入库管理:图书购进入库时,管理员查询本资料室的书目信息,若该书的书目尚未建立,则由管理员编写该书的书目信息并输入系统,然后编写并输入图书信息;否则,修改该书目的册数,然后编写并输入图书信息,对于进入流通室的书,其初始状态为“未借出”,而送入阅览室的书的状态始终为“不外借”。

(2)借书管理:读者借书时,若有,则由管理员为该读者办理借书手续,并记录该读者的借书信息,同时将借出图书的状态修改为“已借出”。

(3)预约管理:若图书流通室没有读者要借的书,则可为该读者建立预约登记,需要记录读者ID、书的ISBN号、预约时间和预约期限(最长为10天)。一旦其他读者归还这种书,就自动通知该预约读者。系统将自动清除超出预约期限的预约记录并修改相关信息。

(4)还书管理:读者还书时,则记录相应借还信息中的“归还时间”,对于超期归还者,系统自动计算罚金(具体的计算过程此处省略)。系统同时自动查询预约登记表,若存在其他读者预约该书的记录,则将该图书的状态修改为“已预约”,并将该图书ID写入相应的预约记录中(系统在清除超出预约期限的记录时解除该图书的“已预约”状态);否则,将该图书的状态修改为“未借出”。

(5)通知处理:对于已到期且未归还的图书,系统通过E-mail自动通知读者;若读者预约的书已到,系统则自动通过E-mail通知该读者来办理借书手续。

根据以上[说明]设计的实体联系图(E-R图)如图7-12所示,请指出读者与图书、书目与读者、书目与图书之间的联系类型。


正确答案:本试题考查数据库系统中E-R模型的设计。两个实体型之间的联系可以分为以下3类。 ①一对一联系(1:1)。如果对于实体集A中的每一个实体实体集B中最多有一个(也可以没有)实体与之联系反之亦然则称实体集A与实体集B具有一对一联系记为1:1。 ②一对多联系(1:n)。如果对于实体集A中的每一个实体实体集B中有n个实体(n>=0)与之联系反之对于实体集B中的每一个实体实体集A中最多只有一个实体与之联系则称实体集A与实体集B有一对多联系记为1:n。 ③多对多联系(m:n)。如果对于实体集A中的每一个实体实体集B中有n个实体(n>=0)与之联系反之对于实体集B中的每一个实体实体集A中也有m个实体(m>=0)与之联系则称实体集A与实体集B具有多对多联系记为m:n。 读者与图书之间形成了借还关系题中说明“一名读者最多只能借阅十本图书”显然一本图书可被多名读者借阅而每名读者应该能够借阅多本图书因此读者与图书之间的借还联系为多对多(n:m)。另外资料室对于同一书目的图书可拥有多册(本)每一本书在系统中被赋予唯一的图书ID所以书目与图书之间的联系类型为一对多(1:m)。当某书目的可借出图书的数量为零时读者可以对其进行预约登记由于一名读者可借阅多种图书因此书目与读者之间的预约联系类型为多对多(n:m)。
本试题考查数据库系统中E-R模型的设计。两个实体型之间的联系可以分为以下3类。 ①一对一联系(1:1)。如果对于实体集A中的每一个实体,实体集B中最多有一个(也可以没有)实体与之联系,反之亦然,则称实体集A与实体集B具有一对一联系,记为1:1。 ②一对多联系(1:n)。如果对于实体集A中的每一个实体,实体集B中有n个实体(n>=0)与之联系,反之,对于实体集B中的每一个实体,实体集A中最多只有一个实体与之联系,则称实体集A与实体集B有一对多联系,记为1:n。 ③多对多联系(m:n)。如果对于实体集A中的每一个实体,实体集B中有n个实体(n>=0)与之联系,反之,对于实体集B中的每一个实体,实体集A中也有m个实体(m>=0)与之联系,则称实体集A与实体集B具有多对多联系,记为m:n。 读者与图书之间形成了借还关系,题中说明“一名读者最多只能借阅十本图书”,显然一本图书可被多名读者借阅,而每名读者应该能够借阅多本图书,因此读者与图书之间的借还联系为多对多(n:m)。另外,资料室对于同一书目的图书可拥有多册(本),每一本书在系统中被赋予唯一的图书ID,所以书目与图书之间的联系类型为一对多(1:m)。当某书目的可借出图书的数量为零时,读者可以对其进行预约登记,由于一名读者可借阅多种图书,因此书目与读者之间的预约联系类型为多对多(n:m)。

第5题:

现有表:读者(读者姓名,读者单位,借书证号)借阅(借书证号,图书名称,图书作者,出版单位)查询没有借阅图书的读者的姓名和借书证号,正确的SQL语句是( )。

A. SELECT姓名FROM读者WHERE NOT EXISTS; (SELECT借书证号FROM借阅WHERE借阅.借书证号=读者借书证号)

B. SELECT姓名,借书证号FROM读者WHERE (SELECT*FROM借阅WHERE借阅.借书证号=读者.借书证号)。

C. SELECT姓名,借书证号FROM读者WHERE NOT EXISTS; (SELECT*FROM借阅WHERE借阅.借书证号=读者.借书证号)

D. SELECT姓名,借书证号FROM读者WHERE借阅=NULL (SELECT*FROM借阅WHERE借阅.借书证号=读者.借书证号)


正确答案:C
谓词EXISTS用来检验在子查询中是否有结果返回,本题中内层查询引用了外层查询的表,所以是内外层相关嵌套查询。

第6题:

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


参考答案:

第7题:

阅读下列说明和数据流图,回答问题1至问题3。

[说明]

图书管理系统旨在用计算机对图书进行管理,包括图书的购入、借阅、归还以及注销。管理人员可以查询某位读者、某种图书的借阅情况,还可以对当前图书借阅情况进行一些统计,给出统计表格,以便掌握图书的流通情况。

系统要实现以下四方面的功能:购入新书、读者借书、读者还书以及图书注销。

(1)购入新书:需要为该书编制图书卡片,包括分类目录号、图书流水号(要保证每本书都有唯一的流水号,即使同类图书也是如此)、书名、作者、内容摘要、价格和购书日期等信息,写入图书目录文件中。

(2)读者借书:填写借书单,包括读者号、欲借图书分类目录号,系统首先检查该读者号是否有效,若无效,则拒绝借书,否则进一步检查该读者所借图书是否超过最大限制数,若已达到最大借阅数,则拒绝借书,否则读者可以借出该书,登记图书分类目录号、图书流水号、读者号和借阅日期等,写回到借书文件中去。

(3)读者还书:根据图书流水号,从借书文件中读出和该图书相关的借阅记录,表明还书日期,再写回借书文件中;如果图书逾期未还,则处以相应罚款。

(4)图书注销:将一些过时或无保留价值的图书注销,从图书文件中删除相关记录。

(5)流通查询:管理员可以对图书流通情况进行查询,包括某位读者、某种图书和全局图书,给出流通情况统计表。

以下是经分析得到的数据流图及部分数据字典,有些地方有待填充,假定顶层数据流图是正确的。图1-1是顶层数据流图,图1-2是第0层数据流图,图1-3是第1层数据流图。

[图1-1]

[图1-2]

[图1-3]

[数据字典]

(1)数据流条目

图书管理要求=[入库单|借书单|还书单|注销单]

入库单=分类目录号+数量+书名+作者+内容摘要+价格+购书日期

借书单=读者号+(d)+借阅日期

还书单=(e)+还书日期

(2)文件说明

文件名:目录文件

组成:{分类目录号+书名+作者+内容摘要+价格+入库日期+总数+库存数+(f)}

根据题意,指出数据流图中缺失的数据流(a)的名称,并指出该数据流的起点。


正确答案:(a)名称:当前日期起点:系统时钟
(a)名称:当前日期,起点:系统时钟 解析:加工2的输入数据流有“当前日期”和“有效的图书管理要求”。根据平衡原则,加工2.1的输入数据流(a)应为“当前日期”,其起点自然是“系统时钟”。

第8题:

有如下SQL语句:

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

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

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

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

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


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

第9题:

阅读以下某图书管理系统的技术说明和数据流图,根据要求回答问题1~问题4。

[说明]

某图书管理系统的主要功能是图书管理和信息查询。对于初次借书的读者,系统自动生成读者号,并与读者基本信息(姓名、单位和地址等)一起写入读者文件。

该系统的图书管理功能主要分为购入新书、读者借书、读者还书及图书注销4个方面。

(1)购入新书时需要为该书编制入库单。入库单内容包括图书分类目录号、书名、作者、价格、数量和购书日期,将这些信息写入图书目录文件并修改文件中的库存总量(表示到目前为止,购入此种图书的数量)。

(2)读者借书时需填写借书单。借书单内容包括读者号和所借图书分类目录号。系统首先检查该读者号是否有效,若无效,则拒绝借书;若有效,则进一步检查该读者已借图书是否超过最大限制数(假设每位读者能同时借阅的书不超过10本),若已达到最大限制数,则拒绝借书;否则允许借书,同时将图书分类目录号、读者号和借阅日期等信息写入借书文件中。

(3)读者还书时需填写还书单。系统根据读者号和图书分类目录号,从借书文件中读出与该图书相关的借阅记录,标明还书日期,再写回到借书文件中,若图书逾期,则处以相应的罚款。

(4)注销图书时,需填写注销单并修改图书目录文件中的库存总量。

系统的信息查询功能主要包括读者信息查询和图书信息查询。其中,读者信息查询可得到读者的基本信息及读者借阅图书的情况;图书信息查询可得到图书基本信息和图书的借出情况。

该图书管理系统的顶层数据流图,如图2-21所示;该图书管理系统的第0层DFD图,如图2-22所示;其中加工2的细化图,如图2-23所示。

请用100字以内的文字简要说明逻辑数据流图(Logical Data Flow Diagram)和物理数据流图(Physical Data Flow Diagram)之间的主要差别。


正确答案:这是一道要求读者掌握逻辑数据流图和物理数据流图区别点的简答题。本题所涉及的知识点如下。 ①数据流图是系统分析阶段用于描述系统逻辑模型的图形描述工具解决信息系统“做什么”的问题。它可分为逻辑数据流图和物理数据流图。 ②逻辑数据流图强调参与者所做的事情可以帮助设计者决定需要哪些系统资源、为了运行系统用户必须执行的活动、在系统安装之后如何保护和控制这些系统等内容。逻辑数据流图说明应该具有哪些加工和数据存储而不关心这些加工和数据存储是如何实现的。 ③物理数据流图关注的是系统中的物理实体以及一些具体的文档、报告和其他输入/输出数据。它通常用做系统构造和实现的技术性蓝图。在物理数据流图中需要说明加工和数据存储是如何实现的。
这是一道要求读者掌握逻辑数据流图和物理数据流图区别点的简答题。本题所涉及的知识点如下。 ①数据流图是系统分析阶段用于描述系统逻辑模型的图形描述工具,解决信息系统“做什么”的问题。它可分为逻辑数据流图和物理数据流图。 ②逻辑数据流图强调参与者所做的事情,可以帮助设计者决定需要哪些系统资源、为了运行系统用户必须执行的活动、在系统安装之后如何保护和控制这些系统等内容。逻辑数据流图说明应该具有哪些加工和数据存储,而不关心这些加工和数据存储是如何实现的。 ③物理数据流图关注的是系统中的物理实体,以及一些具体的文档、报告和其他输入/输出数据。它通常用做系统构造和实现的技术性蓝图。在物理数据流图中需要说明加工和数据存储是如何实现的。

第10题:

阅读下列说明,回答问题1、问题2和问题3。

[说明]

某单位资料室需要建立一个图书管理系统,初步的需求分析结果如下:

(1)资料室有图书管理员若干名,他们负责己购入图书的编目和借还工作,每名图书管理员的信息包括工号和姓名;

(2)读者可在阅览室读书,也可通过图书流通室借还图书,读者信息包括读者D、姓名、电话和E-mail,系统为不同读者生成不同的读者ID;

(3)每部书在系统中对应唯一的一条图书在版编目数据(CIP,以下简称书目),书目的基本信息包括ISBN号、书名、作者、出版商、出版年月,以及本资料室拥有该书的册数(以下简称册数),不同书目的ISBN号不相同:

(4)资料室对于同一书目的图书可拥有多册(本),图书信息包括图书ID、ISBN号、存放位置、当前状态,每一本书在系统中被赋予唯一的图书ID:

(5)一名读者最多只能借阅十本图书,且每本图书最多只能借两个月,读者借书时需由图书管理员登记读者①、所借图书D、借阅时间和应还时间,读者还书时图书管

理员在对应的借书信息中记录归还时间;

(6)当某书目的可借出图书的数量为零时,读者可以对其进行预约登记,即记录读者ID、需要借阅的图书的ISBN号、预约时间。

某书目的信息,以及与该书目对应的图书信息,如下表所示。

系统的主要业务处理如下。

(1)入库管理:图书购进入库时,管理员查询本资料室的书目信息,若该书的书目尚未建立,则由管理员编写该书的书月信息并输入系统,然后编写并输入图书信息;否则,修改该书目的册数,然后编写并输入图书信息,对于进入流通室的书,其初始状态为“未借出”,而送入阅览室的书的状态始终为“不外借”。

(2)借书管理:读者借书时,若有,则由管理员为该读者办理借书手续,并记录该读者的借书信息,同时将借出图书的状态修改为“已借出”。

(3)预约管理:若图书流通室没有读者要借的书,则可为该读者建立预约登记,需要记录读者ID、书的ISBN号、预约时间和预约期限(最长为10天)。一旦其他读者归还这种书,就自动通知该预约读者。系统将自动清除超出预约期限的预约记录并修改相关信息。

(4)还书管理:读者还书时,则记录相应借还信息中的“归还时间”,对于超期归还者,系统自动计算罚金(具体的计算过程此处省略)。系统同时自动查询预约登记表,若存在其他读者预约该书的记录,则将该图书的状态修改为“已预约”,并将该图书ID写入相应的预约记录中(系统在清除超出预约期限的记录时解除该图书的“已预约”状态);否则,将该图书的状态修改为“未借出”。

(5)通知处理:对于己到期且未归还的图书,系统通过E-mail自动通知读者:若读者预约的书已到,系统则自动通过E-mail通知该读者来办理借书手续。

根据以上说明设计的实体联系图如下图所示,请指出读者与图书、书目与读者、书目与图书之间的联系类型。


正确答案:(1)n (2)m (3)1 (4)n或m (5)m (6)n 其中(1)、(2)的答案可互换(5)、(6)的答案可互换。
(1)n (2)m (3)1 (4)n或m (5)m (6)n 其中,(1)、(2)的答案可互换,(5)、(6)的答案可互换。 解析:两个实体型之间的联系可以分为3类:
1)一对一联系(1:1)
如果对于实体集A中的每一个实体,实体集B中最多有一个(也可以没有)实体与之联系,反之亦然,则称实体集A与实体集B具有一对一联系,记为1:1。
2)一对多联系(1:n)
如果对于实体集A中的每一个实体,实体集B中有n个实体(n>=o)与之联系,反之,对于实体集B中的每一个实体,实体集A中最多只有一个实体与之联系,则称实体集A与实体集B有一对多联系,记为1:n。
3)多对多联系(m:n)
如果对于实体集A中的每一个实体,实体集B中有n个实体(n>=0)与之联系,反之,对于实体集B中的每一个实体,实体集A中也有m个实体(m>=0)与之联系,则称实体集A与实体集B具有多对多联系,记为m:n。
读者与图书之间形成了借还关系,题中说明“一名读者最多只能借阅十本图书”,显然一本图书可被多名读者借阅,而每名读者应该能够借阅多本图书,因此读者与图书之间的借还联系为多对多(n:m)。另外,资料室对于同一书目的图书可拥有多册(本),每一本书在系统中被赋予唯一的图书①,所以书目与图书之间的联系类型为一对多 (1:m)。当某书目的可借出图书的数量为零时,读者可以对其进行预约登记,由于一名读者可借阅多种图书,因此书目与读者之间的预约联系类型为多对多(n:m)。

更多相关问题