1、计算机工程学院XX企业进销存管理系统 项目实训数据库设计文档课程名称 C#高级应用 题目 XX企业进销存管理系统 项目实训日期 -6-30至 -7-4 指导老师 王老师 13软件技术班 号 成绩 13软件技术 班 号 成绩 13软件技术 班 号 成绩 13软件技术 班 号 成绩 n 模块任务分工所实现功效模块责任人登录界面实现全部人(4人)基础信息模块XX采购管理模块XX库存管理模块XX销售管理模块XxXn 参考文档序号参考文档版本日期1.SQL Server 实例教程-112.SQL Server 数据库应用基础第2 版-113.PhotoShop 基础教程-05目录1. 物理数据库设计-
2、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 数据库计划数据库名Invo
3、icing 描述进销存管理系统用到表空间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,d
4、bo.Payments,dbo.Types,dbo.Users, 视图:VW_CStore ,VW_IOStore,VW_PurchaseI使用软件 Microsoft SQL Server 备份/恢复策略数据库创建以后进行了备份,然后恢复使用2. 数据库表设计2.1 实体列表( Entity List)序号实体名称别名描述备注P1dbo.Customers用户信息表统计用户基础信息P2dbo.Employees职员信息表统计职员基础信息P3dbo.Goods商品信息表统计货物情况P4dbo.InStorage进库统计表统计货物进库信息P5dbo.OutStorage出库统计表统计货物出库信息
5、P6dbo.OrderDetails销售订单详情表统计订单具体信息P7dbo.Orders销售订单信息表统计用户订单信息P8dbo.Payments支付方法表统计用户支付方法信息P9dbo.PurchasingDetail采购订单详情表统计采购订单具体信息P10dbo.PurchasingOrders采购订单信息表统计采购订单信息P11dbo.Storage仓库信息表统计库存信息P12dbo.Supplier供给商信息表统计供给商信息P13dbo.Types商品类型表统计商品类型信息P14dbo.Users用户信息表统计数据库使用者密码等信息2.2 E-R图和实体定义2.2.1 E-R图用户信
6、息表(Customers)实体定义 别名会员信息表描述统计会员个人基础信息到逻辑数据模型(LDM)映射 1对多目标统计会员信息事件会员购置商品2.2.2 E-R图 职员信息表 实体定义别名职员个人信息表描述统计职员个人基础信息到逻辑数据模型(LDM)映射 1对多目标统计职员信息事件职员工作2.2.3 E-R图 商品信息表实体定义别名商品信息表描述统计商品基础信息到逻辑数据模型(LDM)映射 1对多目标统计商品信息事件商品属性2.2.4 E-R图销售订单详情表实体定义别名商品具体信息表描述统计商品具体信息到逻辑数据模型(LDM)映射 1对多目标统计商品信息事件商品具体属性2.2.5 E-R图销售
7、订单表实体定义别名订单信息表描述统计订单信息到逻辑数据模型(LDM)映射 1对多目标统计订单信息事件订单属性2.2.6 E-R图支付方法表实体定义别名支付信息表描述统计用户支付信息到逻辑数据模型(LDM)映射 1对多目标统计支付信息事件用户支付信息2.2.7 E-R图商品类型表实体定义别名商品类型信息表描述统计商品类型信息到逻辑数据模型(LDM)映射 1对多目标统计商品类型事件商品类型属性2.2.8 E-R图用户信息表 实体定义 别名用户信息表描述统计用户信息到逻辑数据模型(LDM)映射 1对多目标统计用户信息事件用户信息2.2.9 E-R图采购订单表实体定义别名采购订单信息表描述统计采购信息
8、到逻辑数据模型(LDM)映射 1对多目标统计用户信息事件用户信息2.2.10 E-R图采购订单详情表实体定义别名采购订单详情表描述统计采购具体信息到逻辑数据模型(LDM)映射 1对多目标统计用户信息事件用户信息2.2.11 E-R图供给商信息表实体定义别名供给商信息表描述统计供给商信息到逻辑数据模型(LDM)映射 1对多目标统计用户信息事件用户信息2.2.12 E-R图仓库信息表实体定义别名仓库信息表描述统计仓库信息到逻辑数据模型(LDM)映射 1对多目标统计用户信息事件用户信息2.2.13 E-R图出库信息表实体定义别名出库信息表描述统计出库信息到逻辑数据模型(LDM)映射 1对多目标统计用
9、户信息事件用户信息2.2.14 E-R图进库信息表实体定义别名进库信息表描述统计进库信息到逻辑数据模型(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_
10、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.Purchasing
11、Detail,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_
12、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
13、_Price,d_Number,o_Sum,o_SendMode,c_Name,c_Birth,c_Mobile功效描述用于查询用户订单和用户之间关系存放过程名称及功效描述SQL 代码存放过程名称:Users_check功效描述:经过输入用户编号查询用户信息Use webshopGocreate procedure Pro_1 a char(6) AsSelect u_id 用户编号 ,u_name 用户名,u_Type 用户类型 fromUsers Where u_id=aGoExec Users_check textbox1.txt=CREATE PROCEDURE Users_delet
14、eu_ID ncharAS BEGINDELETE FROM UsersWHERE u_ID=u_ID ENDGOEXEC 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
15、 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 GOExec Users _INSEART u_ID=, u_name , u_type=, u_password=, u_desciption=存放过程名称:Uerses _Update功效描述:经过输入用户编号更新用户信息create procedure
16、 Uerses_Updateu_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_descriptionwhere u_ID=u_IDgo Exec Uerses _Update u_ID=, u_name , u_type=, u_password=, u_desciptio
17、n=存放过程名称及功效描述SQL 代码存放过程名称:Employees _Check功效描述:经过输入职员编号来查询职员信息CREATE PROCEDURE Employees _Checka nchar(6)ASSELECT e_ID ,e_name,e_Gender,e_Birth ,e_Address,e_postcode, e_modbile, e_phone ,e_Email, e_sale FROM dbo.EmployeeWHERE e_ID=aGo Exec Employees _Check 存放过程名称:Employees _Delete功效描述:经过输入职员编号来删除职员信
18、息CREATE PROCEDURE Employees _Deletee_ID ncharASBEGINDELETE FROM EmployeeWHERE e_ID=e_ID ENDGOEXEC 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.EmployeeAS
19、 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 GOExec Employees_INSEART e_I
20、D= ,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
21、) , 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_saleWHERE g_ID=g_IDEND G
22、OExec Goods _Updatee_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 _Checka nchar(6)ASSELECT * FROM OutStorageWHERE g_ID =aGo Exce Goods _Check存放过程名称:Goods _Delete功效描述:经过输
23、入商品编号来删除商品信息CREATE PROCEDURE OutStorage_Deleteg_ID NCHARASBEGINDELETE FROM GoodsWHERE g_ID=g_IDENDGOEXEC 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_pro
24、duceDate datetime ,g_status varchar(10),g_Description varchar(1000)=null ,u_name varchar(30) =nullAS 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_Discou
25、nt,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 va
26、rchar(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_DescriptionWHERE g_ID=g_IDEND GOExec Goods _INSEARTg_ID=,e_ID=,g_name= ,g_Discount=,g_Price=,g_number=,g_produceDate= ,g_status=,g_Description=,u_name=