数据库开发综合案例——仓库管理系统设计

打印 上一主题 下一主题

主题 828|帖子 828|积分 2484

目次
数据库表设计-核心表创建
数据库整体设计
头歌实行代码 
数据库表设计-项目职员表
头歌实行代码 
数据库表设计-关联表
头歌实行代码 


数据库表设计-核心表创建

数据库整体设计

一个仓库管理数据库,我们首先必要了解需求,才大概去设计我们的数据库,那么对一个仓库管理,肯定是对仓库里的零件进行管理,那么我们还必要知道零件的来源,哪些零件来自哪些供应商?零件的去向又是哪一零件供应给哪一个项目使用?这些零件存放在哪个仓库?哪个职员管理哪个仓库?等等一些题目,都是我们在设计数据库之前必要思考的题目。
仓库管理系统数据库的整体设计如下图所示:统共涉及到七张表:


  • 仓库表
  • 零件表
  • 供应商表
  • 项目表
  • 职员表
  • 供应关系表
  • 仓库关系表

仓库表
仓库表的紧张信息有如下内容:
字段名称类型备注约束warehouseIdint(11)仓库号主键,非空areaint(11)面积非空phoneint(11)电话号码非空 零件表
零件表的紧张信息有如下内容:
字段名称类型备注约束componentIdint(11)零件号主键,非空componentNamevarcahr(20)名称非空standardvarchar(255)规格非空pricedouble(10,2)价格非空describevarchar(255)描述非空 供应商表
供应商表的紧张信息有如下内容:
字段名称类型备注约束supplyIdint(11)供应商号主键,非空namevarchar(20)姓名非空addressvarchar(255)地点非空phoneint(11)电话号码非空accountbigint(18)账号非空 编程要求
请使用 warehouse_db 数据库创建表,具体任务如下:


  • 创建仓库表,定名为 warehouse;
  • 创建零件,定名为 component;
  • 创建供应商表,定名为 supplier。
测试说明
增补完代码后,点击测评,平台会对你编写的代码进行测试,当你的结果与预期输出一致时,即为通过。测试输出结果较长,请自行在测试会合检察。
   留意:每次点击评测后台都会将数据库情况重置,数据库 warehouse_db 会自动创建好。 
  头歌实行代码 

  1. #请在此添加实现代码
  2. ########## Begin ##########
  3. #在warehouse_db库中创建warehouse表
  4. use warehouse_db;
  5. CREATE TABLE `warehouse`  (
  6.     `warehouseId` int(11) NOT NULL,
  7.     `area` int(11) NOT NULL,
  8.     `phone` int(11) NOT NULL,
  9.     PRIMARY KEY (`warehouseId`)
  10. );
  11. #在warehouse_db库中创建component表
  12. CREATE TABLE `component`  (
  13.     `componentId` int(11) NOT NULL,
  14.     `componentName` varchar(20) NOT NULL,
  15.     `standard` varchar(255) NOT NULL,
  16.     `price` double(10, 2) NOT NULL,
  17.     `describe` varchar(255) NOT NULL,
  18.     PRIMARY KEY (`componentId`)
  19. );
  20. #在warehouse_db库中创建supplier表
  21. CREATE TABLE `supplier`  (
  22.     `supplyId` int(11) NOT NULL,
  23.     `name` varchar(20) NOT NULL,
  24.     `address` varchar(255) NOT NULL,
  25.     `phone` int(11) NOT NULL,
  26.     `account` bigint(18) NOT NULL,
  27.     PRIMARY KEY (`supplyId`)
  28. );
  29. ########## End ##########
复制代码
数据库表设计-项目职员表

设计编写完核心表之后,我们还必要设计表对仓库的零件进行贩卖和管理,这里我们设计两张表——项目表和职员表如下图:

项目表
项目表的紧张信息有如下内容:
字段名称类型备注约束projectIdint(11)项目号主键,非空projectBudgetdouble(10,0)项目预算非空commenceDatedatetime开工日期非空 职员表
字段名称类型备注约束employeeIdint(11)职工号主键,非空namevarchar(20)姓名非空ageint(3)年龄非空designationvarchar(20)职称非空warehouseIdint(11)仓库号外键,非空leadersvarchar(20)上级领导非空 编程要求
请使用 warehouse_db 数据库创建项目表和职员表,具体任务如下:
① 项目表定名为 project;
② 借阅表定名为 employee 。
留意其中外键要求如下:


  • 外键 warehouseId 的外键名称设置为 FK_employee_warehouseId,外键表为仓库表(warehouse)
头歌实行代码 

  1. #请在此添加实现代码
  2. ########## Begin ##########
  3. #在warehouse_db库中创建project表
  4. use warehouse_db;
  5. CREATE TABLE `project`  (
  6.     `projectId` int(11) NOT NULL,
  7.     `projectBudget` double(10, 0) NOT NULL,
  8.     `commenceDate` datetime NOT NULL,
  9.     PRIMARY KEY (`projectId`)
  10. );
  11. #在warehouse_db库中创建employee表
  12. CREATE TABLE `employee`  (
  13.     `employeeId` int(11) NOT NULL,
  14.     `name` varchar(20) NOT NULL,
  15.     `age` int(3) NOT NULL,
  16.     `designation` varchar(20) NOT NULL,
  17.     `warehouseId` int(11) NOT NULL,
  18.     `leaders` varchar(20) NOT NULL,
  19.     PRIMARY KEY (`employeeId`),
  20.     INDEX `FK_employee_warehouseId`(`warehouseId`),
  21.     CONSTRAINT `FK_employee_warehouseId` FOREIGN KEY (`warehouseId`) REFERENCES `warehouse` (`warehouseId`)
  22. );
  23. ########## End ##########
复制代码
数据库表设计-关联表

关联表
我们已经把所有的信息表都创建好了,如今我们就来创建他们之间的关联表——供应表和库存表:



  • 供应表
字段名称类型备注约束supplyIdint(11)供应商号主键,外键,非空projectIdint(11)项目号外键,非空componentIdint(11)零件号外键,非空supplyCountint(11)供应量非空

  • 库存表
字段名称类型备注约束warehouseIdint(11)仓库号主键,外键,非空componentIdint(11)零件号外键,非空repertoryCountint(11)库存量非空 编程要求
请在Begin-End之间使用 warehouse_db 数据库创建供应表和库存表,具体任务如下:
① 供应表定名为 supply ,留意其中外键要求如下:


  • 外键 supplyId 的外键名称设置为 FK_supply_supplyId,外键表为供应商(supplier);
  • 外键 projectId 的外键名称设置为 FK_supply_projectId,外键表为项目表(project);
  • 外键 componentId 的外键名称设置为 FK_supply_componentId,外键表为零件表(component)。
② 库存表定名为 repertory ,留意其中外键要求如下:


  • 外键 warehouseId 的外键名称设置为 FK_repertory_warehouseId,外键表为仓库表(warehouse);
  • 外键 componentId 的外键名称设置为 FK_repertory_component_componentId,外键表为零件表(component)。

开始你的任务吧,祝你成功!
头歌实行代码 

  1. #请在此添加实现代码
  2. ########## Begin ##########
  3. #在warehouse_db库中创建supply表
  4. use warehouse_db;
  5. CREATE TABLE `supply` (
  6.     `supplyId` int(11) NOT NULL,
  7.     `projectId` int(11) NOT NULL,
  8.     `componentId` int(11) NOT NULL,
  9.     `supplyCount` int(11) NOT NULL,
  10.     PRIMARY KEY (`supplyId`),
  11.     INDEX `FK_supply_supplyId`(`supplyId`),
  12.     CONSTRAINT `FK_supply_supplyId`
  13.     FOREIGN KEY (`supplyId`) REFERENCES `supplier` (`supplyId`),
  14.     INDEX `FK_supply_projectId`(`projectId`),
  15.     CONSTRAINT `FK_supply_projectId` FOREIGN KEY (`projectId`) REFERENCES `project` (`projectId`),
  16.     INDEX `FK_supply_componentId`(`componentId`),
  17.     CONSTRAINT `FK_supply_componentId` FOREIGN KEY (`componentId`) REFERENCES `component` (`componentId`)
  18. );
  19. #在warehouse_db库中创建repertory表
  20. CREATE TABLE `repertory`(
  21.     `warehouseId` int(11) NOT NULL,
  22.     `componentId` int(11) NOT NULL,
  23.     `repertoryCount` int(11) NOT NULL,
  24.     PRIMARY KEY (`warehouseId`),
  25.     INDEX `FK_repertory_warehouseId`(`warehouseId`),
  26.     CONSTRAINT `FK_repertory_warehouseId` FOREIGN KEY (`warehouseId`) REFERENCES `warehouse` (`warehouseId`),
  27.     INDEX `FK_repertory_component_componentId`(`componentId`),
  28.     CONSTRAINT `FK_repertory_component_componentId` FOREIGN KEY (`componentId`) REFERENCES `component` (`componentId`)
  29. );
  30. ########## End ##########
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

羊蹓狼

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表