目录

一、需求分析

1、系统需求分析描述

1.1.1系统需求说明:

1.1.2系统可行性分析:

1.1.3系统应用范围:

2、系统功能结构图

3、业务流程图

二、概念结构设计

1.实体描述

2.局部E-R图

2.2.1员工页面

2.2.2库存页面

2.2.3仓库界面

2.2.4商品界面

2.2.5商品类型界面

2.2.6供应商页面

3、全局E-R图

三、逻辑结构设计

1.E-R图转换到关系模式

2.数据字典、表结构设计(表清单和各表字段信息列表)

3.2.1员工信息表

3.2.2库存信息表

3.2.3仓库信息表

3.2.4商品信息表

3.2.5商品类别信息表

3.2.6供应商信息表

四、数据库实施

1.使用SQL语句完成表的创建

4.1.1员工表的创建

4.1.2库存信息表的创建

4.1.3仓库信息表的创建

4.1.4商品信息表的创建

4.1.5商品类型信息表的创建

4.1.6供应商类型信息表的创建

2.使用SQL语句完成表数据的添加

4.2.1员工表数据的添加

4.2.2库存表数据的添加

4.2.3仓库表数据的添加

4.2.4商品表数据的添加

4.2.5商品类型表数据的添加

4.2.6供应商表数据的添加

3.使用SQL语句自定义创建视图

4.3.1员工表的视图

4.3.2库存表的视图

4.3.3仓库表的视图

4.3.4商品表的视图

4.3.5商品类型的视图

4.3.6供应商表的视图

4.使用SQL语句自定义完成增删改查操作

4.4.1进行表内容的增加

4.4.2进行表内容的删除

4.4.3进行表内容的修改

4.4.4进行表的查找

五、总结


数据库课程设计

课程名称:数据库课程设计

设计题目:超市信息管理系统

专业班级:

学    号:

学生姓名:

指导教师:

年    月   日

一、需求分析

1、系统需求分析描述

1.1.1系统需求说明:

随着技术的发展,超市的竞争进入了一个全新的时代,超市与超市之间的竞争不再是规模的竞争而是技术、人才与管理的竞争。技术与管理的提升是超市竞争的核心,所以市场对超市信息管理系统的需求还是比较大的。

超市信息管理系统是管理超市信息的一种系统其功能包括员工管理、库存管理、商品管理、仓库管理以及进货管理。

员工管理:对超市的员工信息进行管理,包括查询、更新等功能;

库存管理:对超市采购的商品进行编码入库,能够根据销售清单进行出货管理以及库存统计;

商品管理:对超市采购来的商品进行分类,标注需要注意的注意事项,能够更好的帮助超市管理者管理超市;

仓库管理:让超市管理者能够更好的清楚各个仓库的情况;

进货管理:对供应商信息进行管理,实施产品采购,并进行进货查询。

1.1.2系统可行性分析:

现在生活中的超市大型超市比较多,导致员工雇佣多、商品信息多、仓库管理麻烦等诸多情况,若这些情况均用纸面记录的方式,会花费超市管理人更多的精力与财力,而我的超市信息管理系统通过互联网查询和更新销售信息快捷、方便,仅用一两个人就能做到,可以减少不必要的开支,提高了查询效率。从经济与效率方面来说我的超市信息管理系统是可行的。

而这个系统也比较简单,开发者不需要投入过多的精力与时间,所以在开发者的角度来看这个超市信息管理系统是可行的。

1.1.3系统应用范围:

各种中小型超市皆可运用

2、系统功能结构图

3、业务流程图

二、概念结构设计

1.实体描述

该超市信息管理系统的抽象实体有六个

  1. 员工实体属性:员工编号,姓名,性别,年龄,职务,入职日期;
  2. 库存实体属性:库存编号,商品编号,商品名称,商品价格,库存商品数量,仓库编号,商品入库时间,商品出库时间,商品出库数量;
  3. 仓库实体属性:仓库编号,仓库姓名;
  4. 商品实体属性:商品编号,名称,价格,商品类型;
  5. 商品类型实体属性:商品类型编号,类型名称,商品注意事项;
  6. 供货商实体属性:供货商编号,姓名,电话,地址。

2.局部E-R图

2.2.1员工页面

2.2.2库存页面

2.2.3仓库界面

2.2.4商品界面

2.2.5商品类型界面

2.2.6供应商页面

3、全局E-R图

三、逻辑结构设计

1.E-R图转换到关系模式

供应商与库存之间是多对多的联系类型,因此,将供应商、库存以及供货联系分别设计成如下的关系模式:

供应商(供应商编号,姓名,电话,地址)

库存(库存编号,商品编号,商品名称,商品价格,库存数量,仓库编号,商品入库时间,商品出库时间,商品出库数量)

供货(供应商编号,库存编号,供货日期,供货价格)

库存与仓库也是多对多的联系类型,由于“库存”关系模式上方已经给出,所以只需要给出一个仓库的关系模式即可,它们间的联系则被放在该关系模式中:

仓库(仓库编号,仓库名称)

员工对商品也是多对多的联系类型,不同的员工可以销售并查询不同的商品,因此,将员工、商品以及销售联系分别设计成如下的关系模式:

员工(员工编号,员工姓名,性别,年龄,职务,入职日期)

商品(商品编号,名称,价格,商品类型)

销售(员工职务,商品名称,价格)

一个商品类型可以对应多个商品,所以说商品与商品类型之间是一对多的联系类型。也就可以用两个关系模式来进行表示。由于“商品”关系模式在上方已经给出,所以只需要给出商品类型的关系模式即可,它们间的联系则被放在该关系模式中:

商品类型(商品类型编号,类型名称,商品注意事项)

一个仓管可以管理多个仓库,所以说员工与仓库之间的管理是一对多的联系类型。

2.数据字典、表结构设计(表清单和各表字段信息列表)

3.2.1员工信息表

字段名

数据类型

长度

约束

备注

employee_id

int

6

主键

员工编号

employee_name

varchar

40

非空

员工姓名

employee_sex

varchar

40

非空

员工性别

employee_age

varchar

100

非空

员工年龄

employee_title

varchar

40

非空

员工职务

entry_date

datetime

入职日期

3.2.2库存信息表

字段名

数据类型

长度

约束

备注

id

int

1

主键

库存编号

goods_id

varchar

100

主键

商品编号

goods_name

varchar

40

非空

商品名称

goods_price

decimal

(8,4)

非空

商品价格

store_goods_num

varchar

40

非空

库存商品数量

storehouse_id

varchar

100

非空

仓库编号

storage_time

datetime

进货时间

delivery_time

datetime

出货时间

delivery_num

varchar

40

出货数量

3.2.3仓库信息表

字段名

数据类型

长度

约束

备注

storehouse_id

int

5

主键

仓库编号

storehouse_name

varchar

40

非空

仓库名称

3.2.4商品信息表

字段名

数据类型

长度

约束

备注

goods_id

int

1

主键

商品编号

goods_name

varchar

20

非空

商品名称

goods_price

varchar

(6,2)

非空

商品价格

goodtype

varchar

外键

商品类别

3.2.5商品类别信息表

字段名

数据类型

长度

约束

备注

type_id

int

1

主键

商品类型编号

type_name

varchar

20

非空

商品类型名称

content

varchar

50

商品类型注意事项

3.2.6供应商信息表

字段名

数据类型

长度

约束

备注

Supplier_id

int

1

主键

供应商编号

Supplier_name

varchar

40

非空

供应商姓名

Supplier_telephone

varchar

20

非空

供应商电话号码

Supplier_address

varchar

60

非空

供应商地址

四、数据库实施

1.使用SQL语句完成表的创建

4.1.1员工表的创建

CREATE TABLE s_employee(

employee_id int UNSIGNED auto_increment,

employee_name VARCHAR(40) NOT NULL,

employee_sex VARCHAR(40) NOT NULL,

employee_age VARCHAR(100) NOT NULL,

employee_title VARCHAR(40) NOT NULL,

entry_date DATE,

PRIMARY KEY(employee_id)

);

4.1.2库存信息表的创建

CREATE TABLE `s_stock`(

`id` INT UNSIGNED auto_increment,

`goods_id` VARCHAR(100) NOT NULL,

`goods_name` VARCHAR(40) NOT NULL,

`goods_price` DECIMAL(8,4),

`store_goods_num` VARCHAR(40) NOT NULL,

`storehouse_id` VARCHAR(100) NOT NULL,

`storage_time` date,

`delivery_time` date,

`delivery_num` VARCHAR(40),

PRIMARY KEY (`id`, `goods_id`)

);

4.1.3仓库信息表的创建

CREATE TABLE `s_storehouse`(

`storehouse_id` INT UNSIGNED auto_increment,

`storehouse_name` VARCHAR(40) NOT NULL,

PRIMARY KEY (`storehouse_id`)

)ENGINE=InnoDB DEFAULT charset=utf8;

4.1.4商品信息表的创建

CREATE TABLE s_goods(

goods_id INT PRIMARY KEY auto_increment,

goods_name VARCHAR (20) NOT NULL,

goods_price DECIMAL (6,2) NOT NULL,

goodstype INT,

CONSTRAINT id_fk FOREIGN KEY(goodstype) REFERENCES s_goodstype(type_id)

);

4.1.5商品类型信息表的创建

CREATE TABLE s_goodstype(

type_id INT PRIMARY KEY auto_increment,

type_name VARCHAR (20) NOT NULL,

content VARCHAR (50)

);

4.1.6供应商类型信息表的创建

CREATE TABLE s_supplier(

supplier_id int UNSIGNED auto_increment,

supplier_name VARCHAR(40) NOT NULL,

supplier_telephone VARCHAR (20) NOT NULL,

supplier_address VARCHAR(60) NOT NULL,

PRIMARY KEY(supplier_id)

);

2.使用SQL语句完成表数据的添加

4.2.1员工表数据的添加

insert into s_employee VALUES (629001,'张三','男',28,'登记员','2022-06-20');

insert into s_employee VALUES (629002,'李四','男',34,'仓管','2021-07-10');

insert into s_employee VALUES (629003,'王五','男',45,'财务','2020-04-20');

insert into s_employee VALUES (629004,'李牛','男',24,'货运','2022-09-21');

insert into s_employee VALUES (629005,'马丁','男',28,'搬运','2022-06-20');

insert into s_employee VALUES (629006,'牛七','男',29,'收银员','2021-07-20');

4.2.2库存表数据的添加

INSERT INTO s_stock VALUES (1, 11000,'海飞丝洗发水',65.00,87,22000,'2022-04-07','2022-04-27',20);

INSERT INTO s_stock VALUES (2, 11000,'海飞丝洗发水',65.00,52,22001,'2022-04-07','2022-04-19',10);

INSERT INTO s_stock VALUES (3, 11001,'黑人牙膏',18.00,20,22003,'2021-12-12','2022-01-17',20);

INSERT INTO s_stock VALUES (4, 11002,'丹姿护发素',29.00,103,22003,'2020-11-07','2020-11-11',88);

INSERT INTO s_stock VALUES (5, 11003,'蓝月亮洗衣液',49.00,64,22002,'2021-05-01','2021-06-18',50);

INSERT INTO s_stock VALUES (6, 11004,'洁柔抽纸',69.00,200,22004,'2022-01-01','2022-04-03',180);

INSERT INTO s_stock VALUES (7, 11005,'洗面奶',38.00,370,22005,'2022-02-16','2022-05-27',108);

INSERT INTO s_stock VALUES (8, 11006,'护手霜',25.00,123,22002,'2021-10-01','2021-11-11',108);

INSERT INTO s_stock VALUES (9, 11006,'太谷饼',15.00,103,22004,'2021-11-01','2021-12-11',18);

INSERT INTO s_stock VALUES (10, 11006,'可口可乐',4.00,223,22000,'2022-10-01','2022-11-11',208);

INSERT INTO s_stock VALUES (11, 11006,'电动牙刷',125.00,323,22001,'2021-09-01','2021-09-11',128);

INSERT INTO s_stock VALUES (12, 11006,'香蕉',5.00,456,22000,'2022-09-01','2022-10-11',356);

INSERT INTO s_stock VALUES (13, 11006,'草莓',25.00,234,22003,'2022-02-01','2022-02-11',134);

4.2.3仓库表数据的添加

insert into s_storehouse VALUES (22000,'华中仓库1号');

insert into s_storehouse VALUES (22001,'华东仓库2号');

insert into s_storehouse VALUES (22002,'华南仓库3号');

insert into s_storehouse VALUES (22003,'华西仓库4号');

insert into s_storehouse VALUES (22004,'华北仓库5号');

4.2.4商品表数据的添加

INSERT INTO s_goods VALUES (1,'海飞丝洗发水',65.00,3);

INSERT INTO s_goods VALUES (2,'黑人牙膏',18.00,3);

INSERT INTO s_goods VALUES (3,'丹姿护发素',65.00,3);

INSERT INTO s_goods VALUES (4,'蓝月亮洗衣液',49.00,2);

INSERT INTO s_goods VALUES (5,'洁柔抽纸',69.00,2);

INSERT INTO s_goods VALUES (6,'洗面奶',38.00,3);

INSERT INTO s_goods VALUES (7,'护手霜',25.00,4);

INSERT INTO s_goods VALUES (8,'太谷饼',15.00,6);

INSERT INTO s_goods VALUES (9,'可口可乐',4.00,6);

INSERT INTO s_goods VALUES (10,'电动牙刷',125.00,1);

INSERT INTO s_goods VALUES (11,'香蕉',5.00,5);

INSERT INTO s_goods VALUES (12,'草莓',25.00,5);

4.2.5商品类型表数据的添加

INSERT INTO s_goodstype VALUES (1,'家用电器','电器类商品为高价值商品应重点维护');

INSERT INTO s_goodstype VALUES (2,'日常生活用品','日常生活用品种类复杂注意分类');

INSERT INTO s_goodstype VALUES (3,'洗漱用品','洗头的与洗脸的不要混乱摆放,给顾客造成不便');

INSERT INTO s_goodstype VALUES (4,'护肤品','各品牌护肤品摆放整齐');

INSERT INTO s_goodstype VALUES (5,'生鲜水果','保质期较短货架上的生鲜水果必须要是新鲜的');

INSERT INTO s_goodstype VALUES (6,'食品饮料','注意食品饮料的保质期,过期食品不要出现在货架上');

4.2.6供应商表数据的添加

INSERT INTO s_supplier VALUES (1,'赵六',13456727896,'杭州');

INSERT INTO s_supplier VALUES (2,'孙琪',13678765678,'西安');

INSERT INTO s_supplier VALUES (3,'牛八',13994987689,'福建');

INSERT INTO s_supplier VALUES (4,'李九',13245678967,'郑州');

INSERT INTO s_supplier VALUES (5,'张十',13776789567,'昆明');

INSERT INTO s_supplier VALUES (6,'钱九',13843567779,'重庆');

INSERT INTO s_supplier VALUES (7,'胡七',13564565656,'黑龙江');

3.使用SQL语句自定义创建视图

4.3.1员工表的视图

CREATE VIEW s_employee_view AS SELECT employee_name,employee_age from s_employee;

SELECT * FROM s_employee_view;

4.3.2库存表的视图

CREATE VIEW s_stock_view AS SELECT delivery_time,store_goods_num FROM s_stock;

SELECT * FROM s_stock_view;

4.3.3仓库表的视图

CREATE VIEW s_storehouse_view AS SELECT storehouse_id,storehouse_name FROM s_storehouse;

SELECT * FROM s_storehouse_view;

4.3.4商品表的视图

CREATE VIEW s_goods_view AS SELECT goods_name,goods_price FROM s_goods;

SELECT * FROM s_goods_view;

4.3.5商品类型的视图

CREATE VIEW s_goodstype_view AS SELECT type_name,content FROM s_goodstype;

SELECT * FROM s_goodstype_view;

4.3.6供应商表的视图

CREATE VIEW s_supplier_view AS SELECT supplier_name,supplier_address FROM s_supplier;

SELECT * FROM s_supplier_view;

4.使用SQL语句自定义完成增删改查操作

4.4.1进行表内容的增加

#在员工表员工id后面再添加一列任职仓库

ALTER TABLE s_employee ADD COLUMN storehouse_id VARCHAR(100)

NULL

AFTER employee_id;

4.4.2进行表内容的删除

#删除id=1的商品

DELETE FROM s_goods

WHERE goods_id = 1;

4.4.3进行表内容的修改

#将洁柔抽纸的价格修改为九折后的价格

UPDATE s_stock SET goods_price=ROUND(goods_price*0.9,4)WHERE goods_name='洁柔抽纸';

#把丹姿护发素的出库数量修改为3

UPDATE s_stock SET delivery_num=3 WHERE goods_name='丹姿护发素';

4.4.4进行表的查找

#显示各商品的出库数量,按出库数量有多到少排列

#ORDER BY

SELECT s.goods_name,SUM(s.delivery_num) AS num

FROM s_stock AS s

GROUP BY s.goods_id

ORDER BY num DESC;

五、总结

数据库课程设计超市信息管理系统相关推荐

  1. 数据库课程设计-员工信息管理系统(基于python和MySQL实现)

    一.项目地址 具体项目相关信息可移步至我的Github查看,那里有整套项目文件以及课程设计报告等,仅供交流学习和参考,如有错误之处请多多指正哦. 二.系统定义 随着计算机技术的不断发展,计算机作为知识 ...

  2. oracle学生信息管理系统课程设计,数据库课程设计-学生信息管理系统的设计与实现.doc...

    数据库课程设计-学生信息管理系统的设计与实现 2011-2012课程设计II 学生信息管理系统的设计与实现 一 设计内容 建立一个简单的在校学生信息查询系统,可以让使用者查询到学生的一些简单的个人信息 ...

  3. 【记录贴】数据库课程设计——学生信息管理系统

    前言 记录下学习的点点滴滴,留下属于我的足迹. 以此篇记录我的第一次课程设计. 课设实现 一.课程设计题目 题目一 学生信息管理系统 二.总体设计 原理及工具 JAVA的前端搭建:JAVA GUI M ...

  4. 数据库课程设计——学生信息管理系统

    学生信息管理系统 0 前言 0.1效果演示 0.2 开发工具 0.3 创新点 1.系统需求分析 1.1 系统功能分析 1.2 系统功能模块设计(划分) 1.3 与其它系统的关系 1.4 数据流程图 2 ...

  5. 查询学生选修课程管理系统java_JAVA数据库课程设计学生选课管理系统的

    <JAVA数据库课程设计学生选课管理系统的>由会员分享,可在线阅读,更多相关<JAVA数据库课程设计学生选课管理系统的(59页珍藏版)>请在人人文库网上搜索. 1.一.课程设计 ...

  6. c语言课程设计宠物店,c语言课程设计-宠物店信息管理系统.doc

    c语言课程设计-宠物店信息管理系统 合肥学院 计算机科学与技术系 课程设计报告 2012-2013学年第二学期 课程面向过程综合设计课程设计名称宠物(小动物)店信息管理系统 学生姓名宋俊 学号 专业班 ...

  7. java 数据库工资管理系统设计_数据库课程设计—企业工资管理系统(java版完整代码)...

    数据库课程设计-企业工资管理系统(java版完整代码) 数 据 库 课 程 设 计 报 告2016年 5月 20日 目 录企业工资管理系统姓 名 王 素 文班 级 软 133学 号 139074224 ...

  8. ASP.NET程序设计课程设计——学生信息管理系统

    点击查看详细信息 ASP.NET程序设计课程设计--学生信息管理系统 一.实验目的 综合运用们所学的ASP.NET知识,开发学生信息管理系统,完成相关功能: (1)教师管理 (2)学生信息 (3)课程 ...

  9. 软件工程测试旅游管理系统,软件工程课程设计---旅游信息管理系统

    软件工程课程设计---旅游信息管理系统 福建农林大学金山学院福建农林大学金山学院 课程设计报告课程设计报告 课程名称 软件工程 课程设计题目 旅游信息管理系统 姓 名 系 信息与机电工程系 专 业 计 ...

最新文章

  1. faster-rcnn网络
  2. 我当了二十几年总经理,总结出这10条经验,看懂了你将少走些弯路
  3. 棋盘游戏的人工智能(二)------剪支
  4. Spring+XFire WS-Security安全认证开发感悟
  5. angular中的依赖注入
  6. Android之解决NestedScrollView嵌套ViewPager导致出现左右页面滑动冲突
  7. Python多线程报错之RuntimeError
  8. Qt Project Build error PRJ0019: 工具从Moc'ing xxx.h...
  9. java 定义接口school_Java接口介绍
  10. 29. Divide Two Integers[M]两数相除
  11. 计算机重装系统后无法重启,u盘安装系统之后重启电脑没反应怎么办
  12. PHY--PDCCH
  13. 如何安装 elasticsearch-head 插件?
  14. 解决 ‘@‘ that cannot start any token. (Do not use @ for indentation)
  15. 12月29日每日一题
  16. Android实现应用内多语言切换
  17. 尚硅谷Linux运维讲解视频(2018.12)
  18. 前端不让浏览器自动填充账号密码
  19. python get方法列表参数_python中requests库get方法带参数请求
  20. 测试下4444444

热门文章

  1. 有道难题2010网易编程挑战赛 20100526练习题C Sibonacci
  2. Java-Stream流式编程详解
  3. 求职招聘系统开发(APP、小程序、公众号)
  4. web界面 之 登录 (初稿)
  5. VC皮肤库SkinSharp 1.0.6.6的使用
  6. 夏普LCD连接电脑问题
  7. RStudio安装包时报错:Package LibPath Version Priority Depends Imports LinkingTo Suggests Enhances OS_
  8. 微信小程序客服功能简单使用
  9. 如何查询自己实名制名下微信号的方法步骤
  10. jboss应用服务器软件,JBOSS的安装与配置