1计算机科学与技术学院王郑朋20104030336南华大学计算机科学与技术学院课程设计报告(2011-2012学年度第二学期)课程名称:数据库系统概论课程设计名称:站名自动播报系统姓名:王郑朋学号:20104030336专业:电气信息类班级:3地点:教师:刘征海2计算机科学与技术学院王郑朋20104030336目录一.系统需求分析............................................................3二、概念模型设计............................................................4三、对象模型设计...........................................................12四、数据字典...............................................................13五.数据库脚本..............................................................14六、学习体会...............................................................233计算机科学与技术学院王郑朋20104030336一、系统需求分析:旅客在旅行过程中,为防止坐过站,十分关心列车的前方到站。尤其是夜间行车,列车播音室停止播音,只靠列车到站时列车员才报站名,给广大旅客带来诸多不便。为使旅客能及时了解到自己目前所处位置及前方到站。这里设计一种全自动报站多媒体系统,能全天候自动通报站名、提示列车运行情况。在列车将要到达车站前播报信息使旅客能及时地了解到目前所处位置及前方到站,及使在候车室里面将要乘车的旅客及时了解到他要乘坐的车次何时到站,及他要坐得车次是否晚点等重要信息极大方便了旅客,改善了乘车环境,也为铁路运输带来了更好的经济效益。本系统功能:1.列车从起始站到终点站途中经过的每一站进行自动播报,播报内容包括,站名,到站时间,停留时间以及离站时间。2.在到站时自动播报相关内容,包括提示接车员列车将到站让接车员做好接车准备和让相关车次的乘客做好乘车准备。3.在列车因为某些无法预知的原因导致晚点或停开时,要及时将相关提示信息进行播报,播报内容包括告诉列车内的乘客列车的相关情况以及在下一站等待乘车的旅客做好列车晚点或列车停开的准备。4.在列车的行进过程中以及旅客在等车的过程中,要进行一些与安全等内容相关的内容宣传。序号功能名称功能需求标识优先级简要描述1播报内容信息管理高对播报内容的添加、修改、删除、查询操作2列车信息管理高对列车信息的添加、修改、删除、查询操作3播报信息类别管理高对播报信息类别的添加、修改4计算机科学与技术学院王郑朋20104030336操作以及为管理员分配权限操作4帮助功能中帮助用户使用系统5工作人员管理中对工作人员名单的添加、查找、删除操作6候车室管理中对候车室类别、工作人员管理、以及相关职能分配的操作7系统用户管理高系统帐号的分配、给用户分配角色、给用户分配权限等二、概念模型设计:1:分E-R图列车信息表列车介绍起始站终点站列车编号列车长编号候车室编号5计算机科学与技术学院王郑朋20104030336播报内容表内容编号内容信息播报时间播报次数播报语言类别编号播报间隔时间途径车站表车站名称到站时间停车时间长度列车编号6计算机科学与技术学院王郑朋20104030336播报内容类别表类别编号类别名称重要等级服务员信息表服务员编号服务员名称联系电话工作组编号联系地址7计算机科学与技术学院王郑朋20104030336候车室信息表候车室编号候车室类别编号列车编号候车室管理员编号车次时刻表列车编号到站时间停留时间到达终点时间晚点时间是否停运站间里程8计算机科学与技术学院王郑朋20104030336乘客信息表起始站终点站乘客姓名车票编号列车编号工作人员类别表类别编号类别名称9计算机科学与技术学院王郑朋20104030336乘客类别表类别编号类别名称车厢编号起始车厢编号终之火车站信息表火车站名称火车站地址火车站咨询电话火车站详细介绍10计算机科学与技术学院王郑朋20104030336总E-R图:接车人员表服务员编号列车编号列车服务人员表服务人员编号列车编号11计算机科学与技术学院王郑朋20104030336数据流图:12计算机科学与技术学院王郑朋20104030336三、对象模型设计:数据库中各表的关系:13计算机科学与技术学院王郑朋2010403033614计算机科学与技术学院王郑朋20104030336四、数据字典:系统中的主要数据元素:五.数据库脚本:--===============删除数据库,如果存在的话============================名字:播报内容信息别名:播报内容信息描述:播报内容详细信息,用于及时向旅客播报定义:播报内容信息=类别编号+播报具体内容+播报次数+连续两次播报之间的间隔+播报语言内容编号位置:输入到播报内容录入端(client端)名字:播报内容类别信息别名:播报内容类别信息描述:播报内的类别信息,方便播报内容的管理定义:播报内容类别信息=类别编号+类别名称+该类别内容的重要等级位置:输入到播报类别录入端(client端)名字:列车信息别名:列车信息描述:列车的详细信息定义:列车信息=列车编号+列车长编号+列车详细信息+候车室编号+起始站+终点站位置:输入到列车信息录入端(client端)名字:车次时刻信息别名:车次时刻信息描述:车次时刻信息息定义:车次时刻信息=列车编号+列车流水号+列车所到站的站名+停留的时间+离站的时间+晚点时间+是否因故障而停开位置:输入到列车时刻信息录入端(client端)名字:工作人员信息别名:工作人员信息描述:工作人员信息定义:工作人员信息=工作人员编号+工作人员名称+工作人员联系电话+工作人员联系地址位置:输入到工作人员信息录入端(client端)15计算机科学与技术学院王郑朋20104030336dropdatabaseStationAutoPlay0336go--===============创建StationAutoPlay0336数据库==========================createdatabaseStationAutoPlay0336on(name='StationAutoPlay0336.dat',filename='G:\数据库\StationAutoPlay0336.mdf',size=10mb,maxsize=100mb,filegrowth=10%)logon(name='StationAutoPlay0336.log',filename='G:\数据库\StationAutoPlay0336.ldf',size=10mb,maxsize=100mb,filegrowth=10%)go--==============使用StationAutoPlay0336数据库==========================useStationAutoPlay0336go--==============创建表================================--1:============创建工作人员类别表=======================================createtabletb_workerTypes0336(workerTypeIDintnotnullidentity(1,1)primarykey,workerTypeNamevarchar(50)notnull)go--2:==============创建工作人员详细信息表===================================createtabletb_workerDetailsInfo0336(workerIDintnotnullidentity(1,1)primarykey,workerTypeIDintnotnull,workerNamevarchar(50)notnull,--工作人员的联系电话workerPhonevarchar(50),workerAddressvarchar(50),constraintfk_workerDetails_worktype0336foreignkey(workerTypeID)referencestb_workerTypes0336(workerTypeID))go--3:===================创建列车信息表=========================================createtabletb_traininfo0336(--列车流水号16计算机科学与技术学院王郑朋20104030336trainIDintidentity(1,1)notnullprimarykey,--列车车次号,必须唯一trainNovarchar(50)notnull,--列车长编号,参照工作人员表trainMasterNointnotnull,--起始站beginStationvarchar(50)notnull,--终点站endStationvarchar(50)notnull,trainRemarkvarchar(2000),constraintuq_trainNo0336unique(trainNo),constraintfk_traininfo_workerdetails0336foreignkey(trainMasterNo)referencestb_workerDetailsInfo0336(workerID))go--4:===================创建车次时刻表==========================================createtabletb_tarinTimesTable0336(trainTimeIDintidentity(1,1)notnullprimarykey,trainNovarchar(50)notnull,--到达该站的时间arriveTimedatetimenotnull,--在该站停留的时间settleTimeintnotnull,--从该站离开的时间leveTimedatetimenotnull,--到达的那一站点的站名stationNamevarchar(50)notnull,--该列车的晚点时间,单位为分钟,默认为0分钟,即不晚点delayTimeintdefault(0),--该列车是否已经停止运行了,可取0,1两个值,1为停止开,默认为0isStopDriveintdefault(0),constraintck_stopdrive0336check(isStopDrivein(0,1)),constraintfk_trainTimesTable_traininfo0336foreignkey(trainNO)referencestb_traininfo0336(trainNO))go--5:=================创建候车室类别表==========================================createtabletb_waitroomTypes0336(waitroomTypeIDintidentity(1,1)primarykey,waitroomTypeNamevarchar(50)notnull)go--6:==================创建候车室表=============================================createtabletb_waitroom0336(17计算机科学与技术学院王郑朋20104030336w