本资料为西安电子科技大学MySQL数据库课程第四次实验的标准答案解析,涵盖SQL语句操作、数据查询及管理等知识点。适合学生参考学习和巩固实验内容。
基于MySQL设计并实现一个简单的旅行预订系统,该系统涵盖航班、大巴班车、宾馆房间及客户数据的信息管理。
关系模式如下:
- FLIGHTS(航班号 flightNum, 价格 price, 座位总数 numSeats, 剩余座位数 numAvail, 出发城市 FromCity, 到达城市 ArivCity)
- HOTELS(地点 location,价格 price,房间总数 numRooms,剩余房间数 numAvail)
- BUS(地点 location,价格 price,班车数量 numBus,剩余位置数 numAvail)
- CUSTOMERS(客户姓名 custName、客户ID custID)
- RESERVATIONS(客户姓名 custName, 预订类型 resvType, 订单号 resvKey)
假设条件:
1. 同一航班上的所有座位价格相同;flightNum是FLIGHTS表的主键。
2. 同一个地点的所有宾馆房间价格一致;location为HOTELS表的主码。
3. 同一地点的大巴车票价统一;location也是BUS表的主码。
4. custName是CUSTOMERS表中的唯一标识符(主键)。
5. RESERVATIONS记录客户预订航班、大巴或酒店的信息,resvType表示预订类型:1代表航班,2为宾馆房间,3指班车。同时 resvKey 是RESERVATIONS表的主码。
6. FLIGHTS中 numAvail 表示特定航班上可预定座位的数量;对于任何给定的航班(flightNum),数据库一致性条件之一是该航班在 RESERVATIONS 中的所有预订条目数加上剩余座位数量应等于总的座位数目。此规则同样适用于表BUS和HOTELS。
应用系统需完成以下功能:
1. 航班、大巴车、宾馆房间及客户数据的录入与更新。
2. 预订航班、大巴车或酒店的服务。
3. 查询航班信息、班车详情、客房情况,以及客户预订记录等。
4. 提供查询特定客户的旅行路线的功能。
5. 检查预定线路的完整性以确保所有项目都能顺利进行。
此外还可以添加其他功能来增强系统的实用性。