【说明】 请设计一个图书馆数据库,此数据库中对每个借阅者保存的读者记录包括:读者号、姓名、地址、性别、年龄、单位。对每本书存有:书号、书名、作者、出版社。对每本书被借出的书存有读者号、借出日期和应还日期。
【问题1】 给出E-R图 【问题2】 转换成关系模型 【问题3】 给其中任何一个表用SQL语句建表。
参考答案:
解析:【问题1】
【问题2】 关系模型为: 读者(读者号,姓名,地址,性别,年龄,单位) 书(书号,书名,作者,出版社) 借书(读者号,书名,借出日期,应还日期) 【问题3】 对关系模式“借书”建表: CREATE TABLE RB(RNO CHAR(5), BNO CHAR(5), OUT_DATE DATE, BACK_DATE DATE, PRIMARY KEY (RNO, BNO), FOREIGN KEY(RNO) REFERENCES R(RNO), FOREIGN KEY(RNO) REFERENCES B(BNO)); 说明:表R——读者表,表B——书表,表RB——借书表 RNO——读者号,BNO——书号,OUT_DATE一借出日期 BACK_DATE——应还日期 这个数据库的设计比较简单,但需要考生对一些基本知识有所掌握。 通过分析,可以得到:有2个实体和一个联系。 实体:读者、书。 联系:借书。 读者和书之间是“一对多”的借书联系。 实体“读者”应该有如下属性:读者号,姓名,年龄,单位,地址,性别。 实体“书”应该有如下属性:书号,书名,作者,出版社。 联系“借书”应该有如下属性:借出日期,应还时期。 由以上分析画出的E-R图如下所示。