SQL SERVER实验报告.docx
- 文档编号:7914362
- 上传时间:2023-01-27
- 格式:DOCX
- 页数:12
- 大小:34.07KB
SQL SERVER实验报告.docx
《SQL SERVER实验报告.docx》由会员分享,可在线阅读,更多相关《SQL SERVER实验报告.docx(12页珍藏版)》请在冰豆网上搜索。
SQLSERVER实验报告
SQLSERVER2000实验报告
姓名:
吴传徳
学号:
0811020553
班级:
08电子商务班
SQLSERVER2000实验报告
姓名:
吴传徳学号:
0811020553指导老师:
蒋科蔚
随着数据库技术的发展,人们管理数据的能力也在不断提高,对于一些庞大的数据资料,更加需要利用数据库技术,对数据资料进行整理加工。
从而提高人们对数据的掌握,分析能力,加强管理。
为了更好的巩固和加强书本所学的知识,把所学的东西转化为实际应用。
我们在此选择了一个超市购物系统来进行数据库的创建。
超市购物系统,集商品制造商,商品供应商的相关信息,输入到数据库中,严格按照数据库设计的具体步骤:
需求分析阶段就是要研究超市购物系统的具体分类和实施过程流图。
概念设计阶段要完成数据抽象与局部视图设计还有视图的集成。
逻辑结构设计阶段要把E-R图转化为关系模式并且把我输入的七张表结合在一起完成一个总关系表。
最后就是要运行和实施数据库。
以下是我在这个数据库创建中所做的工作内容。
一.需求分析
超市购物系统,经过可行性分析和初步需求调查,抽象出该子系统业务流程图,如图1.1所示。
下面,结合该实例具体情况,给出顾客、制造商和生产商的具体需求。
图1.1系统业务流程图
调查用户需求
1顾客需求
●查询功能:
◆按商品名字查询
◆按商品价格查询
◆按商品制造商查询
◆查询自己的消费记录
●修改功能:
可以修改自己的密码
2商品管理需求
●查询功能:
◆按出库存量查询商品
◆按生产商查询商品
◆按供应商查询商品
◆查看销售记录
◆查看销售量
●插入功能:
可以使用SQL语句对该表进行增加商品相关信息的插入操作
●修改功能:
可以使用SQL语句对该表进行修改操作
●删除功能:
可以使用SQL语句对该表进行商品删除操作
二.数据结构定义
经分析之后,得出本系统要用到七个基本表:
商品信息关系表、用户关系表、厂商关系表、供货商关系表和会员关系表。
数据结构定义如表2.1所示。
表2.1数据结构定义表
数据结构名
含义说明
组成
商品信息
关系表
定义了商品的相关信息
商品编号,商品名称,价格,库存量
会员信息关系表
定义了注册会员的相关信息
会员ID,会员姓名,会员密码,住址,账号密码
供应商
关系表
定义了供应商相关信息
供应商编号,供应商名称,
供应商地址,供应商电话
制造商关系表
定义了制造商相关信息
制造商编号,制造商名称,
制造商地址,制造商电话
供货关系表
定义了供应商和商品的相关信息
供应商编号,商品编号,供货量,
送货时间,批发价
生产关表表
定义了生产者和商品的相关信息
制造商编号,商品编号
销售关系表
定义了顾客和商品的相关信息
会员编号,商品编号,交易时间,交易数量
三.设计数据库E-R图
该超市管理系统包含七个表。
各个子系统的局部E-R图如下:
图3.1供应商关系E-R图
图3.2商品关系E-R图
图3.3制造商关系E-R图
图3.4注册会员关系E-R图
图3.5供货关系E-R图
图3.6商品销售关系E-R图
图3.7生产关系E-R图
对该超市管理系统各子E-R图的集成——即该超市管理系统的总体概念结构E-R图如下图所示:
图3.8总体概念结构E-R图
四.设计表
根据E-R图,开始对表进行设计,设计的七个表结构如下。
表4-1注册会员关系表
字段类型
长度
主/外键
字段值约束
字段名
char
20
P
Notnull
会员编号
char
50
Notnull
会员名称
char
50
Notnull
会员地址
char
50
Notnull
会员密码
Int
4
Notnull
消费总额
表4-2商品信息表
字段类型
长度
主/外键
字段值约束
字段名
char
20
P
Notnull
商品编号
char
20
Notnull
商品名称
DOUBLE
Notnull
商品价格
INT
4
Notnull
库存数量
表4-3制造商关系表
字段类型
长度
主/外键
字段值约束
字段名
char
20
P
Notnull
制造商编号
char
50
Notnull
制造商名称
char
50
Notnull
制造商地址
char
50
Notnull
制造商电话
表4-4供应商关系表
字段类型
长度
主/外键
字段值约束
字段名
char
20
P
Notnull
供货商编号
char
50
Notnull
供货商名称
char
50
Notnull
供货商地址
char
50
Notnull
供货商电话
表4-5供货关系表
字段类型
长度
主/外键
字段值约束
字段名
char
10
P
Notnull
供应商编号
Char
20
P
Notnull
商品编号
Int
4
Notnull
采购数量
Char
20
Notnull
采购时间
DOUBLE
Notnull
采购价格
表4-6生产关系表
字段类型
长度
主/外键
字段值约束
字段名
char
20
P
Notnull
制造商编号
Char
20
P
Notnull
商品编号
表4-7销售关系表(Retail)
字段类型
长度
主/外键
字段值约束
字段名
char
20
P
Notnull
会员编号
char
20
P
Notnull
商品编号
char
20
Notnull
交易时间
INT
4
Notnull
交易数量
五.数据的录入
在小组成员的共同努力下,根据以上设计的七个表,我们完成了数据库中数据的录入。
六.建立索引
建立索引是加快查询速度的有效手段。
因此,我为数据库中的七张表分别建立了索引。
1、在‘货商关系表’商名称上创建‘供货商姓名’索引。
createindex供货商姓名on供货商关系表(供货商名称)
execsp_helpindex供货商关系表
2、在‘货关系表’购数量字段上建立’采购数量索引’索引
createindex采购数量索引on供货关系表(采购数量)
execsp_helpindex供货关系表
3、在‘员关系表’会员名称上建立‘会员名索引’索引
Createndex会员名称索引on会员关系表(会员名称)
EXECsp_helpindex会员关系表
4、在‘商品信息表’的价格字段上建立‘商品价格索引’索引
createindex商品价格索引on商品信息表(商品价格)
execsp_helpindex商品信息表
5、在‘销售关系表’的交易时间字段上建立‘交易时间索引’索引
createindex交易时间索引on销售关系表(交易时间)
execsp_helpindex销售关系表
6、在‘制造商关系表’的制造商名称字段上建立‘制造商名称索引’索引
createindex制造商名称索引on制造商关系表(制造商名称)
execsp_helpindex制造商关系表
7、由于‘生产关系表’的字段共同作为表的主键,系统自动创建了索引,所以在此不必建立索引。
七.建立数据库视图
建立数据库视图,可以方便表的查询,在这个数据库中,根据数据库管理和使用的需要,我建立了四个数据库视图,分别是供货视图、生产关系视图、消费关系视图、制造与供货关系视图。
1、创建了一个供货视图,里面记录了与供货有关的信息。
包含的字段有:
商品编号、供货商编号、商品名称、商品价格、供货商名称、供货商地址、采购数量和采购价格。
创建这个视图更加方便查询供货方面的相关信息。
创建视图的sql语句如下:
Createview供货视图as
SELECTdbo.供货关系表.供货商编号,dbo.供货关系表.商品编号,dbo.商品信息表.商品名称,dbo.商品信息表.商品价格,dbo.供货商关系表.供货商名称,dbo.供货商关系表.供货商地址,dbo.供货关系表.采购数量,dbo.供货关系表.采购价格
FROMdbo.供货关系表INNERJOINdbo.供货商关系表ONdbo.供货关系表.供货商编号=dbo.供货商关系表.供货商编号INNERJOINdbo.商品信息表ONdbo.供货关系表.商品编号=dbo.商品信息表.商品编号
2、创建了一个生产关系视图,里面记录了与商品生产有关的信息。
包含的字段有:
制造商编号、制造商名称、制造商地址、制造商电话、商品编号、商品名称。
创建视图的sql语句如下:
Createview生产关系视图as
SELECTdbo.制造商关系表.制造商编号,dbo.制造商关系表.制造商名称,dbo.制造商关系表.制造商地址,dbo.制造商关系表.制造商电话,dbo.商品信息表.商品编号,dbo.商品信息表.商品名称
FROMdbo.制造商关系表INNERJOINdbo.生产关系表ONdbo.制造商关系表.制造商编号=dbo.生产关系表.制造商编号INNERJOINdbo.商品信息表ONdbo.生产关系表.商品编号=dbo.商品信息表.商品编号
3、创建了一个消费关系视图,里面记录了消费者购买相关商品的信息。
包含的字段有:
会员编号、会员名称、商品名称、交易时间、交易数量、商品价格及消费总额。
方便查询消费者的消费记录。
创建视图的sql语句如下:
Createview消费关系视图as
SELECTdbo.会员关系表.会员编号,dbo.会员关系表.会员名称,dbo.商品信息表.商品名称,dbo.销售关系表.交易时间,dbo.销售关系表.交易数量,dbo.商品信息表.商品价格,dbo.会员关系表.消费总额
FROMdbo.会员关系表INNERJOINdbo.销售关系表ONdbo.会员关系表.会员编号=dbo.销售关系表.会员编号INNERJOINdbo.商品信息表ONdbo.销售关系表.商品编号=dbo.商品信息表.商品编号
4、创建了视图制造与供货关系视图,记录了商品制造商和供货商的关系。
包含的字段有:
制造商名称、供货商名称、商品名称、采购价格、商品价格。
方便查询产品的制造商和供应商的信息,产品进价及产品售价的关系。
创建视图的sql语句如下:
Createview制造与供货关系视图as
SELECTdbo.制造商关系表.制造商名称,dbo.供货商关系表.供货商名称,dbo.商品信息表.商品名称,dbo.供货关系表.采购价格,dbo.商品信息表.商品价格
FROMdbo.生产关系表INNERJOINdbo.供货关系表ONdbo.生产关系表.商品编号=dbo.供货关系表.商品编号INNERJOINdbo.制造商关系表ONdbo.生产关系表.制造商编号=dbo.制造商关系表.制造商编号INNERJOINdbo.供货商关系表ONdbo.供货关系表.供货商编号=dbo.供货商关系表.供货商编号INNERJOINdbo.商品信息表ONdbo.生产关系表.商品编号=dbo.商品信息表.商品编号ANDdbo.供货关系表.商品编号=dbo.商品信息表.商品编号
八.创建触发器
在商品信息表上创建触发器,限制每次商品价格变动额不能超过50元
createtrigger商品价格触发器on商品信息表afterupdate
as
ifupdate(商品价格)
begin
if(selectMAX(abs(inserted.商品价格-deleted.商品价格))
frominsertedjoindeleted
oninserted.商品编号=deleted.商品编号)>50
beginprint'商品价格变动不得超过50元'
rollbacktransaction
end
end
elseprint'更改成功'
九.数据库备份
为了保证数据库的安全,和上交作业的需要,我对数据库进行了备份。
十.数据库查询
1.查询消费总额大于500的会员名称及消费总额
select会员关系表.会员名称,消费总额from会员关系表where消费总额>500
2.查询商品采购价与售价的差价
selectdistinct商品信息表.商品价格-供货关系表.采购价格as差价from供货关系表,商品信息表
where商品信息表.商品编号=供货关系表.商品编号
3.查询各会员所购买的商品名称及数量
select会员关系表.会员名称,商品信息表.商品名称,销售关系表.交易数量
from会员关系表,商品信息表,销售关系表where
会员关系表.会员编号=销售关系表.会员编号and
商品信息表.商品编号=销售关系表.商品编号
orderby会员名称
4.查找制造商和供货商之间的合作关系
selectdistinct供货商关系表.供货商名称,制造商关系表.制造商名称
from供货商关系表,制造商关系表
where供货商关系表.供货商编号in(
select供货商编号from供货关系表,生产关系表where供货关系表.商品编号=生产关系表.商品编号)
其他的关于产品修改和删除的操作在此就不赘述了,以上查询的sql文件已打包至上交文件中。
十一.总结
通过这次的数据库课程设计我学习并掌握了很多知识与操作。
历时两个星期的设计令我受益匪浅,也对数据库这门学科有了更进一步的认识与熟悉。
更重要的是我第一次系统的了解了数据库创建的整个过程,首次将老师上课讲的知识串接了起来,形成了一个知识体系。
这才是最重要的。
小组成员:
吴传徳汤普元汤新涛朱有林
评分:
吴传徳40分
汤普元20分
汤新涛20分
朱有林20分
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- SQL SERVER实验报告 SERVER 实验 报告