订单销售数据库设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

五、逻辑设计

5.1 ER图

5.2 关系模型

供应商(供应商编号,名称,地址,联系电话)

产品(产品编号,产品名称,产品类别,售价,出厂价,存货量) 供应(供应商编号,产品编号)

订购(产品编号,订单编号,数量)

客户(客户编号,,通信地址,)

订单(订单编号,日期,客户编号,雇员编号)

雇员(雇员编号,,联系电话,工资)

注:有下划线的表示该属性为主码。

六、物理设计

6.1 表汇总

6.2 表[1]:[ Suppliers表](供应商表)

6.3 表[2]:[ Product表](产品表)

6.4 表[3]:[ SP表](供应商产品供应表)

6.5 表[4]:[ Orders表](订单表)

6.6 表[5]:[ PO表](产品订购表)

6.7 表[6]:[ Employee表](雇员表)

6.8 表[7]:[ Customer表](客户表)

6.9 视图的设计

1、建立一张雇员信息的视图

目的:屏蔽雇员的工资信息。

功能:能够向管理员提供简明,直接的雇员信息展示。

意义:有利于数据库安全的维护,防止任意修改数据库中的雇员信息。create view view_Employee--建立Employee视图,屏蔽工资属性

as

select Enumber,Ename,Etelnum

from Employee

with check option;

2、建立一张产品信息的视图

目的:屏蔽产品的出厂价信息。

功能:能够向管理员提供简明,直接的产品信息展示。

意义:有利于数据库安全的维护,防止任意修改数据库中的产品信息。

create view view_Producte--建立Product视图,屏蔽出厂价属性

as

select Pnumber,Pname,Pcategory,Pprice,Pinventory

from view_Producte

with check option;

6.10 存储过程的设计

1、查询订单数量

功能:查询订单的数量目的:存储查询订单数量的操作

意义:下次重复同样的动作时,可直接执行存储过程,简化操作步骤

create procedure procedure_SearchOrdersNum --查询订单的存储过程

As select COUNT(*) '订单总数'--查询订单数量 from Orders;

2、查询客户的订单信息

功能:查询客户的订单信息目的:存储查询客户的订单信息的操作

意义:下次重复同样的动作时,可直接执行存储过程,简化操作步骤

create procedure procedure_CustomerOrders--查询某个客户订单信息

Cname char(10) as select Onumber,Odate,Enumber

from Orders,Customer

where Cname like Cname and umber like umber;

3、查询订单最多的客户信息

功能:查询订单最多的客户信息目的:存储查询订单最多的客户信息的操作意义:下次重复同样的动作时,可直接执行存储过程,简化操作步骤

create procedure procedure_SearchMaxOrders--查询订单最多的客户信息

as

select Cnumber,Cname,Caddress,Ctelnum

from Orders,Customer

where unmer=unmer

group by Cnumber having MAX(Cnumber);

4、查询客户信息

功能:查询客户信息目的:存储查询客户信息的操作

意义:下次重复同样的动作时,可直接执行存储过程,简化操作步骤

create procedure procedure_SearchCustomer--查询某客户信息

Cname char(10)

as

select *

from Customer

where Cname=Cname;

5、查询雇员信息

功能:查询雇员信息目的:存储查询雇员信息的操作

意义:下次重复同样的动作时,可直接执行存储过程,简化操作步骤

create procedure procedure_SearchEmployee--查询某雇员信息

Ename char(10)

as

select *

from Employee

where Ename=Ename;

6、查询某订单对应的产品信息

功能:查询某订单对应的产品信息目的:存储查询某订单对应的产品信息的操作意义:下次重复同样的动作时,可直接执行存储过程,简化操作步骤

create procedure procedure_SearchPO--查询某订单的产品信息

Onumber char(12)

as

select Onumber,Product.Pnumber,Pname,Pcategory,Pprice,Pex_price,Pinventory from Product,PO

where Onumber=Onumber and PO.Pnumber=Product.Pnumber;

7、查询产品信息

功能:查询产品信息目的:存储查询产品信息的操作

意义:下次重复同样的动作时,可直接执行存储过程,简化操作步骤

create procedure procedure_SearchProduct--查询某产品信息

Pnumber char(12)

as

select Pnumber,Pname,Pcategory,Pprice,Pex_price,Pinventory,Snumber

from Product,SP

where Pnumber=Pnumber and SP.Pnumber=Pnumber;

8、插入供应商信息

功能:插入供应商信息目的:存储插入供应商信息的操作

意义:下次重复同样的动作时,可直接执行存储过程,简化操作步骤

create procedure procedure_InsertSuppliers--插入供应商信息

Snumber char(12),Sname char(30),Saddress char(30),Stelnum int

as

IF EXISTS(SELECT * FROM Suppliers WHERE Snumber=Snumber)

print'该供应商记录已经存在'

ELSE

insert into Suppliers(Snumber,Sname,Saddress,Stelnum)

values(Snumber,Sname,Saddress,Stelnum);

相关文档
最新文档