资源描述
成
绩
上海建桥学院
信息技术学院
《数据库应用实践》
设计报告
名称: 网吧管理系统
专 业:
班 级:
学生姓名:
学 号:
一、业务流程描述
在网吧中用户的充值与消费的操作需要通过网吧管理员来进行操作,管理员将消费的账单或充值的信息进行操作后将信息反馈给用户。而网吧管理员除了能进行金额操作外,还可以对该网吧的所有员工的信息进行增删改操作,可以管理用户的工资单。还能够对网吧每月支出与收入情况进行操作,以便更新账务.除以上管理之外,网管还管理着各台网吧中的各台电脑并进行定期的软件与硬件的维护.
每个用户花费对应一个费用,每一个用户只用一个计算机,每个用户可以挑选不同的分区,多个计算机包含在一个分区中,一个网管对应管理一个分区,每一个网管可以管理多个员工.用户包含卡号,身份证号,用户名,级别。计算机包含计算机编号,计算机名称,单价。费用包含卡号,计算机编号,上机时间,下机时间。分区包含分区号,分区名称.网管包含网管编号,网管姓名。
二、业务流程图或数据流程图
三、E—R图
四、逻辑结构设计(关系模式)
管理员表(管理员编号,管理员名,性别,年龄)主键为管理员编号
分区表(分区号,分区名,管理员编号#)主键为分区号,外键引用管理员表的管理员编号
计算机表(计算机编号,计算机名称,单价,分区号#)主键为计算机编号,外键引用分区表的分区号
用户表(用户编号,用户名,级别,计算机编号#)主键为用户编号,外键引用计算机表的计算机编号
费用表(费用表号,上线时间,下线时间,用户编号#)主键为费用表号,外键引用用户表的用户编号
选择表(用户编号,分区号)主键为用户编号和分区号 外键引用用户表的用户编号,引用分区表的分区编号
五、物理模型设计
管理员表
列名
含义
数据类型
长度
约束
MID
管理员编号
varchar
20
主键
MName
管理员名
varchar
20
非空
MSex
性别
varchar
2
非空
Mage
年龄
varchar
10
非空
分区表
列名
含义
数据类型
长度
约束
AID
分区号
varchar
20
主键
AName
分区名
Varchar
30
非空
MID
管理员编号
varchar
20
外键
计算机表
列名
含义
数据类型
长度
约束
PCID
计算机编号
varchar
20
主键
PCName
计算机名
varchar
20
非空
Price
单价
varchar
12
大于50
AID
分区号
varchar
20
外键
用户表
列名
含义
数据类型
长度
约束
CID
用户编号
varchar
20
主键
CName
用户名
varchar
20
非空
CLevel
级别
varchar
5
非空
PCID
计算机编号
varchar
20
外键
费用表
列名
含义
数据类型
长度
约束
FID
费用表
varchar
20
主键
OnlineTime
上线时间
varchar
14
非空
OfflineTime
下线时间
varchar
14
非空
CID
用户编号
varchar
20
外键
选择表
列名
含义
数据类型
长度
约束
CID
用户编号
Varchar
20
主键
AID
分区号
Varchar
20
主键
六、相关SQL语句
1。 创建数据库
create database 网吧管理系统
go
use 网吧管理系统
go
2。创建数据表
(含主键、外键定义及约束性条件设计)
create table 管理员表
(MID varchar(20) primary key,
MName varchar(20) not null,
Msex varchar(2) not null,
Mage varchar(10) not null
)
create table 分区表
(AID varchar(20) PRIMARY KEY,
AName varchar(30) NOT NULL,
MID varchar(20),
foreign key (MID) references 管理员表(MID)
)
create table 计算机表
(PCID varchar(20) PRIMARY KEY,
PCName varchar(20) not null,
Price varchar(12) check(Price〉50),
AID varchar(20),
foreign key(AID) references 分区表(AID)
)
create table 用户表
(CID varchar(20) PRIMARY KEY,
CName varchar(20) not null,
CLevel varchar(5) not null,
PCID varchar(20),
foreign key(PCID) references 计算机表(PCID)
)
create table 费用表
(FID varchar(20) primary key,
OnlineTime varchar(14) not null,
OfflineTime varchar(14) not null,
CID varchar(20),
foreign key(CID) references 用户表 (CID)
)
create table 选择表
(CID varchar(20),
AID varchar(20),
primary key(CID,AID),
foreign key(CID) references 用户表 (CID),
foreign key(AID) references 分区表(AID)
)
3.插入数据
insert into 管理员表 values(’M1',’Lee','男’,’26’)
insert into 管理员表 values(’M2','Jenson',’男’,’33’)
insert into 管理员表 values('M3',’Leiws’,'男’,'27')
insert into 管理员表 values('M4’,'Smith',’男','23')
insert into 管理员表 values('M5','ALince',’男',’24’)
insert into 分区表 values(’A1','一号区’,'M1’)
insert into 分区表 values('A2','二号区','M2')
insert into 分区表 values(’A3','三号区','M3’)
insert into 分区表 values(’A4’,'四号区','M4’)
insert into 分区表 values('A5','五号区','M5')
insert into 计算机表 values (’PC1',’联想y460',’4199’,'A1')
insert into 计算机表 values (’PC2’,’惠普M2000','5000',’A2')
insert into 计算机表 values (’PC3’,’华硕K42J',’4800’,’A3’)
insert into 计算机表 values (’PC4’,’宏基4736’,'3098',’A4')
insert into 计算机表 values ('PC5','东芝C805','5655','A5')
insert into 用户表 values (’C1',’Tom’,’A',’PC1’)
insert into 用户表 values (’C2’,’Mary’,’C','PC2')
insert into 用户表 values ('C3’,’John',’B’,’PC3')
insert into 用户表 values ('C4',’Frank’,’C’,'PC4’)
insert into 用户表 values (’C5’,’Helen’,'D’,’PC5’)
insert into 费用表 values ('F1',’11:15','13:45','C1')
insert into 费用表 values (’F2',’12:25’,'13:35',’C2')
insert into 费用表 values ('F3',’10:35',’18:25’,’C3')
insert into 费用表 values ('F4’,'08:45','14:15',’C4')
insert into 费用表 values (’F5’,’12:55’,'22:05’,'C5’)
insert into 选择表 values ('C1',’A1’)
insert into 选择表 values (’C2','A2’)
insert into 选择表 values (’C3',’A3’)
insert into 选择表 values ('C4’,'A4')
insert into 选择表 values ('C5’,’A5')
4。创建视图
(含单表和多表查询)
create view 单表视图
As
select * from 用户表
create view 多表视图
As
select CName,CLevel,PCName from 用户表 join 计算机表 on 用户表。PCID=计算机表。PCID
5.创建触发器或存储过程
create procedure proc_user AS
select * from 计算机表
七、参考文献
(至少三本)
[1]《数据库系统概论》王珊,萨师煊 高等教育出版社,2006年5月第四版
[2]《SQL Sever完全自学手册》李玉波,韩光林,李彦等 机械工业出版社,2007年1月第一版
[3]《数据库原理及应用》何玉洁,麦中凡 人民邮电出版社,2008年5月第一版
八、设计心得和体会
(需要描述个人在小组设计中承担的任务和完成情况;个人小结)
数据库应用课程设计评分表
序号
项目
配分
得分
1
考勤及参与度
30
2
数据库设计报告(40分)
(1)
业务流程描述情况
5
(2)
E-R图设计情况(至少5个实体且包含多多关系)
10
(3)
逻辑结构设计
5
(4)
物理结构设计
5
(5)
主码、外码、约束条件设计
3
(6)
插入数据的SQL语句(每表至少5条记录)
2
(7)
索引是否建立
1
(8)
单表查询是否建立
2
(9)
多表查询是否建立
2
(10)
视图是否建立
1
(11)
触发器或存储过程
3
(12)
参考文献是否3本及以上
1
3
作品设计(30分)
(1)
存储有模拟数据的数据库
10
(2)
小组成果展示及回答问题情况
20
4
合计总分
教师签字:
日期:2012年7月6日
展开阅读全文