目录

一、功能概述

二、概念设计

局部E-R图

​编辑

全局E-R图

三、逻辑结构设计

四、物理结构设计

创建数据库

创建数据表

插入表数据

创建视图


一、功能概述

1. 订单处理部负责处理客户的订单和库存。

2. 如果一个客户可以有一份或多份订单,每份订单可以订购一种或多种商品。每份订单有一张发票,客户可以通过多种方式来支付货款,例如支票、信用卡或者现金。处理这个客户订购登记的职工的名字也要记录下来。

3. 部门工作人员负责整理订单并根据库存情况处理订单。如果订单上的产品在库存中有,就可以直接发货,发货方式也有多种;如果订单上的产品在库存中没有,就不需要登记订购的产品或者订购其他产品。

效果展示:

二、概念设计

局部E-R图

1.职工与订单的发货关系以及订单与发票的开具关系的局部E-R图,如图局部E-R图。

2.客户与职工的接待关系,客户与订单的支付关系,订单与商品的订购关系的局部E-R图

全局E-R图

三、逻辑结构设计

将上述的全局E-R图转换为关系模式

商品(商品编号, 商品名,商品单价, 商品库存, 订单号)

主码: 商品编号

客户(客户号, 客户姓名, 客户电话, 客户地址,职工编号)

主码:客户号

订单(订单号, 出单日期, 商品数量, 客户号,职工编号)

主码:订单号

职工(职工编号, 职工姓名, 职工岗位)

主码: 职工编号

发票(发票编号, 开具日期, 金额, 支付方法, 订单号)

主码: 发票编号

关系模式评价:属于2NF,订单号->客户号, 客户号->职工编号,订单号->职工编号, 存在传递依赖。

优化:

商品(商品编号, 商品名,商品单价, 商品库存, 订单号)

主码: 商品编号

客户(客户号, 客户姓名, 客户电话, 客户地址,职工编号)

主码:客户号

订单(订单号, 出单日期, 商品数量, 客户号)

主码:订单号

职工(职工编号, 职工姓名, 职工岗位)

主码: 职工编号

发票(发票编号, 开具日期, 金额, 支付方法, 订单号)

主码: 发票编号

四、物理结构设计

根据上述关系模式创建数据库,创建数据表,插入适当的数据

创建数据库

CREATE DATABASE CP

创建数据表

--1.建立职工表(包含职工编号(主码),职工姓名,职工岗位)
CREATE TABLE administrator(ad_num char(10) PRIMARY KEY,ad_name char(20),ad_job char(20)
)--2.建立客户表
CREATE TABLE customer(cus_num char(10) PRIMARY KEY,cus_name VARCHAR(20) NOT NULL,cus_tel VARCHAR(11),cus_address VARCHAR(20),ad_num char(10),FOREIGN KEY (ad_num) REFERENCES administrator (ad_num)
)--3.建立订单表
CREATE TABLE cp_order(order_num VARCHAR(10) PRIMARY KEY,order_date DATE,cus_num CHAR(10),goods_totalnum INT,FOREIGN KEY (cus_num) REFERENCES customer (cus_num)
)--4.建立商品表
CREATE TABLE goods(goods_num char(10) PRIMARY KEY,goods_name VARCHAR(20) NOT NULL,goods_price FLOAT NOT NULL,goods_storenum int NOT NULL,order_num VARCHAR(10),FOREIGN KEY (order_num) REFERENCES cp_order(order_num)
)--5.建立发票表
CREATE TABLE invoice(inv_num char(10) PRIMARY KEY,inv_date DATE,inv_price FLOAT,inv_payway char(20),order_num varchar(10),FOREIGN KEY (order_num) REFERENCES cp_order(order_num)
)

插入表数据

--1.插入员工表数据。
INSERT INTO administrator VALUES
('2021001','张三','CEO'),
('2021002','李四','CFO'),
('2021003','王五','员工'),
('2021004','赵六','员工'),
('2021005','李七','员工')--2.插入客户表数据
INSERT INTO customer VALUES
('001','小一','10251375582','台湾1号','2021001'),
('002','小二','10255375583','台湾2号','2021001'),
('003','小三','14257375584','台湾3号','2021001'),
('004','小四','18254375585','台湾4号','2021002'),
('005','小五','17254375586','台湾5号','2021002'),
('006','老六','14254375587','台湾6号','2021003'),
('007','小七','13259375588','台湾7号','2021004'),
('008','小八','12256375589','台湾8号','2021005')--3.插入订单表数据
INSERT INTO cp_order VALUES
('H001','2021-10-30','001',8),
('H002','2021-10-30','002',500),
('H003','2021-10-31','003',100),
('H004','2021-11-11','004',60),
('H005','2021-11-1','005',10),
('H006','2021-11-11','006',500),
('H007','2021-11-11','007',100),
('H008','2021-11-11','008',150)--4.插入商品表数据
INSERT INTO goods VALUES
('A001','假发',99.99,5,'H001'),
('A002','假牙',999.99,3,'H001'),
('A005','假药',0.99,500,'H002'),
('D040','脱发膏',8.8,100,'H003'),
('S011','生发剂',12.5,60,'H004'),
('G001','护发素',20,10,'H005'),
('W006','牙刷',2.5,500,'H006'),
('W007','毛巾',10.5,100,'H007'),
('W008','牙膏',15.5,50,'H008'),
('W009','杯子',6.6,100,'H008')--5.插入发票表数据
INSERT INTO invoice VALUES
('F001','2021-10-30',3499.65,'欠账','H001'),
('F002','2021-10-30',495,'危心支付','H002'),
('F003','2021-10-31',880,'吱富包支付','H003'),
('F004','2021-11-11',750,'危心支付','H004'),
('F005','2021-11-1',200,'危心支付','H005'),
('F006','2021-11-11',1250,'吱富包支付','H006'),
('F007','2021-11-11',1050,'吱富包支付','H007'),
('F008','2021-11-11',1435,'银行卡支付','H008')--6.更新数据内容:订单若超过1000元优惠总价格的3%,若超过5000元优惠总价格的5%。
--订单价格小于1000
UPDATE invoice
SET fin_price = inv_price
WHERE inv_price<1000--订单价格在1000和5000之间
UPDATE invoice
SET fin_price = inv_price * (1-0.03)
WHERE inv_price>=1000 AND inv_price <5000--订单价格在5000以上
UPDATE invoice
SET fin_price = inv_price * (1-0.05)
WHERE inv_price >= 5000

创建视图

--1.可选商品视图(库存商品要大于0)
CREATE VIEW available_goods (商品名,库存数量,商品单价) AS
SELECT goods_name,goods_storenum,goods_price
FROM goods
WHERE goods_storenum>0--2.订单的商品信息视图(商品号,商品名,商品单价,选购数量)
CREATE VIEW order_goods(商品号,商品名,商品单价,选购数量)AS
SELECT goods.goods_num,goods_name,goods_price,cp_order.goods_totalnum
FROM goods INNER JOIN cp_order ON goods.order_num = cp_order.order_num--3.每种产品的订购情况视图
CREATE VIEW goods_order(商品号,商品名,订单号) AS
SELECT goods_num,goods_name,order_num
FROM goods--4.已开具发票的视图,其中包含每个订单的执行情况。
CREATE VIEW invoice_order (发票号,订单日期,支付情况,订单号) AS
SELECT inv_num AS 发票号,inv_date AS 订单日期,inv_payway AS 支付情况,order_num AS 订单号
FROM invoice

客户订购登记管理系统(数据库)相关推荐

  1. 计算机毕业设计JAVA毕业生就业去向登记管理系统mybatis+源码+调试部署+系统+数据库+lw

    计算机毕业设计JAVA毕业生就业去向登记管理系统mybatis+源码+调试部署+系统+数据库+lw 计算机毕业设计JAVA毕业生就业去向登记管理系统mybatis+源码+调试部署+系统+数据库+lw ...

  2. java计算机毕业设计客户关系智能管理系统源码+mysql数据库+系统+lw文档+部署

    java计算机毕业设计客户关系智能管理系统源码+mysql数据库+系统+lw文档+部署 java计算机毕业设计客户关系智能管理系统源码+mysql数据库+系统+lw文档+部署 本源码技术栈: 项目架构 ...

  3. asp.net客户积分兑换管理系统VS开发sqlserver数据库web结构c#编程计算机网页源码项目

    一.源码特点      asp.net 客户积分兑换管理系统 是一套完善的web设计管理系统,系统具有完整的源代码和数据库,系统主要采用B/S模式开发,开发环境为vs2010,数据库为sqlserve ...

  4. java计算机毕业设计甜趣网上蛋糕店订购系统源代码+数据库+系统+lw文档

    java计算机毕业设计甜趣网上蛋糕店订购系统源代码+数据库+系统+lw文档 java计算机毕业设计甜趣网上蛋糕店订购系统源代码+数据库+系统+lw文档 本源码技术栈: 项目架构:B/S架构 开发语言: ...

  5. java计算机毕业设计-损失赔偿保险的客户情况登记及管理-源程序+mysql+系统+lw文档+远程调试

    java计算机毕业设计-损失赔偿保险的客户情况登记及管理-源程序+mysql+系统+lw文档+远程调试 java计算机毕业设计-损失赔偿保险的客户情况登记及管理-源程序+mysql+系统+lw文档+远 ...

  6. 电影院票务管理系统数据库设计(1)

    这两天听到一道面试题:设计一个电影院票务管理系统的表结构. 挺有意思的,我自己也试着做了一做,感觉还是有不少收获的.在本文中我想把做这道题的整个思路重新理一下,也算做个整理了. 现在能得到的需求只有一 ...

  7. 题目:社区人员登记管理系统(有源码链接免费下载)

    一. 语言和环境 语言和环境 1. 实现语言:JAVA 语言. 2. 环境要求:MyEclipse/Eclipse + Tomcat + MySql. 3. 使用技术:Jsp+Servlet+Java ...

  8. 固定资产管理mysql_固定资产管理系统数据库设计

    固定资产管理系统数据库设计 如何看待固定资产管理系统数据库设计呢?近年来越来越多的企业在资产管理方面投入着更多的精力,主要就是因资产管理是企业生产经营活动中比较重要的环节.而其中固定资产又是企业中资产 ...

  9. 计算机机房管理系统 数据库课设,学校机房管理系统数据库课程设计.doc

    学校机房管理系统数据库课程设计.doc 数据库原理及应用课程设计设计报告题目机房管理系统后台数据库学号131007220学生姓名指导教师提交时间2015/1/4目录第1章需求分析111课程设计概述11 ...

最新文章

  1. 死锁产生的原因和解锁的方法
  2. zen3架构_Zen3架构移动版CPU基准测试成绩泄露,IPC性能大增
  3. cmpp3.0协议 java,JAVA CMPP3.0协议实现
  4. tkinter回调异常_使用matplotlib保存动画时Tkinter回调出现异常
  5. GPSD架构介绍及交叉编译和使用
  6. Linux库概念及相关编程(动态库、静态库、环境变量)
  7. AndroidStudio_Android Studio项目中报Call requires API level 18 (current min is 16)---Android原生开发工作笔记232
  8. 想了解“云+AI”究竟怎么“玩儿”,还要看这里、看这里!
  9. 2022新版WIFI营销微信小程序源码+三级分销
  10. 单片机课程设计——交通灯
  11. 2019,谁把握了 “私域流量”,谁就把握了未来十年!私域流量的未来是矩阵化!...
  12. 截止失真放大电路_新手必看!基本放大电路应该如何分析?
  13. 小程序源码:全新独立后台修复登录在线答题-多玩法安装简单
  14. TypeError: Converting circular structure to JSON
  15. Excel表格如何设置成不可编辑的模式?
  16. OpenCV Gabor滤波器实现纹理提取与缺陷分析
  17. EHW_DIMM分类与比较
  18. 为ThinkCentre M910t-NO76重装Windows7(64位)系统
  19. jfinal 上传图片、文件
  20. Unity3D RectTransform中文教程详细用法分析

热门文章

  1. pytorch repeat的用法
  2. Java设计模式之行为型模式
  3. Oracle表分区详解(优缺点)
  4. Oracle特殊字符,转义字符的处理
  5. 部件库,欧姆龙Plc触摸屏,三菱FX,A,Q全系列,台达,松下,西门子PLC,变频器,施耐徳按钮
  6. 【rzxt】笔者支招:AMD双核电脑安装补丁后的问题
  7. [系统安全] 二十六.WannaCry勒索病毒分析 (2)MS17-010漏洞利用及蠕虫解析
  8. 智能android电视更换播放器,GitHub - kaigeLove/TvPlayer: android智能电视播放器,可以播放各电视台节目,播放基于ijkplayer的实现。...
  9. 12255移动商务安全
  10. 2005年上半年网络管理员考试