1、数据库销售订单管理系统课程设计目 录1引言 .11.1 编写目的 .11.2 参考资料 .12.需求规约 .22.1 业务描述 .22.2 需求分析 .23.数据库环境说明 .24.数据库的命名规则 .24.1 数据库对象命名规则 .24.2 数据项编码规则 .25.逻辑设计 .25.1 ER 图 .25.2 关系模型 .26.物理设计 .26.1 表汇总 .26.2 表1: SUPPLIERS 表( 供应商表) .26.3 表2: PRODUCT 表(产品表) .26.4 表3: SP 表( 供应商产品供应表) .26.5 表4: ORDERS 表(订单表) .26.6 表5: PO 表(
2、产品订购表) .26.7 表6: EMPLOYEE 表(雇员表) .26.8 表7: CUSTOMER 表(客户表) .26.9 视图的设计 .26.10 存储过程的设计 .26.11 触发器的设计 .26.12 函数的设计 .27.安全性设计 .27.1 防止用户直接操作数据库的方法 .27.2 用户帐号密码的加密方法 .27.3 角色与权限 .28.数据库管理与维护说明 .21总结 .2附录 .21引言1.1 编写目的本文档是销售订单数据库管理系统设计文档的组成部分,编写数据库设计文档的目的是:明确数据库的表名、字段名等数据信息,用来指导后期的数据库脚本的开发,本文档遵循SQL SERVE
3、R 2008 数据库设计和开发规范 。本文档的读者对象是需求人员、系统设计人员、开发人员、测试人员。设计该数据库的目的是为了能够模拟完成一次订单销售流程。1.2 参考资料表 1 参考资料表资料名称 作者 文件编号、版本数据库系统概论 王珊、萨师煊 2006 年 5 月第 4 版数据库设计入门经典鲍威尔 2007 年 3 月第 1 版数据库原理 克罗恩科 2005 年 6 月第 1 版22.需求规约2.1 业务描述销售订单数据库管理系统的总目标是:在计算机网络,数据库和先进的开发平台上,利用现有的软件,配置一定的硬件,开发一个具有开放体系结构的、易扩充的、易维护的、具有良好人机交互界面的销售订单
4、数据库管理系统,实现订单的下发,数据的查询删除和修改。2.2 需求分析本销售订单数据库管理系统的需求如下,首先在供应商表、供应表、产品表、订购表、订单表、客户表、雇员表的基本表上建立增、删、改、查的存储过程。以便以后再次用到的时候可以直接用存储过程而不用反复的写代码。第二在实验中间建立触发器,当订购产品的时候可以查询库存,如果满足要求,那么就库存通过触发器实现库存的减少。第三在这次客场设计的基础上建立一些查询,比如说要求建立订单最多的客户信息的查询,平均工资的查询,库存最多的产品的查询。最后要求完成一次下订单的流程。此外,在一个完整的订单销售流程中,本数据库系统还提供查询某供应商供应的产品信息
5、,查询某产品信息,查询某客户信息,查询某订单订购的产品的信息。对于客户而言,还提供了查询订单最多的客户的功能。例如当在订单的中只要知道订单的编号,就可以知道订单的产品的名字,产品的数量(产品的信息),雇员的信息,客户的信息。在订购的表中知道订单号就可以知道订单中产品的数量。可以修改数据库里面的数据,例如条件知道供应商编号就可以对供应商的信息(编号,姓名,联系电话,地址等)进行修改,还可以对该供应商进行删除。知道客户的编号就可以对客户的数据 (编号,信息 姓名,联系电话等)进行修改,还可以对该用户进行删除。总的来说,本数据库系统能够达到模拟完成一次订单销售流程的要求。在本销售订单数据库管理系统中
6、,3有一些限制性条件,比如一个客户可以下多个订单,但一个订单只能由一个客户下,一个订单可以订购多种产品,每种产品可被不同订单订购等等,这些限制条件的加入能够使本数据库管理系统的功能更加完善,能够满足更高的要求。3.数据库环境说明表 2 数据库环境说明表数据库实例数据库系统数据库部署环境数据库设计工具数据库存放位置说明销售订单数据库管理系统Sql Server 2008Windows 7 Sql Server 存放位置,绝对路径/相对路径用于订单销售管理44.数据库的命名规则4.1 数据库对象命名规则表 3 数据库对象命名表数据库对象 命名规则 备注表 S 功能描述字符串 例如: Supplie
7、rs 供应商表视图 view_功能描述字符串 例如:view_Product 产品视图触发器 insert_功能描述字符串 例如:insert_PO 更改库存触发器存储过程 Procedure_功能描述字符串 例如:pro_sertSuppliers 存储过程 4.2 数据项编码规则表 4 数据项编码表数据项 命名规则 数据类型 长度范围 备注供应商编号两位整数序号(001000)定长字符串 32 位 无产品号两 位 整 数 序 号(001000)定长字符串 32 位 无订单号两位整数序号(001000)定长字符串 32 位 无雇员号两位整数序号(001000)定长字符串 32 位 无客户号两
8、位整数序号(001000)定长字符串 32 位 无55.逻辑设计5.1 ER 图下下下 下下下下 下下下下下下 下下下 下下 下下 下下 下下下下下下下下下下下下1 n下下下下 下下下下下下下n1下 n1下下mn下下下下下下下下下下下下下下下下下下下下下下下下 下下下下下下下下下下下下下下下下 下下下下下下下下图 5.1E-R 图5.2 关系模型供应商(供应商编6号,名称,地址,联系电话)产品(产品编号,产品名称,产品类别,出厂价,价格,库存)供应(供应商编号,产品编号)订7购(产品编号,订单编号,数量)客户(客户编号,姓名,地址,电话)订单(订单编号,日期,客户编号,雇员编号,产品8种类)雇
9、员(雇员编号,姓名,电话,工资)6.物理设计6.1 表汇总表 5 汇总表表名 功能说明表 Suppliers 供应商表,存储供应商的编号等信息表 product 产品表,存储产品的编号、数量等信息表 Sp 供应商产品供应表,存储供应商所供应的产品对应信息表 orders 订单表,存储订单的编号、日期等信息表 po 产品订购表,存储产品订购的对应信息表 employee 雇员表,存储雇员的编号等信息表 customer 客户表,存储客户的编号等信息6.2 表1: Suppliers 表(供应商表)表名 Suppliers(供应商表)数据库用户 Sa主键 S_number其他排序字段 无索引字段
10、无序号 字段名称 数据类型 允许为 唯一 区别度 默认值 约束条件/说明96.3 表2:product 表(产品表)表名 Product(产品表)数据库用户 sa主键 P_number其他排序字段 无索引字段 无序号 字段名称 数据类型(精度范围)允许为空Y/N唯一Y/N区别度 默认值 约束条件/说明1 P_number char(32) N Y 高 无 主键/产品编号2 P_name char(32) N Y 高 无 产品名称3 P_price int Y N 中 无 产品原价4 P_exprice int Y N 中 无 产品出厂价5 P_inventoryint Y N 中 无 产品库存
11、量(精度范围) 空 Y/N Y/N1 S_number char(32) N Y 高 无 主键/供应商编号2 S_namechar(32) N N 中 无 供应商名称3 S_address char(32) N N 中 无 供应商地址4 S_telnum Char(32) N N 高 无 供应商电话sql 脚本 -建立供应商表create table Suppliers-供应商表(S_number char(32) not null primary key,S_name char(32) not null,S_adress char(32) not null,S_telnub char(32) not null,);