数据库设计文档
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
学院
~
数据库课程设计报告$
(
)
电子技术系
!
专业班级
学生姓名
指导教师
.
实习地点
#
/
数据库设计文档
一、系统需求分析报告(数据流图、数据词典和功能分析)
系统应具有售票、查询、管理和维护等功能,系统管理员可以进行对车次的更改、票价的变动及调度功能,票价的修改可以通过修改运价来进行,车次调度可通过对发车时刻表的修改来进行,维护功能即可对表进行修改。
1、功能需求
经过分析后确定系统应具备以下功能:
—
(1)、售票功能
①销售车票
②预订车票
③退票
(2)、查询功能
①—
②车次查询
③时刻表查询
④售票情况查询
(3)、调度功能
①运价修改
②~
③车辆修改
④终点站修改
⑤车次修改
(4)、维护功能
①车票表修改
②—
③预订车票表修改
④退票表修改
⑤密码修改
(5)、统计功能
①售票统计
②¥
③报表打印
2、数据流图
使用结构化分析方法,确定系统的数据主要是运价、车次、终点站名、发车时间和车票,对数据的操作主要有运价修改、车次修改、终点站修改、发车时间修改、售票及打印,可以确定系统的处理逻辑和流程,得到如下所示的系统数据流图。
)
3、数据字典:
经过分析可以得到以下数据流条目:
车次表=车辆编号+车型+座位数
终点站名表=站名+里程
运价表=车型+运价
{
发车时刻表=车次+车辆编号+站名+发车时间+检票口
已售车票表=票号+乘车日期+车次+站名+发车时间+票价+全半价+工号+退票否
预订车票表=预订号+乘车日期+车次+站名+发车时间+车型+票价+客户名称+订票数量退票表=票号+退票时间+票价+应退款
售票员编号=工号+姓名
)
车辆编号=6{数字}6
车次=4{字符}5
车型=1{字符}8
座位数=2{数字}2
检票口=1{数字}2
`
站名=1{字符}10
里程=1{数字}5
运价=1{数字}6
发车时间={时间}
乘车日期={日期}
,
票号=7{数字}7
票价=1{数字}5
全半价=2{字符}2
退票否={T|F}
预订号=4{数字}4
%
客户名称=6{字符}20
订票数量=1{数字}2
退票时间={日期时间}
应退款=1{数字}5
工号=3{字符}3
》
姓名=4{字符}8
二、数据逻辑结构设计(E-R图、关系模式和数据库结构)
1、E—R图
#
@
2、关系模式
车辆(车辆编号,车型,座位数) 目标站名(站名,里程)
发车时刻表(车次,站名,车辆编号,发车时间,检票口)途径(车次,站名)
'
车票(票号,乘车日期,车次,站名,票价,全半价,座位号,工号,退票否) 预订(预订号,车次,站名,乘车日期,顾客名称,票数) 退票(票号,退票时间,票价,应退款) 售票员(工号,姓名) 运价(车型,价格) "
3、数据库结构
车辆表: {
主键:
!
预订表:
·
`
运价表:
三、
《
|
;
四、 程序模块设计与调试(设计和调试各程序模块,提交主要的程序段)
用户登入用户名和密码校对: |
Private Sub Cmdok_Click()
Dim username1 As String, username2 As String username1 = If Then
Set = Adodc1 <
= "口令"
If username1 <> "" Then
username2 = "用户名='" & username1 & "'" username2 If Then …
MsgBox "用户名错误请重输", 16, "错误
"
车站售票管理系统
售票功能
查询功能 调度功能
】
统计功能
销售车
票
预订车票
退票
!
车次查询
时
刻表查询
售票情况查询
运价修改
车辆修改
}
终点站修改
车次修改
已售车票表
预订车票表
退票表
!
售票统计
报表打印
Else
If <> Then
MsgBox "密码错误请重输", 16, "错误"
= ""
;
Else
End If
End If
、
End If
Else
If Then
Set = Adodc2
= "口令"
(
If username1 <> "" Then
username2 = "工号='" & username1 & "'"
username2
If Then
MsgBox "用户名错误请重输", 16, "错误"
—
Else
If <> Then
MsgBox "密码错误请重输", 16, "错误"
= ""
Else
End If
End If
End If
End If
End If
End Sub
当选中车次显示当前座位号和剩余票数,及拒售离开车只有五钟的车票Private Sub DataGrid1_Click()
Dim cc As String, sum As Integer
sum = 0
Month(Date) = And Day(Date) = Then
If (Hour - Hour(Now)) * 60 + Minute - Minute(Now) < 5 Then
MsgBox "已接近开车,停止售票", 64, "错误"
= False