景点门票销售管理系统数据库设计.docx

上传人:b****6 文档编号:16056854 上传时间:2023-07-10 格式:DOCX 页数:17 大小:140.36KB
下载 相关 举报
景点门票销售管理系统数据库设计.docx_第1页
第1页 / 共17页
景点门票销售管理系统数据库设计.docx_第2页
第2页 / 共17页
景点门票销售管理系统数据库设计.docx_第3页
第3页 / 共17页
景点门票销售管理系统数据库设计.docx_第4页
第4页 / 共17页
景点门票销售管理系统数据库设计.docx_第5页
第5页 / 共17页
景点门票销售管理系统数据库设计.docx_第6页
第6页 / 共17页
景点门票销售管理系统数据库设计.docx_第7页
第7页 / 共17页
景点门票销售管理系统数据库设计.docx_第8页
第8页 / 共17页
景点门票销售管理系统数据库设计.docx_第9页
第9页 / 共17页
景点门票销售管理系统数据库设计.docx_第10页
第10页 / 共17页
景点门票销售管理系统数据库设计.docx_第11页
第11页 / 共17页
景点门票销售管理系统数据库设计.docx_第12页
第12页 / 共17页
景点门票销售管理系统数据库设计.docx_第13页
第13页 / 共17页
景点门票销售管理系统数据库设计.docx_第14页
第14页 / 共17页
景点门票销售管理系统数据库设计.docx_第15页
第15页 / 共17页
景点门票销售管理系统数据库设计.docx_第16页
第16页 / 共17页
景点门票销售管理系统数据库设计.docx_第17页
第17页 / 共17页
亲,该文档总共17页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

景点门票销售管理系统数据库设计.docx

《景点门票销售管理系统数据库设计.docx》由会员分享,可在线阅读,更多相关《景点门票销售管理系统数据库设计.docx(17页珍藏版)》请在冰点文库上搜索。

景点门票销售管理系统数据库设计.docx

景点门票销售管理系统数据库设计

 

景点门票销售管理系统

数据库设计

 

学生姓名:

李丙崇

学号:

2010508009

学生姓名:

任欣月

学号:

2010508041

专业:

计算机科学与技术

指导老师:

于宝华

1引言

随着全球信息化的发展,我们也步入信息时代,各类管理也更加系统化,公司利用管理信息系统来管理各类业务已经非常普遍。

各类系统也相应的得到飞速发展,为了让我们的管理更加系统,更加清晰,更加科学,从而也开发了一个简单,易操作的管理管理系统.

1。

1编写目的

根据门票销售管理的特点,对被开发软件系统的主要功能、性能进行完整描述,为软件开发进行详细设计和编程提供基础.为软件提供测试和验收的依据,即为选取测试用例和进行验收的依据。

1。

2背景

a。

该软件系统的名称:

门票管理信息系统;

b.本项目的任务提出者:

石河子大学

c.本项目的开发者:

李丙崇,任欣月

d.本项目用户:

景点门票销售部

1。

3参考资料

[1]王珊,萨师煊.数据库系统概论[M].高等教育出版社,2006年5月第4版

[2]郑人杰,马素霞,殷人昆.软件工程概率[M]。

机械工业出版社,2009年11月

[3]马晓梅。

SQLServer实验指导[M]。

清华大学出版社,2009年9月第3版

2需求分析

2。

1目标

这个门票管理系统主要是处理旅客买票,订票,退票,以及各类查询结算。

该系统针对的用户是门票销售部门,由于门票销售,查询以及计算各天或者不同时间段的收入比较繁琐,此系统方便简单的实现了这些功能,使得管理员与职工方便很多,让这个门票销售都变得条条有理.

2.2运算坏境

(1)软件资源

服务器端软件选择的具体说明:

操作系统:

Windows2007Server或WindowsXP.

数据库管理系统:

SQLServer.

开发工具:

visualstudio2008.

软件平台:

windows+iis+mssql.

客户端软件选择的具体说明:

web浏览器。

2。

3需求概述

本系统的开发是为了提高门票销售以及管理的效率,尽可能杜绝各个销售环节中可能出现的资金流失不明现象,满足系统化的门票管理域收入需求。

系统功能主要包括:

登陆管理(包括管理员登陆以及职工登陆,职工注册情况),系统管理(系统启用,及其系统截止),直接销售(个人购买与团购),订票管理(订票与查看订票状态),退票管理(处理当天所要退的票),查询管理(按时间查询,按职工号查询,游客种类查询,按时间票号查询,按时间,职工号查询,按时间,游客种类查询,以及当天销售查询),结算管理(具体时间查询以及时间段查询),最后是系统简介.

3结构设计

3。

1逻辑结构设计

3。

1.1局部E-R图

图4.营业员E-R图

图5.游客E-R图

 

图6.门票E-R图

图7.门票类型E—R图

3。

1。

2全局E—R图

图8总体E-R图

3.1.3关系模式

Admin_T(Sell_operator,User_name,password,Sex,Realname,Cardnumber,Age,Phone,User_type)

该表为管理表,表项包括销售营业员,用户姓名,密码,性别,真实姓名,卡号,年龄,电话号码,用户类型的信息。

主键为销售营业员。

Dd_T(Order_ID,Custom_ID,Ticker_ID,Ticker_type,Ticker_Price,Sell_operator,Sell_date,Sell_month)

该表为订单表,表项有订单号,游客号,门票号,门票类型,门票价格,销售营业员,销售日期和销售月份.该表的主键为订单号,外键有游客号,门票号,门票类型,门票价格和销售营业员.

Custom_T(Custom_ID,Custom_name,Sex,Age,Cardnumber,Custom_type,Custom_phone)

该表为游客信息表,表项有游客号,游客姓名,身份证号,游客类型,游客电话.该表主键为游客号,无外键。

Ticket_summary(Sell_ID,Ticket_type,Sell_amount,Sell_money,Sell_month)

该表为门票信息统计表,表项有出售号码,门票类型,出售时间,出售月份,出售价格。

该表主键为出售号,外键为门票类型。

Ticket_T(Ticket_type,Ticket_type_name,Ticket_price,Ticket_Count,Ticket_comment,Date)

该表为门票信息表,表项有门票类型,类型名,门票价格,门票数量,日期。

主键为门票类型,无外键。

Ticket_List(Ticket_ID,Ticket_type,Sell_flag)

该表为门票属性信息表,表项为门票号,门票类型,和是否出售标记.主键为门票号,外键为门票类型。

3。

1.1关系图

3。

2物理结构设计

表1Admin_T表

列名

数据类型

允许空

Sell_operator

nvarchar(10)

NONULL

User_name

varchar(20)

NONULL

Password

varchar(20)

NONULL

Sex

char(5)

NULL

Realname

varchar(20)

NULL

cardnumber

char(18)

NULL

Age

int

NULL

Phone

char(11)

NULL

User_type

char(10)

NULL

表2Custom_T表

列名

数据类型

允许空

Custom_ID

char(10)

NONULL

Custom_name

varchar(20)

NONULL

Sex

char(5)

NULL

Age

int

NULL

Cardnumber

char(18)

NULL

Custom_type

char(10)

NULL

Custom_phone

char(11)

NULL

表3dd_T表

列名

数据类型

允许空

Order_ID

char(10)

NONULL

Custom_ID

char(10)

NONULL

Ticket_ID

char(17)

NONULL

Ticket_type

char(3)

NONULL

Ticket_Price

decimal(5,2)

NONULL

Sell_operator

nvarchar(10)

NONULL

Sell_date

datetime

NONULL

Sell_month

nvarchar(10)

NONULL

表4Ticket_List表

列名

数据类型

允许空

Ticket_ID

char(17)

NONULL

Ticket_type

char(3)

NULL

Sell_flag

int

NULL

表5Ticket_summary表

列名

数据类型

允许空

Sell_ID

char(20)

NONULL

Ticket_type

char(3)

NONULL

Sell_date

datetime

NULL

Sell_amount

int

NULL

Sell_money

decimal(5,2)

NULL

Sell_month

nvarchar(10)

NULL

表6Ticket_T表

列名

数据类型

允许空

Ticket_type

char(3)

NULL

Ticket_type_name

char(50)

NULL

Ticket_price

decimal(5,2)

NONULL

Ticket_Count

int

NONULL

Ticket_comment

char(200)

NONULL

Date

datetime

NONULL

 

4。

存储过程

4.1统计指定日期的门票销售情况

createProcedurePro_QTicsinf

@starttimedatetime,@endtimedatetime,@sSell_amount_outintoutput,

@sSell_money_outdecimal(5,2)output

ASselect@sSell_amount_out=count(Ticket_ID),

@sSell_money_out=sum(dd_T.Ticket_Price)

fromdd_T,Ticket_T

whereTicket_T。

Ticket_type=dd_T.Ticket_typeandSell_datebetween@starttimeand@endtime

declare@starttimedatetime,@endtimedatetime,@sSell_amount_outint,

@sSell_money_outdecimal(5,2)

select@starttime='2013/1/1300:

00:

00'

select@endtime='2013/1/1319:

40:

00’

execPro_QTicsinf@starttime,@endtime,@sSell_amount_outoutput,@sSell_money_outoutput

select@sSell_amount_outas门票数量,@sSell_money_outas金额

4。

2统计指定月份的门票销售情况

createProcedurePro_QTicsminf

@sSell_monthnvarchar(10),@sSell_amount_outintoutput,@sSell_money_outdecimal(5,2)output

ASselect@sSell_amount_out=count(Ticket_ID),

@sSell_money_out=sum(dd_T.Ticket_Price)

fromdd_T,Ticket_T

whereTicket_T。

Ticket_type=dd_T.Ticket_typeandSell_month=@sSell_month

declare@sSell_monthnvarchar(10),@sSell_amount_outint,

@sSell_money_outdecimal(5,2)

select@sSell_month='2013/1'

execPro_QTicsminf@sSell_month,@sSell_amount_outoutput,@sSell_money_outoutput

select@sSell_amount_outas门票数量,@sSell_money_outas金额

4。

3统计指定日期各种价格的门票销售情况

createProcedurePro_QTicsPinf

@starttimedatetime,@endtimedatetime,@sTicket_typechar(3),

@sTicket_Price_outdecimal(5,2)output,@sSell_amount_outintoutput,

@sSell_money_outdecimal(5,2)output

ASselect

@sTicket_Price_out=Ticket_Price,

@sSell_amount_out=count(Ticket_ID),

@sSell_money_out=sum(dd_T。

Ticket_Price)

fromdd_T

where@sTicket_type=dd_T.Ticket_typeandSell_datebetween@starttimeand@endtime

groupbyTicket_Price

declare@starttimedatetime,@endtimedatetime,@sTicket_typechar(3),

@sTicket_Price_outdecimal(5,2),

@sSell_amount_outint,@sSell_money_outdecimal(5,2)

select@starttime=’2013/1/1300:

00:

00'

select@endtime=’2013/1/1319:

40:

00’

select@sTicket_type='T01’

execPro_QTicsPinf@starttime,@endtime,@sTicket_type,@sTicket_Price_outoutput,@sSell_amount_outoutput,@sSell_money_outoutput

select@sTicket_Price_outas门票价格,@sSell_amount_outas门票数量,@sSell_money_outas门票金额

select@sTicket_type=’T02'

execPro_QTicsPinf@starttime,@endtime,@sTicket_type,@sTicket_Price_outoutput,@sSell_amount_outoutput,@sSell_money_outoutput

select@sTicket_Price_outas门票价格,@sSell_amount_outas门票数量,@sSell_money_outas门票金额

select@sTicket_type='T03'

execPro_QTicsPinf@starttime,@endtime,@sTicket_type,@sTicket_Price_outoutput,@sSell_amount_outoutput,@sSell_money_outoutput

select@sTicket_Price_outas门票价格,@sSell_amount_outas门票数量,@sSell_money_outas门票金额

4.3统计指定营业员指定日期的收费情况

createProcedurePro_QTicsCinf

@starttimedatetime,@endtimedatetime,@sSell_operatornvarchar(10),

@sSell_amount_outintoutput,@sSell_money_outdecimal(5,2)output

ASselect

@sSell_amount_out=count(Ticket_ID),

@sSell_money_out=sum(dd_T.Ticket_Price)

fromdd_T

where@sSell_operator=dd_T.Sell_operatorandSell_datebetween@starttimeand@endtime

groupbySell_operator

declare@starttimedatetime,@endtimedatetime,@sSell_operatornvarchar(10),

@sSell_amount_outint,@sSell_money_outdecimal(5,2)

select@starttime=’2013/1/1300:

00:

00'

select@endtime=’2013/1/1323:

40:

00'

select@sSell_operator='001'

execPro_QTicsCinf@starttime,@endtime,@sSell_operator,@sSell_amount_outoutput,@sSell_money_outoutput

select@sSell_operatoras营业员,@sSell_amount_outas销售门票数量,@sSell_money_outas收费总金额

select@sSell_operator=’002’

execPro_QTicsCinf@starttime,@endtime,@sSell_operator,@sSell_amount_outoutput,@sSell_money_outoutput

select@sSell_operatoras营业员,@sSell_amount_outas销售门票数量,@sSell_money_outas收费总金额

5触发器

a。

有人买票时,自动更改门票标志位

createtriggerTRIGGER_BUY_TIC

ondd_Tforinsert

as

begin

Declare@Ticket_ID_INchar(17)

Select@Ticket_ID_IN=Ticket_IDfrominserted

updateTicket_ListsetSell_flag=1

whereTicket_ID=@Ticket_ID_IN

end

insertintodd_Tvalues(’O006’,’1005’,’S0006’,'T02’,40,’001’,'2013/2/1319:

50:

00',’2013/2’)

b.若有人退票,对各表所有有关该人的信息进行级联删除

createtriggerTRiGGER_EXIT_TIC

ondd_Tfordelete

as

begin

Declare@Order_ID_DELchar(10),@Custom_ID_DELchar(10),@Ticket_ID_ALTchar(17)

Select@Order_ID_DEL=Order_ID,@Custom_ID_DEL=Custom_ID,@Ticket_ID_ALT=Ticket_IDfromdeleted

updateTicket_ListsetSell_flag=0

whereTicket_ID=@Ticket_ID_ALT

deletefromCustom_T

whereCustom_ID=@Custom_ID_DEL

end

go

DELETEfromdd_TwhereOrder_ID=’O006’

c。

当门票销售时自动减少该该类型门票的总量

createtriggertri_Tic_Sell

onTicket_summaryforinsert

asdeclare@oldcountint,@newcountint,@sTicket_typechar(3)

select@sTicket_type=Ticket_type,@newcount=Sell_amountfrominserted

select@oldcount=Ticket_CountfromTicket_TwhereTicket_type=@sTicket_type

if@newcount〉0and@oldcount>0

begin

updateTicket_TsetTicket_Count=@oldcount-@newcountwhereTicket_type=@sTicket_type

return

end

rollbacktransaction

insertintoTicket_summaryvalues(’C0004’,'T01','2013—01—1718:

47','002',2,40,’2013—01’)

d.当门票修改类型时自动修改门票各类型的数量

createtriggertri_Ticxg

onTicket_Listforupdate

asdeclare@sTic_IDchar(17),@sTicket_typechar(3),@saTicket_typechar(3),@scountint,@sacountint

select@sTicket_type=Ticket_type,@sTic_ID=Ticket_IDfrominserted

select@saTicket_type=Ticket_typefromTicket_ListwhereTicket_ID=@sTic_ID

select@scount=Ticket_CountfromTicket_TwhereTicket_type=@sTicket_type

select@sacount=Ticket_CountfromTicket_TwhereTicket_type=@saTicket_type

begin

updateTicket_TsetTicket_Count=@scount+1whereTicket_type=@sTicket_type

return

updateTicket_TsetTicket_COunt=@sacount—1whereTicket_type=@saTicket_type

return

end

rollbacktransaction

updateTicket_ListsetTicket_type='T02’whereTicket_ID='S0001'

6完整性约束

USEAttraction_Manage

go

altertableAdmin_Twithcheck

addconstraintCHECK_SEXcheck(Sex=’男'orSex='女’),

constraintCHECK_AGEcheck(Age〉=0)

go

altertableCustom_Twithcheck

addconstraintCHECK1_SEXcheck(Sex=’男'orSex=’女’),

constraintCHECK1_AGEcheck(Age>=0)

go

altertableAdmin_

altertableTicket_summarywithcheck

addconstraintCHECK_Sell_amountcheck(Sell_amount〉=0),

constraintCHECK_Sell_moneycheck(Sell_money>=0。

00)

7。

数据库备份

7.1完整数据库备份

useAttraction_Manage

go

backupdatabaseAttraction_Manage

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

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2