内容发布更新时间 : 2024/12/23 14:39:01星期一 下面是文章的全部内容请认真阅读。
表2-4 用户表
字段名 用户号 姓名 性别 身份证号 密码 数据类型 nchar(10) char(4) char(2) char(18) nchar(10) 是否为空 否 否 是 否 否
2.4数据库中的约束
2.4.1主键约束
(1)在车票信息表中,定义车次,出发地,出发时间,目的地,到达时间,出发日这个整体作为车票信息表的主键。相关代码如下:
alter table 车票信息表
add constraint pk primary key(车次,出发地,出发时间,目的地,到达时间,出发日)
(2)在车票预订表中,定义用户号,姓名,身份证号这个整体作为车票预订表的主键。
(3)在管理员表和用户表中,分别将管理号和用户号作为各表的主键。 2.4.2外键约束
在车票预订表中,定义车次,出发地,出发时间,目的地,到达时间,出发日这个整体作为车票预订表的外键,参考车票信息表中的主键。相关代码如下:
alter table 车票预订表
add constraint fk1 foreign key(车次,出发地,出发时间,目的地,到达时间,出发日)
references 车票信息表(车次,出发地,出发时间,目的地,到达时间,出发日) 2.4.3 CHICK约束
在用户表的性别字段,定义CHICK约束。规定性别在男、女中选值。相关代码如下:
alter table 用户表
7
add constraint CK_sex check(性别 in ('女','男')) 2.4.4 DEFAULT约束
在用户表的性别字段,定义DEFAULT约束。规定性别默认值为男。相关代码如下: alter table 用户表
add constraint df_sex default '男' for 性别 2.4.5长度约束
在车票预订表和用户表中,定义身份证长度为18位,相关代码如下: alter table 用户表
add constraint CK_PID check(len(身份证号)=18)
8
3 各功能模块和流程图
3.1系统软件结构设计
综合以上需求,本系统需要以下几个模块来支持:
(1)用户模块:用于用户注册,用户登陆,订票,退票,修改登录密码。 (2)管理员模块:供后台管理员登录。用于添加车票信息。 (3)游客模块:列车信息查询,用户注册。 三个模块的关系如下: 火 车 订 票 管 理 系 统
管理 员登 录 添加车票 信息 管理员管理 用户管理 游客 修改登录密码 购票 退票 查看用户信息 列车信息查询 查看订票 图3.1火车订票管理系统的层次图
列车信息查询 用户注册 3.2系统流程图
⑴系统总体流程图如下图3.2所示。
9
开始
图3.2系统用户权限的系统主程序流程图
退出 查询 车次 信息 查询 订票 信息 订票 界面 选择订 票窗口 选择查询 主界面 登录,确定访问权限 登录 N N Y 窗口 Y 查询 界面 选择退 票窗口 N Y 退票 界面 Y Y 订票 订票 退票 退票 N N Y 结束 ⑵车次信息查询流程图如下图3.3所示。
10
开始 查询 界面 N 查询车次信息 Y 用户输入要 查询条件 N 查询 Y 返回主页 读数据文件 输出查询结果 Y 关闭窗口 继续查询 车次信息 N N 订票 N Y Y 订票 界面 订票 结束
图3.3车次信息查询程序流程图
⑶订单信息查询流程图如下图3.4所示。
11