影院管理系统Word格式.docx

上传人:b****7 文档编号:22515408 上传时间:2023-02-04 格式:DOCX 页数:23 大小:107.23KB
下载 相关 举报
影院管理系统Word格式.docx_第1页
第1页 / 共23页
影院管理系统Word格式.docx_第2页
第2页 / 共23页
影院管理系统Word格式.docx_第3页
第3页 / 共23页
影院管理系统Word格式.docx_第4页
第4页 / 共23页
影院管理系统Word格式.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

影院管理系统Word格式.docx

《影院管理系统Word格式.docx》由会员分享,可在线阅读,更多相关《影院管理系统Word格式.docx(23页珍藏版)》请在冰豆网上搜索。

影院管理系统Word格式.docx

需求分析的过程

影院为了方便管理,需开发一个管理系统。

该系统分为两个部分,首先方便顾客查看所有影片信息,然后确定购买其所需要的的电影票,由影院雇员查询顾客是否为会员并提供会员办理。

其次方便影院经理查询雇员信息与影片、影厅信息,以便于合理排片。

数据字典与流程图

数据流程分析是把数据在组织内部的流动情况抽象地独立出来,舍去了具体的组织机构等,以发现和解决数据流中的问题。

顾客购票流程图

经理管理流程图

1调查用户需求

1影院职员办公需求

●功能:

可以查到顾客的会员信息,影片、影厅的信息。

2客购票需求

●购票

●办理会员卡

3经理管理需求

●查询功能:

◆影片信息

◆影厅信息

●管理功能

④影片信息需求

◆导演

◆主演

◆场次

◆上映时间

◆影片格式

系统框架

在调查完了用户需求之后,就要开始分析用户需求。

在此,我们采用自顶向下的结构化分析方法(SA方法)。

首先,定义全局概念结构的框架,如图所示。

经理管理系统需要进一步细化。

将所有子系统全部细化。

将所有用户需求分析完毕之后,就要开始构造数据字典了。

数据结构定义如表所示。

表数据结构定义

数据结构名

含义说明

组成

影院职员

定义了影院职员的有关信息

职员编号、职员姓名、职员性别、联系电话

顾客

定义了顾客有关信息

顾客编号、姓名、性别

影片信息

定义了影片

的有关信息

电影编号、电影名、导演、主演、上映时间、影片格式

会员

定义了会员相关有关信息

会员编号、会员姓名、会员联系电话、

会员级别

影厅信息

定义了影厅有关信息

影厅号、座位数、影厅规格

影院经理

定义了经理有关信息

经理编号、经理姓名、经理联系电话、

经理性别

电影票信息

定义了电影票有关信息

电影票编号、场次、时间、座位号

第三章概念结构设

概念结构设计的方法与步骤

概念结构设计的方法

概念设计阶段我采用自底向上的方法,即自顶向下的进行需求分析,然后再自底向上的进行概念结构设计。

对已经细化到无法再分的阶段逐步集成在一起,最终合成一个全局概念模式。

3.1.3概念结构设计的步骤

第一步是进行局部视图的设计:

由于高层的数据流图只能反映系统的概貌,而中层流图能较好的反映系统中各局部应用的子系统组成。

因此我们先逐一的设计分E-R图。

第二步是进行视图的集成:

各子系统的E-R图设计好之后,下一步就是要将所有的分E-R图合成一个系统的总E-R图,一般有两个方式,多个分E-R图一次集成,另一种是一次集成两个分E-R图。

我想采用一次集成两个分E-R图的方式。

数据抽象与局部视图设计

视图的集成

1

1N1N

N

M

经过逐步细化再进行每两个一集成初步形成一个E-R图,最后得到图总体概念结构E-R图。

第四章逻辑结构设计

E-R图向关系模型的转换

影院职员(职员编号,职员姓名,职员性别,联系电话)

顾客(顾客编号,职员编号,姓名,性别)

会员卡(会员编号,会员姓名,会员联系电话,会员级别,顾客编号)

电影票(顾客编号,影厅号,电影票编号,场次,时间,座位号,购买数量)

影院经理(经理编号,经理姓名,经理联系电话,经理性别)

管理(影厅号,电影编号,经理编号)

影厅(影厅号,座位数,影厅规格)

影片信息(电影编号,电影名,导演,主演,上映时间,影片格式)

数据模型的优化

将转化的关系模式进行优化,最终达到第三范式。

1、确定数据依赖

职员编号→职员姓名,职员编号→职员性别,职员编号→联系电话

(顾客编号,职员编号)→姓名,(顾客编号,职员编号)→性别

会员编号→会员姓名,会员编号→会员联系电话,会员编号→会员级别

(顾客编号,影厅号,电影票编号)→场次,(顾客编号,影厅号,电影票编号)→时间,(顾客编号,影厅号,电影票编号)→座位号,(顾客编号,电影票编号)→购买数量

经理编号→经理姓名,经理编号→经理联系电话,经理编号→经理性别

影厅→座位数,影厅→影厅规格

电影编号→电影名,电影编号→导演,电影编号→主演,电影编号→上映时间,

电影编号→影片格式

2、对各关系模式间数据依赖进行极小化处理,消除冗余

职员编号→职员姓名,职员编号→职员性别,职员编号→联系电话,(顾客编号,职员编号)→姓名,(顾客编号,职员编号)→性别,会员编号→会员姓名,会员编号→会员联系电话,会员编号→会员级别,顾客编号,影厅号,电影票编号)→场次,(顾客编号,影厅号,电影票编号)→时间,顾客编号,影厅号,电影票编号)→座位号,(顾客编号,电影票编号)→购买数量,经理编号→经理姓名,经理编号→经理联系电话,经理编号→经理性别,

影厅→座位数,影厅→影厅规格,电影编号→影片格式,电影编号→电影名,电影编号→导演,电影编号→主演,电影编号→上映时间,

3、看这些模式是否符合要求,确定是否要对某些模式进行合并或者分解,最终分解成第三范式:

(订单号,电话号,身份证号)(订单号,旅客姓名)(旅客姓名,取票时间,性别,工作单位,机票类型)(旅客姓名,航班号)(旅客姓名,座位号)(航班号,座位号,机票类型)(航班号,起飞地,目的地,起飞时间)

基本表结构

职员信息表:

staff

字段名

数据类型

长度

是否为空

主/外键

描述

staffnumber

char

10

主键

职员编号

staffname

varchar

20

职员姓名

Staffsex

2

职员性别

Staffphonenumber

联系电话

顾客信息表:

customer

customernumber

顾客编号

外键

Customername

varcharr

姓名

Customersex

性别

会员卡信息表:

member

Membernumber

会员编号

membername

会员姓名

Member

phonenumber

会员联系电话

memberlevel

电影票信息表:

ticket

locations

影厅号

ticketnumber

电影票编号

number

场次

time

datetime

时间

seatnumber

座位号

purchasequantity

int

购买数量

经理信息表:

manager

managernumber

经理编号

manager'

sname

经理姓名

manager

经理联系电话

managersex

管理表:

GL

filmnumber

电影编号

影厅信息表:

screen

Seating

Int

座位数

Screens

specifications

影厅规格

电影信息表:

film

name

电影名

director

导演

star

主演

Showtime

上映时间

videoformat

影片格式

第五章数据库的实现

数据库的建立

建数据库,SQL语句:

CreatedatabaseYYGL

ONPRIMARY

(NAME=YYGL,

FILENAME='

D:

\袁博文\'

SIZE=4096KB,

MAXSIZE=UNLIMITED,

FILEGROWTH=1024KB

LOGON

(NAME=YYGL_log,

FILENAME='

SIZE=1024KB,

MAXSIZE=2048GB,

FILEGROWTH=10%

数据库基本结构的建立

1、基本表的建立

(1)职员信息表:

STAFF

USEYYGL

GO

CREATETABLESTAFF

(staffnumberchar(10)NOTNULL,

staffnamevarchar(20)NOTNULL,

staffsexchar

(2)NOTNULL,

staffphvarchar(20)NOTNULL,

PRIMARYKEY(staffnumber)

(2)顾客信息表:

CUSTOMER

CREATETABLECUSTOMER

(customernumberchar(10)NOTNULL,

Customernamevarchar(20)NOTNULL,

Customersexchar

(2)NOTNULL,

Staffnumberchar(10)NOTNULL,

PRIMARYKEY(staffnumber,customernumber),

FOREIGNKEY(staffnumber)REFERENCESSTAFF(staffnumber)

(3)会员卡信息表:

MEMBER

CREATETABLEMEMBER

(membernumberchar(10)NOTNULL,

membernamevarchar(20)NOTNULL,

memberphvarchar(20)NULL,

memberlevelvarchar(10)NOTNULL,

customernumberchar(10)NOTNULL,

staffnumberchar(10)NOTNULL,

PRIMARYKEY(membernumber),

FOREIGNKEY(staffnumber,customernumber)REFERENCESCUSTOMER(staffnumber,customernumber)

(4)电影票信息表:

TICKET

CREATETABLETICKET

locationschar(10)NOTNULL,

ticketnumberchar(10)NOTNULL,

numbervarchar(10)NOTNULL,

timedatetimeNOTnull,

seatnumbervarchar(10)NOTNULL,

purchasequantityintNOTNULL,

PRIMARYKEY(staffnumber,customernumber,locations,ticketnumber),

FOREIGNKEY(staffnumber,customernumber)REFERENCESCUSTOMER(staffnumber,customernumber),

FOREIGNKEY(locations)REFERENCESSCREEN(locations)

(5)经理信息表:

MANAGER

CREATETABLEMANAGER

(managernumberchar(10)NOTNULL,

managernamevarchar(20)NOTNULL,

managersexchar

(2)NOTNULL,

managerphvarchar(20)NOTNULL,

PRIMARYKEY(managernumber)

(6)管理表:

CREATETABLEGL

filmnumberchar(10)NOTNULL,

PRIMARYKEY(filmnumber,locations),

FOREIGNKEY(locations)REFERENCESSCREEN(locations),

FOREIGNKEY(managernumber)REFERENCESMANAGER(managernumber),

FOREIGNKEY(filmnumber)REFERENCESFILM(filmnumber)

(7)影厅信息表:

SCREEN

CREATETABLESCREEN

(locationschar(10)NOTNULL,

seatingintNOTNULL,

screensvarchar(10)NULL,

PRIMARYKEY(locations)

(8)电影信息表:

FILM

CREATETABLEFILM

(filmnumberchar(10)NOTNULL,

namevarchar(10)NOTNULL,

directorvarchar(10)NULL,

starvarchar(10)NULL,

showtimedatetimeNULL,

videoformatvarchar(10)NULL,

PRIMARYKEY(filmnumber)

2、插入数据

INSERTINTOSTAFF

VALUES('

006'

'

于开晨'

M'

INSERTINTOCUSTOMER

0201'

赵红'

F'

001'

INSERTINTOFILM

020'

智取威虎山'

徐克'

张涵予'

INSERTINTOMANAGER

0101'

胡星'

'

INSERTINTOMEMBER

1001'

1'

INSERTINTOSCREEN

200'

2'

3、视图建立

建立管理人员为男性的视图A:

4、建立索引

为会员卡信息表的memberlevel列创建名为A的索引

useYYGL

createindexA

onMEMBER(memberlevel)

5、创建游标

声明一个名为A的游标,用于读取由001号雇员服务的顾客

DECLAREAAcursor

FORSELECT*

FROMCUSTOMER

wherestaffnumber='

openAA

fetchfromAA

6、存储过程的创建

createprocedure[dbo].[MEMBER](@membernamevarchar(20))

AS

insertintoMEMBER(membername)

values(@membername)

7、触发器建立

创建一个触发器B,使在对会员卡信息表进行修改插入时都会自动提示:

createTRIGGERB

onMEMBER

for

INSERT,UPDATE

PRINT'

对会员表进行插入或修改'

验证:

更改“赵红“为”赵宏“:

安全性的实现

1、利用图形化工具

为了提高安全性,建立系统用户,SQLSERVER用户,数据库用户,写出你所建立的三个用户名。

为SQLSERVER用户,数据库用户分配角色,写出分配的角色名。

(1)系统用户名

SQLSERVER用户

数据库名

角色创建

2、利用Transact—SQL

设计一个SQLserver登录账户,并设置密码,写出相应的SQL语句

代码:

sp_addlogin’YYGL’,’123456’

为登陆账户,设计创建一个数据库用户,写出相应的SQL语句

sp_grantbaccess’YYGL’,’123456’

为数据库用户创建数据库角色,写出相应的SQL语句

sp_addrolemember’db_owner’,’login’

完整性的实现

1、UNIQUE约束

altertableMEMBER

addconstraintPK_ZKZH

primarykeyclustered(ZKZH)

2、CHECK约束

addconstraintcheck_CJ

check(CJ>

=80andCJ<

100)

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

当前位置:首页 > 成人教育 > 自考

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

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