资源描述
计算机工程学院
XX企业进销存管理系统
项目实训数据库设计文档
课程名称 C#高级应用
题目 XX企业进销存管理系统
项目实训日期 -6-30 至 -7-4 指导老师 王老师
13软件技术 班 号 成绩
13软件技术 班 号 成绩
13软件技术 班 号 成绩
13软件技术 班 号 成绩
n 模块任务分工
所实现功效模块
责任人
登录界面实现
全部人(4人)
基础信息模块
XX
采购管理模块
XX
库存管理模块
XX
销售管理模块
XxX
n 参考文档
序号
参考文档
版本
日期
1.
SQL Server 实例教程
-11
2.
SQL Server 数据库应用基础
第2 版
-11
3.
PhotoShop 基础教程
-05
目录
1. 物理数据库设计 - 4 -
1.1 数据库总体设计 - 4 -
1.1.1 表空间计划 - 4 -
1.1.2 数据库计划 - 4 -
2. 数据库表设计 - 5 -
2.1 实体列表( Entity List) - 5 -
2.2 E-R图和实体定义 - 5 -
2.3 数据库其它对象设计 - 12 -
2.3.1视图设计 - 12 -
2.3.2存放过程设计 - 18 -
3. 数据库容量及安全性设计 - 19 -
3.1 数据量估量 - 19 -
3.2 数据库安全性设计 - 19 -
3.2.1 用户设置 - 19 -
3.2.2 数据库权限设计 - 19 -
1. 物理数据库设计
1.1 数据库总体设计
1.1.1 表空间计划
1.1.2 数据库计划
数据库名
Invoicing
描述
进销存管理系统
用到表空间
dbo.Customers,dbo.Employees,dbo.Goods,dbo.InStorage,dbo.OutStorage, dbo.OrderDetails,dbo.Orders,dbo.Payments,dbo.PurchasingDetail,dbo.PurchasingOrders,dbo.Storage,dbo.Supplier dbo.Types,dbo.Users
代码集(codeset)
存放过程:dbo.Customers,dbo.Employees,dbo.Goods,dbo.OrderDetails,dbo.Orders,dbo.Payments,dbo.Types,dbo.Users,
视图:VW_CStore ,VW_IOStore,VW_PurchaseI
使用软件
Microsoft SQL Server
备份/恢复策略
数据库创建以后进行了备份,然后恢复使用
2. 数据库表设计
2.1 实体列表( Entity List)
序号
实体名称
别名
描述
备注
P1
dbo.Customers
用户信息表
统计用户基础信息
P2
dbo.Employees
职员信息表
统计职员基础信息
P3
dbo.Goods
商品信息表
统计货物情况
P4
dbo.InStorage
进库统计表
统计货物进库信息
P5
dbo.OutStorage
出库统计表
统计货物出库信息
P6
dbo.OrderDetails
销售订单详情表
统计订单具体信息
P7
dbo.Orders
销售订单信息表
统计用户订单信息
P8
dbo.Payments
支付方法表
统计用户支付方法信息
P9
dbo.PurchasingDetail
采购订单详情表
统计采购订单具体信息
P10
dbo.PurchasingOrders
采购订单信息表
统计采购订单信息
P11
dbo.Storage
仓库信息表
统计库存信息
P12
dbo.Supplier
供给商信息表
统计供给商信息
P13
dbo.Types
商品类型表
统计商品类型信息
P14
dbo.Users
用户信息表
统计数据库使用者密码等信息
2.2 E-R图和实体定义
2.2.1 < Customers >
E-R图
用户信息表(Customers)
实体定义< Customers >
别名
会员信息表
描述
统计会员个人基础信息
到逻辑数据模型(LDM)映射
1对多
目标
统计会员信息
事件
会员购置商品
2.2.2 < Employees >
E-R图
职员信息表< Employees >
实体定义< Employees >
别名
职员个人信息表
描述
统计职员个人基础信息
到逻辑数据模型(LDM)映射
1对多
目标
统计职员信息
事件
职员工作
2.2.3 < Goods >
E-R图
商品信息表< Goods >
实体定义< Goods >
别名
商品信息表
描述
统计商品基础信息
到逻辑数据模型(LDM)映射
1对多
目标
统计商品信息
事件
商品属性
2.2.4 < OrderDetails >
E-R图
销售订单详情表< OrderDetails >
实体定义< OrderDetails >
别名
商品具体信息表
描述
统计商品具体信息
到逻辑数据模型(LDM)映射
1对多
目标
统计商品信息
事件
商品具体属性
2.2.5 < Order >
E-R图
销售订单表< Order >
实体定义< Order >
别名
订单信息表
描述
统计订单信息
到逻辑数据模型(LDM)映射
1对多
目标
统计订单信息
事件
订单属性
2.2.6 < Payments >
E-R图
支付方法表< Payments >
实体定义< Payments >
别名
支付信息表
描述
统计用户支付信息
到逻辑数据模型(LDM)映射
1对多
目标
统计支付信息
事件
用户支付信息
2.2.7 < Types >
E-R图
商品类型表< Types >
实体定义< Types >
别名
商品类型信息表
描述
统计商品类型信息
到逻辑数据模型(LDM)映射
1对多
目标
统计商品类型
事件
商品类型属性
2.2.8 < Users >
E-R图
用户信息表< Users >
实体定义< Users >
别名
用户信息表
描述
统计用户信息
到逻辑数据模型(LDM)映射
1对多
目标
统计用户信息
事件
用户信息
2.2.9 <PurchasingOrders >
E-R图
采购订单表<PurchasingOrders >
实体定义<PurchasingDetail >
别名
采购订单信息表
描述
统计采购信息
到逻辑数据模型(LDM)映射
1对多
目标
统计用户信息
事件
用户信息
2.2.10 <PurchasingDetail >
E-R图
采购订单详情表<PurchasingDetail>
实体定义<PurchasingDetail>
别名
采购订单详情表
描述
统计采购具体信息
到逻辑数据模型(LDM)映射
1对多
目标
统计用户信息
事件
用户信息
2.2.11 <Supplier>
E-R图
供给商信息表<Supplier>
实体定义<Supplier>
别名
供给商信息表
描述
统计供给商信息
到逻辑数据模型(LDM)映射
1对多
目标
统计用户信息
事件
用户信息
2.2.12 <Storage>
E-R图
仓库信息表<Storage>
实体定义<Storage>
别名
仓库信息表
描述
统计仓库信息
到逻辑数据模型(LDM)映射
1对多
目标
统计用户信息
事件
用户信息
2.2.13 <OutStorage>
E-R图
出库信息表<OutStorage>
实体定义<OutStorage>
别名
出库信息表
描述
统计出库信息
到逻辑数据模型(LDM)映射
1对多
目标
统计用户信息
事件
用户信息
2.2.14 <InStorag>
E-R图
进库信息表<InStorag>
实体定义<<InStorag>
别名
进库信息表
描述
统计进库信息
到逻辑数据模型(LDM)映射
1对多
目标
统计用户信息
事件
用户信息
数据库关系图
2.3 数据库其它对象设计
2.3.1视图设计
视图名称
VW_CStore
对象
用户
结合表
dbo.InStorage,dbo.Storage,dbo.OutStorage
所属表列
g_ID, S_name,S_count
功效描述
能够使会员快速查找到实时库存商品名称、数量和名称
视图名称
VW_IOStore
对象
各个等级用户
结合表
dbo.InStorage,dbo.Storage,dbo.OutStorage
所属表列
g_ID,g_Name,IN_count,IN_datetime,S_count,OUT_count,OUT_datetime
功效描述
能够使用户能够快速查找到商品入库时间、数量和出库商品时间、数量和商品实时库存,方便用户和职员对商品管理
视图名称
VW_PurchaseI
对象
职员
结合表
dbo.PurchasingDetail,dbo.PurchasingOrders,dbo.Types,dbo.Supplier
所属表列
g_ID,g_Name,d_Number,t_Name,e_ID,po_ID
功效描述
方便职员查找采购商品信息和所接手商品数量
视图名称
VW_PurchaseII
对象
管理员,高级用户
结合表
dbo.PurchasingDetail,dbo.PurchasingOrders,dbo.Types,dbo.Supplier
所属表列
g_ID,g_Name,d_Number,t_Name,po_Date,d_Price,po_Sum,S_name,su_Phone,su_Address,su_Postcode
功效描述
方便其它点击用户查找采购商品具体信息和所接手商品数量
视图名称
VW_Good
对象
全部用户
结合表
dbo.Goods,dbo.Storage,dbo.Types
所属表列
g_Name,g_Price,g_Discount,g_ProduceDate,g_Status,g_Description,u_Name,t_Name,S_count
功效描述
开放安全(商品信息和库存情况)数据,对用户隐藏无须要和不宜公开数据
视图名称
VW_Order
对象
全部用户
结合表
dbo.OrderDetails,dbo.Payments,dbo.Orders
所属表列
o_ID,o_Date,o_Sum,e_ID,o_SendMode,o_Status,d_Number,p_Mode
功效描述
对全部用户提供订单具体信息
视图名称
VW_OCustomer
对象
高级,管理员,职员
结合表
dbo.OrderDetails,dbo.Payments,dbo.Orders,dbo.Customers,dbo.Goods
所属表列
g_ID,g_Name,d_Price,d_Number,o_Sum,o_SendMode,c_Name,c_Birth,c_Mobile
功效描述
用于查询用户订单和用户之间关系
存放过程名称及功效描述
SQL 代码
存放过程名称:
Users_check
功效描述:
经过输入用户编号查询用户信息
Use webshop
Go
create procedure Pro_1
@a char(6)
As
Select u_id 用户编号 ,u_name 用户名,u_Type 用户类型 fromUsers
Where u_id=@a
Go
Exec Users_check ‘ textbox1.txt’
=
CREATE PROCEDURE Users_delete
@u_ID nchar
AS BEGIN
DELETE FROM Users
WHERE u_ID=@u_ID END
GO
EXEC Users_delete ''
存放过程名称:
Users _INSEART
功效描述:
经过输入用户编号增加用户信息
CREATE PROC Users _INSEART
@u_ID NCHAR (10)=null, @u_nameVARCHAR(50)=null,@u_type,char(8),@u_description char(8) @u_password char(6)
AS BEGIN SELECT @S_ID=Max(S_ID) FROM dbo.Storage if(@u_ID is null)
SET @u_ID='u001'
ELSE
SET @u_ID='S'+cast(cast(substring(@u_ID,1,3) AS INT )+1 AS vARCHAR(20))
INSERT INTO Storage VALUES(@u_ID, @u_type,@u_name,@u_description, @u_password)
End GO
Exec Users _INSEART @u_ID=’’, @u_name , @u_type=’’, @u_password=’’, @@u_desciption=’’
存放过程名称:
Uerses _Update
功效描述:
经过输入用户编号更新用户信息
create procedure Uerses_Update
@u_ID VARCHAR (10) @u_name VARCHAR(50) @u_password char(6), @u_description char(8) , @u_type char(8)
As update Users set u_name= @u_name, u_type=@u_type , u_password=@u_password , u_description= @u_description
where u_ID=@u_ID
go
Exec Uerses _Update
@u_ID=’’, @u_name , @u_type=’’, @u_password=’’, @@u_desciption=’’
存放过程名称及功效描述
SQL 代码
存放过程名称:
Employees _Check
功效描述:
经过输入职员编号来查询职员信息
CREATE PROCEDURE Employees _Check
@a nchar(6)
AS
SELECT e_ID ,e_name,e_Gender,e_Birth ,e_Address,e_postcode, e_modbile, e_phone ,e_Email, e_sale FROM dbo.Employee
WHERE e_ID=@a
Go
Exec Employees _Check ‘ ’
存放过程名称:
Employees _Delete
功效描述:
经过输入职员编号来删除职员信息
CREATE PROCEDURE Employees _Delete
@e_ID nchar
AS
BEGIN
DELETE FROM Employee
WHERE e_ID=@e_ID
END
GO
EXEC Employees _Delete ''
存放过程名称:
Employees_INSEART功效描述:
经过输入职员编号来增加新职员信息
CREATE PROC Employees_INSEART @e_ID ,@e_name,@e_Gender,@e_Birth ,@e_Address,@e_postcode,@ e_modbile,@ e_phone ,@ e_Email,@ e_sale FROM dbo.Employee
AS BEGIN SELECT @e_ID=Max(e_ID) FROM dbo.Employee if(@e_ID is null)
SET @e_ID='e001 '
ELSE
SET @S_ID='e'+cast(cast(substring(@e_ID,1,4) AS INT )+1 AS vARCHAR(20))
INSERT INTO Employee VALUES(e_ID ,e_name,e_Gender,e_Birth ,e_Address,e_postcode, e_modbile, e_phone ,e_Email, e_sale)
End GO
Exec Employees_INSEART @e_ID=’’ ,@e_name=’’,@e_Gender=’’,@e_Birth=’’ ,@e_Address=’’,@e_postcode=’’,@ e_modbile=’’,@ e_phone=’’ ,@ e_Email=’’,@ e_sale=’’
存放过程名称:
Employees_Update
功效描述:
经过输入职员编号来更新职员信息
CREATE PROC Goods _Update @e_ID char(10)=null ,@e_name varchar(30),@e_Gender char(2),@e_Birth datetime,@e_Address varchar(100),@e_postcode char(6),@e_modbile varchar(11) ,@ e_phone varchar(15), @e_Email varchar(50),@ e_sale smallint
DATETIMEAS BEGIN
UPDATE dbo. Goods SET
@e_ID=e_ID,@e_name=e_name,@e_Gender= e_Gender,@e_Birth= e_Birth ,@e_Address= e_Address,@e_postcode= e_postcode,@ e_modbile= e_modbile,@ e_phone= e_phone ,@ e_Email= e_Email,@ e_sale= e_sale
WHERE g_ID=@g_ID
END GO
Exec Goods _Update
@e_ID=’’ ,@e_name=’’,@e_Gender=’’,@e_Birth=’’ ,@e_Address=’’,@e_postcode=’’,@ e_modbile=’’,@ e_phone=’’ ,@ e_Email=’’,@ e_sale=’’
存放过程名称及功效描述
SQL 代码
存放过程名称:
Goods _Check
功效描述:
经过输入商品编号来查询商品信息
CREATE PROCEDURE Goods _Check
@a nchar(6)
AS
SELECT * FROM OutStorage
WHERE g_ID =@a
Go
Exce Goods _Check
存放过程名称:
Goods _Delete
功效描述:
经过输入商品编号来删除商品信息
CREATE PROCEDURE OutStorage_Delete
@g_ID NCHAR
AS
BEGIN
DELETE FROM Goods
WHERE g_ID=@g_ID
END
GO
EXEC Goods_Delete ''
存放过程名称:
Goods _INSEART功效描述:
经过输入商品编号来增加商品信息
CREATE PROC Goods _INSEART @g_ID CHAR (6),
@e_ID varCHAR (100)=null, @g_name VARCHAR(50), @g_Discount float, @g_Price float,@g_number smallit,@g_produceDate datetime ,@g_status varchar(10),@g_Description varchar(1000)=null ,u_name varchar(30) =null
AS BEGIN SELECT @g_ID=Max(g_ID) FROM dbo.Goods if(@g_ID is null)
SET @g_ID='g001 ' ELSE
SET @g_ID='OUT'+cast(cast(substring(@g_ID,1,5) AS INT )+1 AS vARCHAR(20))
INSERT Goods INTO VALUES(@g_ID,@e_ID,@g_name ,@g_Discount,@g_Price,@g_number,@g_produceDate ,@g_status,@g_Description,@u_name)
End
EXEC Goods _INSEART
存放过程名称:
Goods _Update功效描述:
经过输入商品编号来更新商品信息
CREATE PROC Goods _Update @g_ID CHAR (6),
@e_ID varCHAR (100)=null, @g_name VARCHAR(50), @g_Discount float, @g_Price float,@g_number smallit,@g_produceDate datetime ,@g_status varchar(10),@g_Description varchar(1000)=null ,u_name varchar(30) =null
DATETIMEAS BEGIN
UPDATE dbo. Goods SET
@g_ID=g_ID,@e_ID=e_ID,@g_name=g_name,@g_Discount= g_Discount,@g_Price=g_Price,@g_number=g_number,@g_produceDate=g_produceDate,@g_status=g_status,@g_Description= g_Description,@u_name= g_Description
WHERE g_ID=@g_ID
END GO
Exec Goods _INSEART
@g_ID=’’,@e_ID=’’,@g_name=’’ ,@g_Discount=’’,@g_Price=’’,@g_number=’’,@g_produceDate=’’ ,@g_status=’’,@g_Description=’’,@u_name=’’
展开阅读全文