目录
摘要
第一章 绪论
1.1课题简介
1.2 SQL Server简介
1.3数据库的实施
1.3.1.系统需求分析
1.3.2. 数据库需求分析
第二章 数据分析与建模
2.1数据流图(E-R图)
2.2数据字典(关系模型)
第三章 数据库的建立
3.1创建数据库
3.1.1创建“会员信息”表
3.1.2创建“会员卡”表
3.1.3创建“管理员”表
3.1.4创建“会员卡挂失”表
3.1.5创建“会员卡充值”表
3.2创建视图
3.2.1 view0视图
3.2.2 view1视图
3.2.3 view2视图
3.2.4 view3视图
3.4创建存储过程
3.4.1创建procedure p1
3.4.2创建procedure p2
3.4.3创建procedure p3
3.4.4创建procedure p4
3.4.5创建procedure p5
3.4.6创建procedure p6
3.5创建触发器
3.5.1创建触发器tri2
3.5.2创建触发器修改会员资料
3.5.3创建触发器删除会员资料
3.5.4创建触发器tri5
3.6数据库备份
第四章 结论
摘要
SQL Server 2000是Microsoft公司推出的一个高性能大型关系数据库管理系统,它为广大的企业客户和创建商业应用程序的独立软件供应商提供了数据库管理平台,它使用方便、功能强大。使用SQL Server 2000可以开发不同类型的应用程序,其中包括:数据仓库、数据复制、分布式数据库应用程序、Internet和Intranet应用,以及管理工具等。
随着全球信息时代的到来,信息技术对社会发展和经济增长的作用愈来愈明显。商业企业有效地采用信息技术手段,加速了商业领域的发展与进步,信息化建设已经成为当前商业企业提高企业管理水平,谋求生存,参与市场竞争的必由之路。经济的发展,社会的进步,计算机越来越深入到我们日常的工作学习及生活中,成为我们日常生活中不可缺少的辅助工具。随着科学技术的不断提高,计算机科学日渐成熟其强大的功能已被人们深刻认识它已进入人类社会的各个领域并发挥着越来越重要的作用。它更加的深入到日常工作和生活的方方面面,比如文字处理、信息管理、辅助设计、图形图像处理、教育培训以及游戏娱乐等。各行各业的人们无须经过特别的训练就能够使用电脑完成许许多多复杂的工作。会员管理系统用计算机管理会员的基本信息以及对会员信息的编辑、查询等一系列动作它是一种计算机应用技术的创新。在计算机还未普及之前组织会员管理都是由工作人员人工书写查阅的方式来操作的。现在一般的会员管理都采用计算机智能化管理采用计算机作为工具的实用的计算机智能化管理程序来帮助管理员进行更有效的进行会员管理工作。
关键字 数据库 会员管理系统
信息时代已经来临,信息处理的利器—计算机技术已经广泛的应用与各行各业,为各行各业的信息化带来前所未有的变革。采用计算机管理和作业已经成为一个企业现代化管理的重要标志,并为各行各业带来无穷的社会和经济效益。在此背景下,本文就会员管理系统进行讨论。通过对数据库管理系统的模型分析,结合现代人精神和物质方面的需求,对会员管理系统进行详细的设计。本文详细说明会员管理系统的可行性,是信息时代发展的一个标志性产物,提高工作效率的必不可少的利器。一个会员挂那里系统应该达到的目标应该是提供及时广泛的会员信息服务,具备高效查询,减少管理人员统计工作,系统规模不大以便帮助公司留住具有高消费能力的顾客
考虑到管理系统的管理人员的知识结构和工作能力,本数据库会通过一种编程语言实现一个登录界面等,是本数据库具有面向更广大用户的特点。为保证安全性,本系统只提供三个管理人员账号可供管理数据库,会员信息是以管理员为基础,通过管理员实现对会员的管理工作。
SQL Server 2000数据库管理系统具有以下主要特点:
(1) 丰富的图形化管理工具,使系统管理,操作更为直观方便。
SQL Server企业管理器是一个基于图形用户界面(GUI)的集成管理工具,利用它可以配置管理SQL Server服务器、管理数据库和数据库对象、备份和恢复数据,实现数据复制和转换等操作。
(2) 动态自动管理和优化功能。即使SQL Server数据库管理员不做任何设置,SQL Server也能够在运行过程中根据环境配置和用户访问情况动态自动配置,以达到最优性能,从而减轻管理员工作。
基于以上种种分析,决定采用VB开发技术,选择SQL Server 2000作为数据库系统,运用软件工程的原理和方法来开发一个简单的会员管理信息系统。采用软件工程的生命周期法来进行开发,开发过程是首先开发核心系统,根据测试使用时的反馈,实施开发的迭代过程,每一迭代过程均由需求、设计、编码、测试、集成运行等阶段组成,直到系统开发结束
系统分析是数据库开发的关键阶段,是一个从不断认识到逐步细化的过程,是下一阶段的工作基础。
通过现行系统的详细调研,主要是从系统的角度理解用户的需要,确定新系统的综合要求,并提出系统要达到的目标和要实现的需求。
通过调研确定系统要达到的目标有:
(1)由于该系统设计的对像较多,因此要求有较多的管理权限;
(2)原始数据修改方便,支持多条件修改;
(3)方便的查询,支持多种查询;
(4)在相应的权限下,删除数据方便,数据稳定性好;
(5)数据计算自动完成,减少人为干预;
如图所示
会员(姓名,卡号,性别,身份证号,出生日期,地址,等级,会员卡,登录名,密码)
会员卡(卡号,密码,等级,会员)
管理员(姓名,性别,工号,身份证号,电话,密码)
管理(挂失,充值)
挂失(姓名,卡号,性别,电话,身份证号,会员)
充值(卡号,充值次数,充值时间,剩余次数,充值金额,会员)
create database 会员管理信息系统
on primary
(name='t_data11',
filename='e:\课程程序\数据库\新建数据\t_data11.mdf',
size=256,
maxsize=256,
filegrowth=5
),
filegroup 会员
(name='t_data22',
filename='e:\课程程序\数据库\新建数据\t_data22.ndf',
size=5,
maxsize=256,
filegrowth=10%
)
log on
(name='t_log11',
filename='e:\课程程序\数据库\新建数据\t_log11.ldf',
size=100,
maxsize=100,
filegrowth=5
)
如图所示
create table 会员信息
(
卡号 char(20 )PRIMARY KEY,
姓名 varchar (20),
电话 varchar(20),
性别 char(2)NOT NULL,
constraint sex_chk check (性别 in ('男','女')),
出生日期 int constraint age_cons NOT NULL,
constraint age_chk check (出生日期 between 15 and 60),
身份证号 varchar(40),
地址 varchar(20),
等级 char(10),
constraint pk_身份证号 primary key(身份证号),
constraint fk_卡号 foreign key(卡号) references 用户登录(卡号)
)
如图所示
Create table 会员卡
(卡号 char(20)constraint 会员卡 _prim PRIMARY KEY,
密码 char(20),
等级 char(10)
如图所示
Create table 管理员
(工号 char(20) constraint 管理员 _prim PRIMARY KEY,
姓名 varchar (20),
电话 varchar(20),
性别 varchar(10),
年龄 int,
身份证号 varchar(40),
密码 char(10)
)
如图所示
Create table 会员卡挂失
(卡号 char(20) constraint 挂失_prim PRIMARY KEY,
姓名 varchar (20),
电话 varchar(20),
性别 varchar(10),
身份证号 varchar(40)
)
如图所示
Create table 会员卡充值
(卡号 char(20 )constraint 充值 _prim PRIMARY KEY,
充值时间 char(15),
充值次数 char(10),
剩余金额 char (20),
充值金额 char(20)
)
如图所示
create view view0(姓名,卡号,性别,出生日期,身份证号)
as
select 姓名,卡号,性别,出生日期,身份证号
from 会员信息
create view view1
as
select 会员信息.卡号,姓名,性别
from 会员卡,会员信息
where 会员卡.等级='VIP'and (会员卡.卡号=会员信息.卡号)
create view view2
as
select 姓名,会员信息.卡号,性别,会员卡.等级
from 会员信息,会员卡
where 性别='男'and (会员卡.卡号=会员信息.卡号)
create view view3
as
select 姓名,会员信息.卡号,性别,电话,充值金额
from 会员信息,会员卡充值
where 会员卡充值.卡号=会员信息.卡号 and 充值金额>1000
如图所示
Exec sp_addlogin 'user','123'
exec sp_adduser 'user','user007'
grant select on 会员卡 to user007
grant select,update,delete,insert on 会员信息 to user007
grant select on 会员卡充值 to user007
grant select on 会员卡挂失 to user007
exec sp_addlogin 'admin','000'
exec sp_adduser 'admin','admin007'
grant select,update,delete,insert on 管理员 to admin007
grant select,update,delete,insert on 会员卡 to admin007
grant select,update,delete,insert on 会员信息 to admin007
grant select,update,delete,insert on 会员卡充值 to admin007
grant select,insert,delete ,update on 会员卡挂失 to admin007
如图所示
create procedure p1
(
@卡号 char(20)
)
as
declare @等级 char(10),
@姓名 char(10)
select @姓名=姓名,@等级=会员卡.等级
from 会员卡,会员信息
where 会员卡.卡号=@卡号 and (会员卡.卡号=会员信息.卡号)
print @姓名
print @等级
create procedure p2(@卡号 char(20))
as
delete from 会员信息
where 卡号=@卡号
create procedure p3
(
@卡号 char(20),
@姓名 char(10)
)
as
declare @卡号2 char(20),@姓名2 char(10)
update 会员信息 set 姓名=@姓名
where 卡号=@卡号
create procedure p4
(
@卡号 char(20),
@姓名 char (20),
@电话 char(20),
@性别 char (2),
@出生日期 char(10),
@身份证号 char (20),
@地址 char(20),
@等级 char(10)
)
As
Insert into 会员信息 values (@卡号,@姓名,@电话,@性别,@出生日期,@身份证号,@地址,@等级)
create procedure p5
(
@卡号 char(20),
@充值金额 int,
@剩余金额 int
)
as
select 剩余金额 from 会员卡充值
where @卡号=卡号
if(@剩余金额<100)
print '余额不足'
create procedure p10
(
@卡号 char(20),
@身份证号 char(20)
)
as
select * from 会员信息
where @卡号=卡号 and @身份证号=身份证号
print '已挂失'
p8 '0000000002','000000000000000002'
create trigger tr12
on 会员信息
for update
as
declare @卡号 char(20)
select @卡号=卡号 from deleted where 卡号='000000008'
if(@卡号='000000007')
rollback
create trigger 修改会员资料
on 会员信息
after insert,update
as
begin
print'修改成功'
select * from 会员信息
end
GO
create trigger 删除会员信息
on 会员信息
after delete
as
begin
print'删除成功'
select * from 会员信息
end
GO
create trigger tri5
On 会员卡
For insert,update
As
If (select 等级 from inserted)not in ('VIP','普通')
begin
Rollback
Print '输入错误'
End
数据库课程设计的核心思想是引导我们学以致用,通过项目实践理解课堂知识,深入掌握数据库知识。在课程设计中我和我的同伴们通过分工不断实现老师要求的任务,我们并没有写多么复杂的代码,没有高超的数据库设计技巧,但是至少弄明白了大部分数据库基础知识,懂得了团队协作的重要性。
《会员管理信息系统》包括会员信息表,会员卡表,会员卡充值表,会员卡挂失表,管理员表,通过创建视图对其进行有权限的访问,创建管理账号和用户对数据库安全进行管理,在会员管理信息系统中,我们能实现基本的数据库操作,例如,增加会员,删除会员,修改会员卡金额,通过一定的权限,查看数据库数据。