礼堂购票系统Word文档格式.docx

上传人:b****8 文档编号:22950912 上传时间:2023-02-06 格式:DOCX 页数:24 大小:148.64KB
下载 相关 举报
礼堂购票系统Word文档格式.docx_第1页
第1页 / 共24页
礼堂购票系统Word文档格式.docx_第2页
第2页 / 共24页
礼堂购票系统Word文档格式.docx_第3页
第3页 / 共24页
礼堂购票系统Word文档格式.docx_第4页
第4页 / 共24页
礼堂购票系统Word文档格式.docx_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

礼堂购票系统Word文档格式.docx

《礼堂购票系统Word文档格式.docx》由会员分享,可在线阅读,更多相关《礼堂购票系统Word文档格式.docx(24页珍藏版)》请在冰豆网上搜索。

礼堂购票系统Word文档格式.docx

1.引言

在学校给学生提供的各种活动中,礼堂每周末的电影播放给了大家放松的机会。

既可以几乎免费的看最新的大片,也不用到处找电影院,满足了学生的课余需求。

因此,有必要提供一个购票软件,方便大家查询和订票。

在计算机日益普及的今天,对我们这些大学生来说,网络的使用已经十分普遍了。

所以,使用网络购票是十分方便同学们的。

无论是查看学校礼堂的电影信息,还是直接购票,都可以有效的帮助到同学们。

这就是本网页设计的重要原因。

本文以高校电影订票系统开发过程为背景,全文分为目录、需求分析、概要设计、逻辑设计、物理设计,以及系统的实现等全过程。

在程序设计与调试上采用了自上而下,逐步细化,逐步完善的原则。

采用结构化的功能模块设计系统功能,可读性好,易于扩充。

基本功能全面,系统可读性好,易于维护、更新,安全性好。

2.需求分析

进行系统设计,首先要对系统的现状进行分析。

根据系统的目标、需求和功能,制定和选择一个较好的系统方案,从而达到一个合理的优化系统。

河海大学常州校区为学生们提供了闲暇时光的娱乐生活,为我们准备了礼堂的电影播放服务。

最初由于礼堂的电影播放知道的人少,所以不会显得不便。

随着电影播放的需求火爆,和学生们便宜看电影的需求,该系统的建立不但给管理者带来了方便,也节省了工作时间从而提高了工作效率。

需求分析是在于要弄清用户对开发的数据库应用系统的确切要求。

数据库设计的第一步是明确数据库的目的和如何使用,也就是说需要从数据库中得到哪些信息。

明确目的之后,就可以确定您需要保存哪些主题的信息(表),以及每个主题需要保存哪些信息(表中字段)。

在构造系统时,首先从需求出发构造数据库表,然后再由数据库表结合需求划分系统功能模块。

这样,就把一个大的系统分解成了几个小系统。

这里把系统的层次划分为了四个部分:

学生登录管理、电影订票、电影评论、电影信息查询能够实现以下功能:

为订票的学生进行统一的管理;

②能够实现对订票的有效管理;

③能够进行电影的评论;

④能够进行电影信息的查询功能;

2.1业务需求

从读者角度考虑的业务流程图:

2.2功能需求

a.系统能对电影信息进行管理。

b.系统不需要管理学生除姓名以外的信息。

对每一名学生用户最多预订的电影数目为5场。

c.预订时,管理人员记录学生的姓名、预订电影名称和预订日期。

d.操作人员可以根据电影名称、放映时间、两者之一或两者的任意组合查询电影信息。

e.操作人员可以查询预订某电影的所有学生的姓名;

也可以查询某学生预订的所有电影名称;

还可以根据学生的姓名、电影名称查询学生预订时间、购票时间

g.系统由礼堂工作人员操作。

分为:

系统管理员、,电影信息管理员和票务管理员,每人对应相应的权限。

h.报表的打印输出。

i.所有操作人员凭帐号和密码登陆系统。

2.3数据需求

系统处理的对象有:

学生信息:

学生编号,姓名,性别,学号

管理员信息:

管理员编号,姓名,性别,权限,登录口令,住址,电话

电影信息:

电影编号,电影名称,电影公司,电影时长,摘要,存储位置,产地分类,发行日期

订票信息:

电影编号,学生编号,电影名,订票日期,播放日期,播放时间,票价

订票历史信息:

电影编号,学生编号,电影,订票日期,播放日期

讨论信息:

学生编号,电影编号,电影名,讨论信息

数据流图和数据字典如下:

顶层数据流图:

第1层数据流图:

(学生登录,管理员查询,管理员修改)

第2层数据流图:

(读者订票)

第3层数据流图:

(学生讨论)

数据字典如下:

名字:

电影信息

别名:

电影表

描述:

视频库中所有电影的各种信息和位置描述

定义:

电影信息=电影编号+电影名称+电影时长+电影大小+电影位置+播放次数+电影提供者

位置:

提供给服务器处理

购票信息

购票记录

对所有购票学生信息和电影信息记录

购票信息=学生学号+学生姓名+电影编号+电影名称+电影时长+座位信息+购票时间

服务器保存,使用时输出、

咨询信息

咨询记录

最新电影和评论的记录

咨询信息=电影名称+上映时间+学生推荐度

学生信息

学生数据库

保存所有在校学生信息的表

学生信息=学生学号+学生姓名+学生登录密码

电影编号

唯一地标识电影表中一个特定电影的关键域

电影编号=8{字符}8

电影信息

购票信息

电影名称

电影的主要信息

电影名称=1{字符}20

咨询信息

电影时长

电影播放所需的时间

电影时长=1{数字}3

电影大小

电影的存储大小

电影大小=1{数字}4

电影位置

电影在服务器中位置的描述

电影位置=0{字母或符号}20

播放次数

电影是否被播放的记录

播放次数=0{数字}1

电影提供者

管理员获得电影的渠道

电影提供者=(字符)

学生学号

唯一地标识学生表中一个特定学生的关键域

学生学号=10{数字}10

学生信息

学生姓名

学生学号所对应的主要学生信息

学生姓名=2{字符}4

座位信息

学生购票时所选的座位编号

座位信息=行号+列号

购票时间

购票时间的记录

购票时间=年+月+日

上映时间

新电影的上映时间

上映时间=年+月

学生推荐度

新电影的推荐程度

学生推荐度=(数字)

学生登录密码

学生订票实名制的登录密码

登录密码=6{数字}6

学生信息

年的记录

年=[2011|2012]

月的记录

月=[1|2|3|4|5|6|7|8|9|10|11|12]

购票时间

日的记录

日=[1|2|3……|31]

表1.3处理逻辑列表

处理编号

处理功能

处理过程

PR-1

判断学生查询涉及的功能模块

已有电影信息模块、学生信息模块、学生类别信息模块、订票信息模块、订票历史信息模块、管理员模块:

先确定查询所涉及的功能模块;

然后,根据要查询的内容,确定查询数据流向;

最后显示查询结果。

PR-2

判断电影、学生修改要涉及的模块,同时把相应的修改数据传到相应的模块之中

已有电影信息模块、学生信息模块、学生类别信息模块、管理员信息模块:

先确定更新所涉及的功能模块;

然后,把更新信息传送到相应的模块中;

最后,进行相应的更新操作。

2.4安全性和完整性要求

1)安全性要求

系统安全性要求体现在数据库安全性、信息安全性和系统平台的安全性等方面。

安全性先通过视图机制,不同的用户只能访问系统授权的视图,这样可提供系统数据一定程度上的安全性,再通过分配权限、设置权限级别来区别对待不同操作者对数据库的操作来提高数据库的安全性;

系统平台的安全性体现在操作系统的安全性、计算机系统的安全性和网络体系的安全性等方面。

2)完整性要求

系统完整性要求系统中数据的正确性以及相容性。

可通过建立主、外键,使用check约束,或者通过使用触发器和级联更新。

3概要设计

3.1系统结构与组成

系统开发的总体目标是实现电影订票的系统化和自动化,缩短观影者的等待时间,减轻工作人员的工作量,方便工作人员对它的操作,提高管理的质量和水平,做到高效、智能化管理,从而达到提高礼堂电影播放效率的目的。

主要任务是对学生信息、管理员信息、电影信息、订票信息、播放信的基本信息的操作及外理。

系统采用C/S结构。

系统组成如下:

3.2概念数据库设计

概念设计阶段主要是将需求分析阶段得到的用户需求抽象为信息结构(概念模型)的过程,它是整个数据库设计的关键。

E-R图如下:

(3)各E-R图各实体的属性如下所示:

讨论:

Discuss(discuss_ID,stu_ID,film_ID,discuss_Detail,)

FilmMessage(film_ID,film_Name,film_Place,film_Time,film_Show,film_Image)

登陆:

Login(stu_ID,Password,stu_Name)

电影播放:

Show(show_ID,film_ID,film_Name,show_Place,show_Time)

各E-R图中联系的属性如下所示:

购票:

Ticket(film_ID,show_ID,ticket_ID,cost,seat)

3.3逻辑数据库设计

以上的概念设计阶段是独立于任何一种数据模型的,但是逻辑设计阶段就与选用的DBMS产品发生关系了,系统逻辑设计的任务就是将概念设计阶段设计好的基本E-R图转换为选用DBMS产品所支持的数据模型相符合的逻辑结构。

具体内容包括:

将E-R图转换成关系模型、模型优化、数据库模式定义、用户子模式设计。

3.3.1将E-R图转换为关系模型

实体型转换为关系模式。

实体的属性就是关系的属性,实体的码就是关系的码。

对于实体间的联系则有以下不同的情况:

一个m:

n联系转换为一个关系模式。

与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合。

一个1:

n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并。

如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为n端实体的码。

一个1:

1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。

三个或三个以上实体间的一个多元联系可以转换为一个关系模式。

与该多元联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合具有相同码的关系模式可合并。

由于读者类别与读者、馆室与图书的联系方式是1:

n(一对多),可以将其之间的联系与n端实体读者、图书合并,管理员与图书之间的维护联系也是1:

n(一对多),同样也将其之间的联系与n端实体合并,而读者与图书之间的借阅和归还联系方式则是n:

m(多对多),这样要把它们之间的联系转化为独立的关系模式,读者与管理员之间的罚款联系是m:

n(多对多),将其联系也转化成独立的关系模式,具体的基本E-R图向关系模型的转化如下:

Discuss(discuss_ID,stu_ID,film_ID,discuss_Detail)

3.3.3数据库模式定义

表2.1电影信息表

列名

数据类型

可否为空

说明

film_ID

Int

notnull

film_Name

Char(50)

film_Place

Char(20)

电影产地

film_Time

datetime

电影上映时间

film_Show

电影播放次数

film_Image

Text

电影海报

表2.2讨论表

discuss_ID

bigint

讨论留言编号

stu_ID

int

discuss_Detail

char(256)

讨论细节

表2.3学生登陆表

stu_ID

学生编号

Password

登录密码

stu_Name

char(10)

表2.4购票表

show_ID

电影场次

ticket_ID

int

电影票编号

cost

票价

seat

座位

表2.5电影播放表

播放编号

char(50)

show_Place

char(20)

播放地点

show_Time

播放时间

3.3.4视图(用户子模式)定义

表2.7用户子模式定义

编号

用户子模式(View)

作用(共性:

提供数据保密和安全保护机制)

V-1

viFilmMessage

便于查询和修改电影的基本信息

V-2

viTicket

为了将完整的票务信息提取出来

表2.8票据基本信息视图

Show_ID

Longint

Film_ID

Film_Name

Char

Show_Time

Date_Time

电影播放时间

Film_show

电影播放

Film_TIme

电影时间

Ticket_ID

票编号

Cost

票价格

座位号

表2.9电影和播放信息视图

Film_Place

电影发行地

Show_Place

char

电影播放地点

Datatime

4.详细设计与实现

4.1建立数据库、数据表、视图、索引

4.1.1建立数据库

createdatabaseFILM;

4.1.2建立数据表

(1)讨论表的建立:

createtableDiscuss(

discuss_IDbigintnotnull,

stu_IDbigintnull,

film_IDintnull,

discuss_Detailchar(256)null,

discuss_Timedatetimenull,

constraintPK_DISCUSSprimarykeynonclustered(discuss_ID),

foreignkey(stu_ID)referencesLogin,

foreignkey(film_ID)referencesFilmMessage

(2)电影信息表的建立:

createtableFilmMessage(

film_IDintnotnull,

film_Namechar(50)notnull,

film_Placechar(20)null,

film_Timedatetimenull,

film_Showintnull,

film_Imagetextnull,

constraintPK_FILMMESSAGEprimarykeynonclustered(film_ID)

(3)学生登陆表的建立:

createtableLogin(

stu_IDbigintnotnull,

Passwordbigintnotnull,

stu_Namechar(10)null,

constraintPK_LOGINprimarykeynonclustered(stu_ID)

(4)电影播放表的建立:

createtableShow(

show_IDbigintnotnull,

film_Namechar(50)null,

show_Placechar(20)null,

show_Timedatetimenull,

constraintPK_SHOWprimarykeynonclustered(show_ID),

(5)购票表的建立:

createtableTicket(

ticket_IDintnotnull,

ticket_Timedatetimenull,

constraintPK_TICKETprimarykey(film_ID,show_ID),

foreignkey(film_ID)referencesFilmMessage,

foreignkey(show_ID)referencesShow

4.1.3建立视图

(1)用于查询电影基本信息的视图定义如下:

createviewviFilmMessage(电影编号,电影名,电影产地,电影海报)

as

selectfilm_ID,film_Name,film_Place,film_Image

fromFilmMessage

(2)用于读者基本信息查询的视图定义如下:

createviewviTicket(票据编号,电影编号,播放编号,价格)

selectticket_ID,film_ID,show_ID,cost

fromTicket

4.1.4建立索引

createindexdis_FKonDiscuss(stu_IDASC)

createindexfilm_dis_FKonDiscuss(film_IDASC)

createindexfilm_news_FKonNews(film_IDASC)

createindexRelationship_2_FKonShow(film_IDASC)

)4.1.5建立触发器

1.当删除电影信息中的一行时,将播放表中的信息也一并删除

createtriggerfilm_deleteonFilmMessage

fordelete

deletefromShow

whereShow.film_IDin(selectfilm_IDfromdeleted)

2.当单个学生订票数超过5时,禁止继续订票

createtriggerticket_insertonTicket

forinsert

declare@c1int

select@c1=count(*)fromTicketwherestu_No=(selectstu_Nofrominserted)

if(@c1>

=5)

begin

rollback

print'

超过了5张票,不能再订'

end

4.2数据入库

系统包括订票基本信息管理、学生基本信息管理、管理员信息管理、新闻信息管理、查询信息管理等四大功能模块,共有6张基本表,采用事先在Excel中录入数据,然后使用SQLServer2000数据导入/导出向导功能,直接将数据导入到相应的基本表中。

4.3创建各个功能的存储过程

系统共创建了3个存储过程,具体如下:

1、film_show_name存储过程用于电影信息和播放信息的模糊查询

createprocedurefilm_show_name(@fnamevarchar(20))

selectFilmMessage.film_IDas电影编号,film_Nameas电影名,film_Placeas电影产地,show_Timeas播放时间,show_Placeas播放地点

fromFilmMessag

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 理学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1