首页 数据库设计文档

数据库设计文档

举报
开通vip

数据库设计文档数据库设计文档 宁波工程学院 (2004—2005学年第一学期) 系(分院) 电子技术系 专业班级 计02-6 学生姓名 陈林 指导教师 彭其美 实习地点 软件工程实验室 数据库设计文档 一、 系统需求分析报告(数据流图、数据词典和功能分析) 系统应具有售票、查询、管理和维护等功能,系统管理员可以进行对车次的更改、票价 的变动及调度功能,票价的修改可以通过修改运价来进行,车次调度可通过对发车时刻表的 修改来进行,维护功能即可对表进行修改。 1、 功能需求 经过分析后确定系统应具备以下功能: ...

数据库设计文档
数据库 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 文档 宁波 工程 路基工程安全技术交底工程项目施工成本控制工程量增项单年度零星工程技术标正投影法基本原理 学院 (2004—2005学年第一学期) 系(分院) 电子技术系 专业班级 计02-6 学生姓名 陈林 指导教师 彭其美 实习地点 软件工程实验室 数据库设计文档 一、 系统需求 分析 定性数据统计分析pdf销售业绩分析模板建筑结构震害分析销售进度分析表京东商城竞争战略分析 报告(数据流图、数据词典和功能分析) 系统应具有售票、查询、管理和维护等功能,系统管理员可以进行对车次的更改、票价 的变动及调度功能,票价的修改可以通过修改运价来进行,车次调度可通过对发车时刻表的 修改来进行,维护功能即可对表进行修改。 1、 功能需求 经过分析后确定系统应具备以下功能: (1)、售票功能 ? 销售车票 ? 预订车票 ? 退票 (2)、查询功能 ? 车次查询 ? 时刻表查询 ? 售票情况查询 (3)、调度功能 ? 运价修改 ? 车辆修改 ? 终点站修改 ? 车次修改 (4)、维护功能 ? 车票表修改 ? 预订车票表修改 ? 退票表修改 ? 密码修改 (5)、统计功能 ? 售票统计 ? 报表打印 2、数据流图 使用结构化分析 方法 快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载 ,确定系统的数据主要是运价、车次、终点站名、发车时间和车票, 对数据的操作主要有运价修改、车次修改、终点站修改、发车时间修改、售票及打印,可以 确定系统的处理逻辑和流程,得到如下所示的系统数据流图。 车次表 车次 报表修改 已售车票 打印 表 运价表退票表 运价 车票 售票 售票员修改 发车 系统管理员 查询 修改 终点站 修改 预订车票表 发车时刻表 终点站名表 已售车票 表 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图 站名 里程车型 座位数 车辆编号 n m 开往 车辆 目标站名 车次发车时间 检票口 车型 价格 运价 票价 应退款 退票时间 1 计费 顾客名称 乘车日期 退票姓名 工号 1 n n 1 n n 1 车票 售票员 顾客 预订 售票 预订号 车次站名 票号车次 站名 票价座位号 全半价退票否 乘车日期 主键: 2、关系模式 外键: 车辆(车辆编号,车型,座位数) 目标站名(站名,里程) 发车时刻表(车次,站名,车辆编号,发车时间,检票口)途径(车次,站名) 车票(票号,乘车日期,车次,站名,票价,全半价,座位号,工号,退票否) 预订(预订号,车次,站名,乘车日期,顾客名称,票数) 退票(票号,退票时间,票价,应退款) 售票员(工号,姓名) 运价(车型,价格) 3、数据库结构 车辆表: 字段名类型 长度 小数点 允许空 主/外键 车辆编号 Int 4 主 车型 Varchar 8 座位数smallInt 2 目标站名: 字段名 类型 长度 小数点 允许空 主/外键 站名 Varchar10 主 里程 Int 4 发车时刻表: 字段名 类型 长度小数点 允许空 主/外键 车次 Varchar 5 主 站名 Varchar 10 外 车辆编号 Int 4 外 发车时间Datetime 8 检票口 smallInt2 途径表: 字段名类型 长度 小数点 允许空 主/外键 车次 Varchar 5 主 站名 Varchar10 外 车票表: 字段名 类型 长度 小数点 允许空 主/外键 票号 Int 4 主 乘车日期 Datetime8 车次 Varchar 5 外 站名 Varchar 10 外 票价 Float 8 全半价 Char 2 座位号 smallInt 2 工号 Char 3 退票否 Char 1 预订表: 字段名 类型长度 小数点 允许空 主/外键 预订号 Int 4 主 车次 Varchar 5 外 站名 Varchar10 外 乘车日期 Datetime 8 顾客名称 Varchar 20 票数 smallInt 2 退票表: 字段名 类型长度 小数点 允许空 主/外键 票号Int 4 主 退票时间Datetime 8 票价Float 8 应退款 Float 8 售票员表: 字段名类型 长度小数点 允许空 主/外键 工号Char 3 主 姓名 Char 8 运价表: 字段名 类型长度 小数点允许空 主/外键 车型 Varchar8 主 价格 Float 8 三、软件结构设计(画出系统软件结构图) 车站售票管理系统 维护功能 售票功能 查询功能 调度功能 统计功能 预退车时售运车终车已预退售报票销 订票次刻票价辆点次售订票票表售 车查表情修修站修车车表统打 车票询查况改改修改票票计印 询查改表表 询 四、 程序模块设计与调试(设计和调试各程序模块,提交主要的程序段) 用户登入用户名和密码校对: Private Sub Cmdok_Click() Dim username1 As String, username2 As String username1 = Text1.Text If Option1.Value Then Set Text3.DataSource = Adodc1 Text3.DataField = "口令" Adodc1.Recordset.MoveFirst If username1 <> "" Then username2 = "用户名='" & username1 & "'" Adodc1.Recordset.Find username2 If Adodc1.Recordset.EOF Then MsgBox "用户名错误请重输", 16, "错误" Else If Text2.Text <> Text3.Text Then MsgBox "密码错误请重输", 16, "错误" Text2.Text = "" Else MDIForm1.Show Form1.Hide End If End If End If Else If Option2.Value Then Set Text3.DataSource = Adodc2 Text3.DataField = "口令" Adodc2.Recordset.MoveFirst If username1 <> "" Then username2 = "工号='" & username1 & "'" Adodc2.Recordset.Find username2 If Adodc2.Recordset.EOF Then MsgBox "用户名错误请重输", 16, "错误" Else If Text2.Text <> Text3.Text Then MsgBox "密码错误请重输", 16, "错误" Text2.Text = "" Else MDIForm1.Show Form1.Hide 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 Adodc3.Recordset.MoveFirst Adodc4.Recordset.MoveFirst Adodc6.Recordset.MoveFirst Adodc7.Recordset.MoveFirst Adodc8.Recordset.MoveFirst If Month(Date) = Combo2.Text And Day(Date) = Combo3.Text Then If (Hour(Text19.Text) - Hour(Now)) * 60 + Minute(Text19.Text) - Minute(Now) < 5 Then MsgBox "已接近开车,停止售票", 64, "错误" Cmdok.Visible = False Else Cmdok.Visible = True End If Else Cmdok.Visible = True End If cc = "车型='" & Text5.Text & "'" Adodc3.Recordset.Find cc cc = "站名='" & Text6.Text & "'" Adodc4.Recordset.Find cc If Combo4.Text = "全" Then Text2.Text = Int(Val(Text7.Text) * Val(Text8.Text) + 0.5) Else Text2.Text = Int(Val(Text7.Text) * Val(Text8.Text) / 2 + 0.5) End If Text2.Refresh While Not Adodc8.Recordset.EOF If Year(Text12) = Year(Date) And Month(Text12) = Combo2.Text And Day(Text12) = Combo3.Text And Text13.Text = Text9.Text And Text25.Text = "F" Then sum = sum + 1 End If Adodc8.Recordset.MoveNext Wend Text3.Text = sum + 1 Adodc8.Recordset.MoveFirst While Not Adodc8.Recordset.EOF If Year(Text12) = Year(Date) And Month(Text12) = Combo2.Text And Day(Text12) = Combo3.Text And Text13.Text = Text9.Text And Text25.Text = "T" Then Text3.Text = Text17.Text Adodc8.Recordset.MoveLast flag = "T" Else Adodc8.Recordset.MoveNext End If Wend While Not Adodc9.Recordset.EOF If Year(Text22.Text) = Year(Date) And Month(Text22.Text) = Combo2.Text And Day(Text22.Text) = Combo3.Text And Text23.Text = Text9.Text Then sum = sum + Val(Text24.Text) End If Adodc9.Recordset.MoveNext Wend cc = "车次='" & Text9.Text & "'" Adodc7.Recordset.Find cc cc = " 车辆编号='" & Text11.Text & "'" Adodc6.Recordset.Find cc Text4.Text = Val(Text10.Text) - sum Text4.Refresh End Sub 退票时当输入票号后算出应退款 Private Sub Text1_LostFocus() Dim cc As String Adodc1.Recordset.MoveFirst Adodc2.Recordset.MoveFirst cc = "票号='" & Text1.Text & "'" Adodc1.Recordset.Find cc Text3.Text = Text6.Text Text2.Text = Now cc = "车次='" & Text7.Text & "'" Adodc2.Recordset.Find cc If Not Adodc2.Recordset.EOF Then If Month(Text5.Text) > Month(Text2.Text) Then Text4.Text = Int(Val(Text6.Text) * 0.1 + 0.5) Else If Month(Text5.Text) = Month(Text2.Text) Then If Day(Text5.Text) > Day(Text2.Text) Then Text4.Text = Val(Text6.Text) - Int(Val(Text6.Text) * 0.1 + 0.5) Else If Day(Text5.Text) = Day(Text2.Text) Then If (Hour(Text9.Text) - Hour(Text2.Text)) * 60 + Minute(Text9.Text) - Minute(Text2.Text) >= 120 Then Text4.Text = Val(Text6.Text) - Int(Val(Text6.Text) * 0.1 + 0.5) Else If (Hour(Text9.Text) - Hour(Text2.Text)) * 60 + Minute(Text9.Text) - Minute(Text2.Text) >= 60 Then Text4.Text = Val(Text6.Text) - Int(Val(Text6.Text) * 0.2 + 1) Else If (Hour(Text9.Text) - Hour(Text2.Text)) * 60 + Minute(Text9.Text) - Minute(Text2.Text) < 5 Then MsgBox "接近发车不能退票", 16, "错误" Form5.Hide Else Text4.Text = Int(Val(Text6.Text) * 0.3 + 1) End If End If End If Else MsgBox "车票过期不能退", 16, "错误" Form5.Hide End If End If Else MsgBox "车票过期不能退", 16, "错误" Form5.Hide End If End If Else MsgBox "没有该票", 16, "错误" End If End Sub 五、 软件使用说明 关于书的成语关于读书的排比句社区图书漂流公约怎么写关于读书的小报汉书pdf 首先通过登录界面进行登录,登录的身份分为管理员和售票员,管理员的用户名默认为:Administrator,密码为:123456;售票员的用户名为自己的工号,初始密码也为:123456。密码的修改可以通过登录后选择文件菜单?口令修改,进行密码的修改。 售票员登录后能使用的菜单有:文件、售票、查询、统计。 1、 售票菜单下有:销售车票、预订车票、退票等功能,退票时只需输入票号即可退票。 2、 查询菜单下有:车次查询、时刻表查询、售票情况查询。车次查询可进行浏览和输入车 次查询,选中某个车次后可查看它的途径站点。时刻表查询按时间的先后进行排列,一 秒钟记录自动下移一条,同时显示该车的途径站点。售票情况查询按站名对每班车进行 排列,每一秒钟移动一条记录,同时显示总的票数和剩余的票数。 3、 统计菜单有:售票统计和报表打印。售票统计可以按车次进行统计,列出每一个次车所 卖出的票数;也可以按售票员的工号进行统计,列出每位售票员卖出的票数。 管理员登录后能使用的菜单有:文件、查询、调度、维护、统计。 1、 文件菜单、查询菜单及统计菜单与售票员的相同 2、 调度菜单下有:运价修改、车辆修改、终点站修改、车次修改。运价修改可以修改运输 的单价。车辆修改可以进行对车辆进行添加、修改、删除。终点站修改可以进行对终点 站的添加、修改、删除。车次修改可以进行添加、修改、删除车次实现调度。 3、 维护菜单下有:车票表修改、预订车票表修改、退票表修改、密码修改。车票表修改、 预订车票表修改和退票表修改都具有添加、删除、更新等功能。密码修改可以对所有的 售票员的口令进行修改、和删除,同时也可以进行添加,点击添加后是对售票员表添加 售票员的工号和姓名,同时在售票员口令表里生成售票员的工号与初始密码123456。
本文档为【数据库设计文档】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_842972
暂无简介~
格式:doc
大小:33KB
软件:Word
页数:0
分类:初中语文
上传时间:2018-08-11
浏览量:16