数据库课程设计报告.docx
- 文档编号:9661084
- 上传时间:2023-05-20
- 格式:DOCX
- 页数:32
- 大小:655.64KB
数据库课程设计报告.docx
《数据库课程设计报告.docx》由会员分享,可在线阅读,更多相关《数据库课程设计报告.docx(32页珍藏版)》请在冰点文库上搜索。
数据库课程设计报告
第一章、相关技术介绍
一、开发环境及工具介绍
1.操作系统:
Windows7
2.编译开发环境:
MicrosoftVisualStudio2010、
MicrosoftSQLServer2008
3.开发语言C#
二、开发环境详细介绍
VisualStudio是微软公司推出的开发环境。
是目前最流行的Windows平台应用程序开发环境。
VisualStudio2010版本于2010年4月12日上市,其集成开发环境(IDE)的界面被重新设计和组织,变得更加简单明了。
VisualStudio2010同时带来了NETFramework4.0、MicrosoftVisualStudio2010CTP(CommunityTechnologyPreview--CTP),并且支持开发面向Windows7的应用程序。
除了MicrosoftSQLServer,它还支持IBMDB2和Oracle数据库。
SQLServer是一个关系数据库管理系统。
它最初是由Microsoft、Sybase和Ashton-Tate三家公司共同开发的,于1988年推出了第一个OS/2版本。
在WindowsNT推出后,Microsoft与Sybase在SQLServer的开发上就分道扬镳了,Microsoft将SQLServer移植到WindowsNT系统上,专注于开发推广SQLServer的WindowsNT版本。
Sybase则较专注于SQLServer在UNⅨ操作系统上的应用
第二章、需求分析
一、开发背景及主要功能
该系统主要是用于管理集团商品的供应情况,销售情况。
以直观,全面的方式去表现某商品的需求供应情况,使企业更容易掌握商品种类的销售情况与盈亏状况。
该系统主要有商品模块、供应商模块、销售模块、商店模块。
系统总体的功能结构:
通过详细的调查分析,商品管理系统模块应具满足一下要求:
(1)信息需求:
用户信息:
姓名,性别,年龄,入职时间,昵称,密码,联系方式,邮箱,备注
供应商信息:
供应商编号,供应商名字,供应商地址,供应商电话,供应商邮箱,与供应商合作时间,评价等级,备注;
商店信息:
商店编号,商店名字,商品库存,商店地址,商店联系电话,商店经理,经理电话
商品信息:
商品编号,商品名字,商品规格,商品质量,备注
进货信息:
进货商品单价,进货数量,进货日期,库存量
销售信息:
销售商品单价,销售数量,销售日期,
利润信息:
日期,差价。
(2)处理要求:
注册时:
姓名,性别,年龄,入职时间,工资,昵称,密码,联系方式,邮箱,备注,系统要自动检测提交的信息是否符合要求,若不符合要求,系统必须提示出错信息,注册成功后将进入个人信息模块。
系统自动分配用户编号,用户名不能与已有用户相同。
登录时:
用户可以通过登录页面登录,登录时用户必须要填写用户名、密码和验证码,通过验证后方可进入对应的界面,用户名字与用户密码不能为空。
供应商信息:
可以查看、添加、删除供应商信息,供应商名字,地址,电话,邮箱和合作时间,备注用于填写评价等级的理由;
商店信息:
用户可以查看商店的地理位置,联系电话及经理电话,商品信息:
用户可以查看,添加,修改,删除商品信息,商品质量有优、良、中、差可以选,备注用于填写质量分级依据;
进货信息:
用户可以查看,添加,修改,删除某一天的进货信息,进货日期由系统自动录入,进货商品单价、进货数量不能为负,当商品库存小于200提示要及时进货,补充货源;
销售信息:
用户可以查看,添加,修改,删除某一天的销售信息,销售商品单价就大于进货单价,销售数量不能大于进货数量。
(3)安全性与完整性要求:
(1)用户登录时,登录名与密码都不可以为空。
(2)普通用户可以查看但不可以修改供应商的信息,只有超级管理员有添加、删除、修改与查看操作权限。
(3)普通用户不能查看销售模块中的利润模块,只有超级管理员对其有操作权限。
二、建立数据字典
数据项:
数据项名
别名
数据类型
数据长度
取值范围
简述
用户编号
UNo
Char
20
用户主码
用户姓名
UName
Char
20位
允许重名
性别
USex
Char
1位
男或女
年龄
UAge
Char
10
入职时间
UDate
Date
密码
UPassword
Char
20位
联系方式
UTel
Char
20
邮箱
UMail
Char
30位
合法邮箱
备注
URemarks
Char
30位
供应商编号
SerNo
Char
10位
供应商主码
ss____
供应商名字
SerName
Char
20位
供应商地址
SerAddr
Char
40位
供应商电话
SerTel
Varchar
供应商邮箱
SerMail
Char
30位
合法邮箱
与供应商合作时间
SerDate
date
评价等级
SerGrade
Char
1位
优/良/中/差
备注
SerRemark
Char
30位
标明与供应商合作时间
商店编号
StNo
Char
10位
商店主码
S____
商店名字
StName
Char
10位
商品库存
StGrepertory
Int
10位
商店地址
StAddr
Char
30位
商店联系电话
StTel
Varchar
11位
商店经理
StMName
Char
10位
经理电话
StMTel
Int
11位
商品编号
GNo
Char
10位
商品主码
g____
商品名字
Gname
Char
20位
商品规格
GSize
Float
3位
商品质量
GProduct
Char
1位
优/良/中/差
备注
GRemark
Char
20位
进货流水号
SupNo1
Char
10
主码
进货商品单价
Supprice
Int
5位
进货数量
SupNum
Long
6位
进货日期
SupDate
Date
由系统给出
库存量
SupRepertory
Long
6位
小于进货量
销售流水号
SellNo2
Char
10位
主码
销售商品单价
SellPrice
Int
5位
销售数量
SellNum
Long
6位
小于进货量
销售日期
SellDate
Date
由系统给出
差价
PSpread
Int
5位
销售利润
PProfit
Double
日期
PDate
Date
数据结构:
名称
别名
含义
组成
用户信息
User表
用户的基本信息
姓名+性别+年龄+入职时间+昵称+密码+联系方式+邮箱+备注
供应商信息
Supplier表
供应商的基本信息
供应商编号+供应商名字+供应商地址+供应商电话+供应商邮箱+与供应商合作时间+评价等级+备注;
商店信息
Store表
商店的基本信息
商店编号+商店名字+商品库存+商店地址+商店联系电话+商店经理+经理电话
商品信息
Good表
商品的基本信息
商品编号+商品名字+商品规格+商品质量+备注
进货信息
Supply表
进货的基本信息
进货流水号+供应商编号+商品编号+进货商品单价+进货数量+进货日期,库存量
销售信息
Sell表
销售的基本信息
销售流水号+商店编号+商品编号+销售商品单价+销售数量+销售日期
利润信息
Profit视图
利润的基本信息
供应商编号+供应商名字+商品名字+差价(销售单价-进货单价),销售数量+销售利润(差价*销售数量)+(总进货量-销售量)+日期
第三章、概念结构设计
(1)用户实体属性图
(2)商品实体属性图
(3)供应商实体属性图
(4)商痁实体属性图
(5)进货关系E-R模型设计
(6)销售关系E-R模型设计
(7)总体E-R模型设计
第四章、逻辑结构设计
一、E-R图转换为关系模型(关系的码用下横线标出,外码用下波浪线标出)
用户(用户编号,姓名,性别,年龄,入职时间,昵称,密码,联系方式,邮箱,备注)
供应商(供应商编号,供应商名字,供应商地址,供应商电话,供应商邮箱,与供应商合作时间,评价等级,备注)
商店(商店编号,商店名字,商品库存,商店地址,商店联系电话,商店经理,经理电话)
商品(商品编号,商品名字,商品规格,商品质量,备注)
进货(进货流水号,供应商编号,商品编号,进货商品单价,进货数量,进货日期,库存量)
销售(销售流水号,商店编号,商品编号,销售商品单价,销售数量,销售日期)
二、关系模型转化为基本表
各表中的各个元组都不可再分、并且无部分函数依赖和传递函数依赖、主码都是候选码,所以各表都满足BCNF范式。
用户登录表Users
数据项名
别名
数据类型
数据长度
取值范围
简述
用户编号
UNo
Char
20
用户主码
用户姓名
UName
Char
20位
允许重名
性别
USex
Char
1位
男或女
年龄
UAge
Char
10
入职时间
UDate
Date
密码
UPassword
Char
20位
联系方式
UTel
Char
20
邮箱
UMail
Char
30位
合法邮箱
备注
URemarks
Char
30位
供应商信息表Supplier
数据项名
别名
数据类型
数据长度
取值范围
简述
供应商编号
SerNo
Char
10位
供应商主码
ss____
供应商名字
SerName
Char
20位
供应商地址
SerAddr
Char
40位
供应商电话
SerTel
Varchar
供应商邮箱
SerMail
Char
30位
合法邮箱
与供应商合作时间
SerDate
date
评价等级
SerGrade
Char
1位
优/良/中/差
备注
SerRemark
Char
30位
标明与供应商合作时间
商店表Store
数据项名
别名
数据类型
数据长度
取值范围
简述
商店编号
StNo
Char
10位
商店主码
S____
商店名字
StName
Char
10位
商品库存
StGrepertory
Int
10位
商店地址
StAddr
Char
30位
商店联系电话
StTel
Varchar
11位
商店经理
StMName
Char
10位
经理电话
StMTel
Int
11位
商品表Goods
数据项名
别名
数据类型
数据长度
取值范围
简述
商品编号
GNo
Char
10位
商品主码
g____
商品名字
Gname
Char
20位
商品规格
GSize
Float
3位
商品质量
GProduct
Char
1位
优/良/中/差
备注
GRemark
Char
20位
进货信息表Supply
数据项名
别名
数据类型
数据长度
取值范围
简述
进货流水号
SupNo1
Char
10
主码
商品编号
GNo
Char
10位
外码
g____
供应商编号
SerNo
Char
10位
外码
ss____
进货商品单价
Supprice
Int
5位
进货数量
SupNum
Long
6位
进货日期
SupDate
Date
由系统给出
库存量
SupRepertory
Long
6位
小于进货量
销售信息表Sell
数据项名
别名
数据类型
数据长度
取值范围
简述
销售流水号
SellNo2
Char
10位
主码
商品编号
GNo
Char
10位
外码
g____
商店编号
StNo
Char
10位
外码
S____
销售商品单价
SellPrice
Int
5位
销售数量
SellNum
Long
6位
小于进货量
销售日期
SellDate
Date
由系统给出
利润表是作为视图,当有进货表与销售表的修改时,才会更改利润表的内容。
CREATEVIEW[dbo].[Supply_Sell]
AS
SELECTdbo.Supply.GNo,dbo.Supply.Supprice,dbo.Sell.SellPrice,
(dbo.Sell.SellPrice-dbo.Supply.Supprice)*dbo.Sell.
SellNumASprofit,dbo.Sell.SellNum,dbo.Sell.SellNO
FROMdbo.SellCROSSJOIN
dbo.Supply
第五章、物理结构设计
1、数据的存放位置
数据库的数据文件和日志文件位置:
C:
\ProgramFiles\MicrosoftSQLerver\MSSQL10.MSSQLSERVER\MSSQL\DATA
2、系统配置
操作系统:
Windows7
编译环境:
MicrosoftVisualStudio2010;
数据库系统:
MicrosoftSQLServer2008
第六章、数据库实施
1、创建数据库及数据库对象的SQL脚本文件
创建Goods表
CREATETABLE[dbo].[Goods](
[GNO][varchar](50)NOTNULL,
[GName][varchar](50)NOTNULL,
[GSize][real]NULL,
[GProduct][char]
(2)NULL,
[GRemark][varchar](50)NULL,
CONSTRAINT[PK__Goods__C518B1A525869641]PRIMARYKEYCLUSTERED
(
[GNO]ASC
)WITH(PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS=ON)ON[PRIMARY]
)ON[PRIMARY]
GO
SETANSI_PADDINGOFF
GO
ALTERTABLE[dbo].[Goods]WITHCHECKADDCONSTRAINT[CK__Goods__GNO__276EDEB3]CHECK(([GNo]like'g____'))
GO
ALTERTABLE[dbo].[Goods]CHECKCONSTRAINT[CK__Goods__GNO__276EDEB3]
GO
ALTERTABLE[dbo].[Goods]WITHCHECKADDCONSTRAINT[CK__Goods__GProduct__286302EC]CHECK(([GProduct]='差'OR[GProduct]='中'OR[GProduct]='良'OR[GProduct]='优'))
GO
ALTERTABLE[dbo].[Goods]CHECKCONSTRAINT[CK__Goods__GProduct__286302EC]
GO
创建Sell表
SELECT[SellNO]
[SellPrice]
[SellNum]
[SellDate]
FROM[Goodsupply].[dbo].[Sell]
GO
创建Store表
CREATETABLE[dbo].[Store](
[StNo][varchar](50)NOTNULL,
[StName][varchar](50)NULL,
[StAddr][varchar](50)NULL,
[StTel][varchar](20)NULL,
[StMName][varchar](50)NOTNULL,
[StMTel][varchar](20)NULL,
CONSTRAINT[PK__Store__C33CB71E21B6055D]PRIMARYKEYCLUSTERED
(
[StNo]ASC
)WITH(PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS=ON)ON[PRIMARY]
)ON[PRIMARY]
GO
SETANSI_PADDINGOFF
GO
创建Supplier表
CREATETABLE[dbo].[Supplier](
[SerNo][varchar](50)NOTNULL,
[SerName][varchar](50)NOTNULL,
[SerAddr][varchar](50)NULL,
[SerTel][varchar](20)NULL,
[SerMail][varchar](50)NULL,
[SerDate][date]NULL,
[SerGrade][varchar](50)NULL,
[SerRemark][varchar](50)NULL,
CONSTRAINT[PK__Supplier__7982B6001BFD2C07]PRIMARYKEYCLUSTERED
(
[SerNo]ASC
)WITH(PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS=ON)ON[PRIMARY]
)ON[PRIMARY]
GO
SETANSI_PADDINGOFF
GO
ALTERTABLE[dbo].[Supplier]WITHCHECKADDCONSTRAINT[CK__Supplier__SerGra__1ED998B2]CHECK(([SerGrade]='差'OR[SerGrade]='中'OR[SerGrade]='良'OR[SerGrade]='优'))
GO
ALTERTABLE[dbo].[Supplier]CHECKCONSTRAINT[CK__Supplier__SerGra__1ED998B2]
GO
ALTERTABLE[dbo].[Supplier]WITHCHECKADDCONSTRAINT[CK__Supplier__SerMai__1DE57479]CHECK(([SerMail]like'%@%.com'))
GO
ALTERTABLE[dbo].[Supplier]CHECKCONSTRAINT[CK__Supplier__SerMai__1DE57479]
GO
创建Supply表
CREATETABLE[dbo].[Supply](
[StNo][varchar](50)NULL,
[GNo][varchar](50)NULL,
[Supprice][int]NULL,
[SupNum][int]NULL,
[SupDate][date]NULL,
[SupRepertory][int]NULL,
[SerNo][varchar](50)NULL,
[SupNo][varchar](50)NOTNULL,
CONSTRAINT[PK_Supply]PRIMARYKEYCLUSTERED
(
[SupNo]ASC
)WITH(PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS=ON)ON[PRIMARY]
)ON[PRIMARY]
GO
SETANSI_PADDINGOFF
GO
ALTERTABLE[dbo].[Supply]WITHCHECKADDCONSTRAINT[FK_Supply_Goods]FOREIGNKEY([GNo])
REFERENCES[dbo].[Goods]([GNO])
ONUPDATECASCADE
ONDELETECASCADE
GO
ALTERTABLE[dbo].[Supply]CHECKCONSTRAINT[FK_Supply_Goods]
GO
ALTERTABLE[dbo].[Supply]WITHCHECKADDCONSTRAINT[FK_Supply_Store]FOREIGNKEY([StNo])
REFERENCES[dbo].[Store]([StNo])
ONUPDATECASCADE
ONDELETECASCADE
GO
ALTERTABLE[dbo].[Supply]CHECKCONSTRAINT[FK_Supply_Store]
GO
ALTERTABLE[dbo].[Supply]WITHCHECKADDCONSTRAINT[FK_Supply_Supplier]FOREIGNKEY([SerNo])
REFE
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 课程设计 报告