机票预订系统完整数据字典
Admin:管理员信息表,以自增admin_id作为主键,同时要求admin_name是唯一的,以此作为登录依据。
表名: |
Admin |
含义: |
管理员信息表 |
||
列名 |
含义 |
数据类型 |
P |
N |
I |
admin_id |
管理员ID |
Int |
1 |
1 |
1 |
admin_name |
管理员账号 |
varchar(255) |
1 |
||
password |
管理员密码 |
varchar(255) |
1 |
User:用户信息表,以自增user_id作为主键,要求telephone和email都不能重复,以telephone作为登录依据,使用email用来找回或被管理员重置密码,username要求5-15位字母、下划线、汉字,password要求6-16位数字或字母
表名: |
user |
含义: |
用户信息表 |
||
列名 |
含义 |
数据类型 |
P |
N |
I |
user_id |
用户ID |
int |
1 |
1 |
1 |
username |
用户名 |
varchar(255) |
1 |
||
password |
用户密码 |
varchar(255) |
1 |
||
telephone |
绑定手机 |
varchar(255) |
1 |
||
|
绑定邮箱 |
varchar(255) |
1 |
Airway:以自增airway_id作为主键的航线信息表,记录两个出发和到达的两个城市名,以此确定航空公司开通的航线,由于很少变化,所以前端不提供更改。
表名: |
airway |
含义: |
航线信息表 |
||
列名 |
含义 |
数据类型 |
P |
N |
I |
airway_id |
航线ID |
int |
1 |
1 |
1 |
departure |
出发地 |
varchar(255) |
1 |
||
arrival |
到达地 |
varchar(255) |
1 |
Aircraft:以自增aircraft_id为主键的飞机型号表,代表航空公司机队里的飞机型号列表,不对飞机的注册号等信息进行收录,只收录基本信息。Model表示飞机型号的名称;为简化系统设计,所以飞机均为全经济舱设计,seats表示某个型号的飞机的经济舱定员量,也表明使用该机型的航班可以售卖多少票。
表名: |
aircraft |
含义: |
飞机型号表 |
||
列名 |
含义 |
数据类型 |
P |
N |
I |
aircraft_id |
飞机型号ID |
int |
1 |
1 |
1 |
model |
飞机型号名称 |
varchar(255) |
1 |
||
seats |
经济舱定员 |
int |
1 |
Flight:以自增flight_id为主键的航班信息表,记录了航班的航线信息,执飞机型信息,该航班的预计起飞时间,预计到达时间,通过执飞机型的定原量,确定该航班的可售票数量。Flight_num由中国民航局和航空公司编写,不同日期会有相同航班号,所以用字符串存储。由于航班可能由于时间不一样,执飞机型不一样,票价可能不一致,所以执飞机型和单价不设置非空的要求,可以在录入航班以后,管理员后录入。其中airway_id设置外键参考airway表的airway_id,aircraft_id设置外键参考aircraft表的aircraft_id。
表名: |
flight |
含义: |
航班信息表 |
||
列名 |
含义 |
数据类型 |
P |
N |
I |
flight_id |
航班ID |
int |
1 |
1 |
1 |
flight_num |
航班号 |
varchar(255) |
1 |
||
airway_id |
担当航线ID |
int |
1 |
||
departure_time |
预计起飞时间 |
datetime |
1 |
||
arrival_time |
预计到达时间 |
datetime |
1 |
||
aircraft_id |
执飞机型ID |
int |
|||
price |
经济舱单价 |
decimal(12,2) |
|||
available_seat |
经济舱可售票数 |
int |
Order:以自增order_id为主键的订单信息表,用user_id记录下单用户,设置外键参考user表的user_id,用flight_id记录预订的航班信息,设置外键参考flight表的flight_id。其中要求用户填写乘客姓名和身份证号码,对身份证号码进行后端校验格式;用户联系电话默认注入user绑定的手机号码,但也允许用户前端填写,同样进行后端格式校验;order_time由订单信息提交到服务器时由服务器生成,status默认设置为false,即订单未提交。限制每个身份证号码只能在一个航班上购买一个座位的票,所以flight_id和passenger_id_card_num设置了UNIQUE。
表名: |
order |
含义: |
订单信息表 |
||
列名 |
含义 |
数据类型 |
P |
N |
I |
order_id |
订单ID |
long |
1 |
1 |
|
user_id |
下单用户ID |
int |
1 |
||
flight_id |
预订航班ID |
int |
1 |
||
passenger_name |
乘客姓名 |
varchar(255) |
1 |
||
passenger_id_card_num |
乘客身份证号码 |
varchar(255) |
1 |
||
contact |
乘客联系电话 |
varchar(255) |
1 |
||
order_time |
订单生成时间 |
datetime |
1 |
||
status |
订单支付状态 |
bit |
1 |