一、简答题(共10分)
- 1.什么叫数据与程序的物理独立性?什么叫数据与程序的逻辑独立性?为什么数据库系统具有数据与程序的独立性?(3分)
数据与程序的的逻辑独立性:
当模式改变时(例如增加新的关系,新的属性,改变属性的数据类型等),由数据库管理员对各个外模式/模式的映像做相应的改变,可以使外模式保持不变。应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。
数据于程序的物理独立性:
当数据库的存储结构改变了,由数据库管理员对模式/内模式映像做响应的改变,可以使模式保持不变,从而应用程序也不必改变,保证了数据与程序的物理独立性,简称数据的物理独立性。
数据库管理系统在三级模式之间提供的两层映像保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性
- 2.什么是关系模式?(2分)
关系的描述称为关系模式。
它可以形象化地表示为R( U, D, DOM, F)
R:关系名
U:组成该关系的属性名集合
D:U中属性所来自的域
DOM:属性向域的映像集合
F:属性间数据的依赖关系集合
- 3.在关系系统中,当操作违反实体完整性、参照完整性和用户定义的完整性约束条件时,一般是如何分别进行处理的?(5分)
对于违反实体完整性和用户定义的完整性的操作一般都采用拒绝执行的方式进行处理。而对于违反参照完整性的操作,并不都是简单地拒绝执行,有时要根据应用语义执行一些附加的操作,以保证数据库的正确性。
二、计算题(37分)
设宾馆酒店业数据库有四张表:
Hotel(hotelNo, hotelName, city)
Room(roomNo, hotelNo, type(房间类型), price)
Booking(roomNo, guestNo, dateFrom(起始日期), dateTo(终止日期))
Guest(guestNo, guestName, guestAdd