仓库管理数据库设计与实现
数据库课程设计 仓库管理系统数据库的设计与实现

仓库管理系统数据库设计与实现一.实验时间、地点时间:第十三周(11月21日——25日)地点:软件楼305二.实验目的通过本次课程设计让学生能够综合运用所学的关系数据库原理知识解决并能设计一个实际问题,进一步掌握数据库原理的相关理论和数据库的设计实现过程,进一步提高学生的分析问题和解决问题的能力以及学生的动手能力。
三、课程设计要求:1.对各个系统进行系统功能需求分析2. 数据库设计分析阶段,进行详细的数据库需求分析,进行概念数据库的设计,画出数据库的E-R图(局部和整体E-R图)3. 设计出详细的逻辑数据库结构,将各个实体和联系转化为相应的二维表即关系模式,指定各个关系的主关键字和外部关键字,并对各个关系的约束加以限定4. 通过企业管理器或是查询分析器实现各个二维关系(建议最好用SQL代码实现),要求建立相关的索引5. 根据系统功能需求设计相应的查询视图6. 要求根据系统功能需求建立存储过程7. 根据功能需求建立相应的触发器以保证数据的一致性8. 通过建立用户和权限分配实现数据库一定的安全性,考虑数据库的备份与恢复(此内容选作)四.仓库管理系统实验要求描述:设计一个仓库管理系统,实现下列功能:1.零件信息登记(包括种类,名称和库存数量等信息);2.零件进库登记(包括种类,名称和库存数量等信息);3.零件出库登记(包括种类,名称和库存数量等信息);五.实现思路1.关系模式零件信息表(零件编号,零件名,单价,数量,零件类型号,生产厂家号)生产商情况表(生产厂家号,生产厂家名,生产厂家地址,生产厂家电话)入库登记表(零件编号,零件名,入库数量,零件类型,生产厂家号,入库时间)出库登记表(零件编号,零件名,出库数量,出库时间)零件类型信息表(零件类型号,类型)2.设计思路仓库管理系统设计了五个二维表,他们的设计表如下(1)零件信息设计表(2)生产商情况设计表(3)入库登记设计表(4)出库登记设计表(5)零件类型信息设计表3.仓库管理系统全局E—R图零件信息重量单价数量零件编号 零件类型号颜色 出库入库入库登记零件编号零件名入库数量 入库时间出库时间颜色生产商号零件类型生产 商号零件名 零件编号零件名出库 数量出库 性质提货人员出 库 登 记六.实现过程create database 仓库管理系统 on (name=仓库_dat,Filename='e:\microsoft SQL Server\MSSQL\Date\仓库.mdf', Size=10, Maxsize=150 )Log on (name=仓库_log,Filename='e:\microsoft SQL Server\MSSQL\Date\仓库.ldf', Size=10, Maxsize=80 )create table 零件信息表(零件编号 char(10) primary key, 零件名 char(10) not null,单价 money constraint 单价_Chk check(单价 between 80 and 660), 数量 int,零件类型号 char(10),生产商情况 生产商生产商名 生产商号零件类型生产厂家电用途 类型零件类型零件信息卖 出 类型生产厂家号 char(6));select * from 零件信息设计表/***创建并查询零件信息表索引***/create unique index 零件信息_index on 零件信息表(零件编号) exec Sp_helpindex 零件信息表create table 生产厂家信息表(生产厂家号 char(6) primary key ,生产厂家名 varchar(16) not null,生产厂家地址 varchar(40),生产厂家电话 char(12));select * from 生产厂家信息表/***创建并查询生产厂家信息索引***/create index 生产厂家信息_index on 生产厂家信息表(生产厂家号)exec Sp_helpindex 零件信息表create table 零件类型信息表(零件类型号 char(10) primary key,类型 char(10);select * from 零件信息设计类型表/***创建并查询零件类型信息索引***/create index 零件类型信息表_index on 零件类型信息表(零件类型号) exec Sp_helpindex 零件类型信息表create table 入库登记表(零件编号 char(10),零件名 char(10) not null,入库数量 int,零件类型 char(8),生产厂家号 char(6),入库时间 datetime);select * from 入库登记设计表/***创建并查询入库登记表索引***/create index 入库登记表_index on 入库登记表(零件编号)exec Sp_helpindex 入库登记表create table 出库登记表(零件编号 char(10),零件名 char(10),出库数量 int,出库时间 datetime);select * from 出库登记设计表/***创建出库登记表索引***/create index 入库登记表_index1 on 出库登记表(零件编号)create index 入库登记表_index2 on 出库登记表(出库数量)create index 入库登记表_index3 on 出库登记表(出库时间)/***查询零件名为“硬盘”的信息***/select 零件编号,零件名,单价,数量,生产厂家信息表.生产厂家名,生产厂家地址,生产厂家电话,零件信息类型设计表.类型from 零件信息表,生产厂家信息表,零件信息类型设计表where(零件信息设计表.零件类型号=零件信息类型设计表.零件类型号and 生产厂家信息设计表.生产厂家号=零件信息设计表.生产厂家号and 零件名='硬盘')查询结果为:/***创建零件信息表视图***/create view v_lj as select * from 零件信息表/***创建生产厂家信息表视图***/create view v_sc as select * from 生产厂家信息表create view select_零件信息表 asselect 零件信息设计表.零件编号,零件信息设计表.零件名,零件信息设计表.零件类型号 from 零件信息设计表inner join 零件信息类型设计表 on 零件信息设计表.零件类型号 = 零件类型信息设计表.零件类型号/***创建数量在200—900之间的规则,并绑定规则***/create rule 数量_ruleas @数量>=200 and @数量<=900exec sp_helptext'数量_rule'exec sp_bindrule'数量_rule','零件信息表.数量'exec sp_unbindrule'零件信息表.数量'drop rule 数量_rule/***创建向表中添加信息的存储过程***/create procedure insert_零件信息( @零件编号 char(10),@零件名 char(10),@单价 money,@数量 int,@零件类型号 char(10),@生产厂家号 char(6))asinsert into 零件信息表 values(@零件编号,@零件名,@单价,@数量,@零件类型号,@生产厂家号)exec insert_零件信息 @零件编号='001',@零件名='鼠标',@单价=80,@数量='1000',@零件类型号='L1',@生产厂家号='01'select * from 零件信息表/***删除存储过程***/drop procedure insert_零件信息/***创建触发器并向利用触发器向表内添加信息***/create trigger ChangDisplayon 零件信息表for insertasselect * from 零件信息表insert into 零件信息表 values('002','数据线',80,'800','L2','06')七.实验总结本系统是一个面向小型企业,具有一定实用性的数据库仓库管理系统。
仓库管理系统的设计实施方案与实现

仓库管理系统的设计实施方案与实现一、引言二、需求分析1.仓库模块:包括入库、出库、库存查询、库存调整等功能。
2.货物管理模块:包括货物信息的维护、货物分类和货物属性的管理等功能。
3.仓库人员管理模块:包括用户权限管理、人员信息管理和人员工作任务分配等功能。
4.数据报表模块:包括库存报表、进销存报表和仓库工作统计报表等功能。
5.系统管理模块:包括系统设置、日志管理和数据备份等功能。
三、系统设计1. 技术选型:选择成熟的开发框架和数据库,如Spring Boot和MySQL,以提高开发效率和系统性能。
2. 架构设计:采用前后端分离的架构,前端使用Vue.js框架,后端使用Spring Boot框架,实现前后端的解耦。
3.数据库设计:根据需求,设计相应的数据库表结构,并设置合适的索引和约束,以提高数据库的查询性能和数据的一致性。
4.模块设计:根据需求,划分合适的模块,并设计各个模块之间的接口和数据流动,以实现模块的独立性和可扩展性。
5.用户界面设计:根据用户需求和使用习惯,设计直观、易用的用户界面,以提高用户的工作效率和用户体验。
四、系统实施1.系统开发:按照系统设计进行模块开发和集成测试,不断迭代优化,确保系统的功能完备、性能稳定和用户友好。
2.系统部署:将开发好的系统部署到生产环境中,包括安装服务器硬件、安装操作系统和软件环境,并配置好相应的网络和防火墙设置。
3.系统培训:对仓库人员进行系统培训,包括系统的基本操作、功能介绍和故障排除等内容,以提高用户对系统的使用能力。
4.系统运维:定期进行系统的维护和升级,包括安全漏洞的修补、数据库的备份和日志的管理等,以确保系统的稳定和安全。
五、系统实现1.仓库管理模块的实现:实现入库、出库、库存查询和库存调整等功能,包括货物的添加、修改和删除,以及库存的增加、减少和调整等操作。
2.货物管理模块的实现:实现货物信息的维护、货物分类和货物属性的管理,包括货物的添加、修改和删除,以及货物分类的添加、修改和删除等操作。
仓库管理系统数据库设计与实现

仓库管理系统数据库设计与实现摘要:为了实现企业仓库的出库、入库、盘点、调拨、实时库存等具有现代化、信息化及智能化的仓库管理平台,数据库的合理设计与开发是至关重要的。
关键词:仓库管理系统;数据库访问;设计与实现引言基于物联网的智能仓储管理系统将网络技术、通信技术、自动化识别技术、数据库技术以及数据采集技术等有机地结合起来,以实现高效的仓储管理。
基于此,本文首先简单介绍了基于物联网的智能仓储管理系统的规划方案,随后给出智能仓储管理系统的总体架构设计,最后重点研究智能仓储管理系统的模块。
1概念设计数据库设计的第一步是数据库概念设计,可以通过实体-联系图(Entity Relationship Diagram)即E-R图来表示实体与属性之间、实体与实体之间的联系。
根据前期的用户需求分析得出仓库管理系统涉及的实体有:管理员、顾客、仓库、商品、商口出入库、商品类别、类别出入库。
2新时期企业智慧仓库管理系统设计关注的重点内容分析在新时期企业智慧仓库管理系统设计过程中,要注重对企业的发展需求做好有效地把握,从而提升智慧仓库管理系统设计的针对性和有效性,以发挥系统的功能及作用,实现对仓库的智慧化管理目标。
关于智慧仓库管理系统设计,需要对以下内容予以把握:首先,在进行智慧仓库管理系统设计过程中,要注重立足于企业发展的实际情况,充分了解企业对仓库管理的功能要求,使企业仓库管理更好地满足企业自身的发展需求。
其次,智慧仓库管理系统设计时,需要加强市场调研工作,联系生产线仓储管理工作的情况,使仓库管理系统与企业生产工作进行更加紧密地结合,以提升仓库管理的质量,为企业长远发展及进步创造更加有利条件。
最后,智慧仓库管理系统设计要突出亲和性、人机交互性,使仓库管理系统具有较高的性能水平,促进企业更加长远的发展进步。
3仓库管理系统数据库设计3.1 软件支撑系统架构的设计和开发采用的是基于J2EE或.NET多层架构的B/S结构和组件开发技术,并通过安装WEB浏览器对企业内的DITCP/IPTV终端进行访问,用户只需要通过WEB浏览器就可以处理系统中各个功能模块的操作。
JSP仓库管理系统的设计与实现

JSP仓库管理系统的设计与实现一、引言随着电子商务的迅猛发展,仓库管理成为一个重要的环节。
传统的仓库管理主要依靠人工操作,效率低下且易出错。
为了提高仓库管理的效率和准确性,本文设计与实现了一套基于JSP技术的仓库管理系统。
二、需求分析1.仓库管理:用户可以进行仓库的增删改查操作,包括仓库信息的录入、修改和删除等。
2.库存管理:用户可以对仓库的库存进行管理,包括商品的入库和出库操作,以及库存的实时查询。
3.货物追踪:用户可以根据货物的编号查询货物的详细信息和相关操作记录。
4.用户管理:系统需要包含用户的登录和权限管理功能,管理员可以对用户进行增删改查操作。
三、系统设计1.数据库设计系统主要包括以下几个表:仓库信息表、货物信息表、入库记录表、出库记录表、用户表等。
其中,仓库和货物信息表是核心表,其他表与其有外键关联。
数据库采用MySQL进行设计和实现。
2.页面设计系统共包含以下页面:登录页面、主页、仓库管理页面、库存管理页面、货物追踪页面、用户管理页面等。
采用JSP技术进行页面的设计和开发,使用Bootstrap框架进行页面布局和样式美化。
3.功能实现(1)登录功能:用户输入用户名和密码进行登录,系统根据用户的权限跳转到相应的主页。
(2)仓库管理功能:用户可以对仓库信息进行增删改查操作,通过表格展示仓库信息,并提供表单进行录入和修改。
(3)库存管理功能:用户可以对库存进行操作,包括商品的入库和出库操作,以及查询库存信息。
用户输入商品编号和数量进行入库或出库操作,系统更新库存信息。
(4)货物追踪功能:用户可以根据货物编号查询货物的详细信息和相关操作记录,系统展示相关信息。
(5)用户管理功能:管理员可以对用户进行增删改查操作,包括用户的权限管理。
用户信息通过表格展示,并提供表单进行录入和修改。
四、系统实现1.环境准备系统开发环境为Windows,需安装Java开发环境、MySQL数据库、Tomcat服务器等。
仓库管理系统的设计实现分析论文

仓库管理系统的设计实现分析论文一、引言仓库管理系统是一个对仓库进行全面管理和监控的软件系统。
随着物流行业的不断发展和电商市场规模的扩大,仓库管理系统的重要性不断凸显。
针对传统的纸质管理方式,仓库管理系统通过自动化和智能化技术,有效提高了仓库运作效率,减少了人力资源的浪费,保障了物流业务的顺利进行。
本文将从仓库管理系统的需求分析、系统架构设计、模块功能设计和数据库设计等方面进行详细的探讨和分析。
二、需求分析1.库存管理:系统需要记录和管理仓库中各类物资的入库、出库、库存等信息,包括物品名称、数量、质量、价格等。
2.仓位管理:系统需要管理仓库中不同仓位的使用情况,包括可用仓位的查询、仓位的分配和释放等。
3.订单管理:系统需要支持订单的生成、查询和更新等功能,以便及时处理客户的需求。
4.盘点管理:系统需要定期对仓库的库存进行盘点,以确保库存的准确性和及时性。
5.员工管理:系统需要管理仓库中员工的信息,包括员工的基本信息、工作岗位、权限、考勤等。
三、系统架构设计1.表示层:该层负责与用户进行信息交互,通过界面向用户展示系统的功能和数据信息。
2.业务逻辑层:该层处理用户请求,进行业务逻辑处理,并调用数据访问层进行数据操作。
3.数据访问层:该层负责与数据库进行交互,完成数据的读取、写入和更新等操作。
四、模块功能设计1.用户登录模块:包括用户进行登录、退出和密码修改等功能。
2.物资管理模块:包括物资的录入、查询、修改和删除等功能。
3.仓位管理模块:包括仓位的录入、查询和更新等功能。
4.订单管理模块:包括订单的生成、查询和处理等功能。
5.库存管理模块:包括库存的查询、调整和报表生成等功能。
6.盘点管理模块:包括盘点任务的创建、盘点结果的录入和盘点报告的生成等功能。
7.员工管理模块:包括员工信息的录入、查询和更新等功能。
五、数据库设计1.物资表:包括物资的信息,如物资编号、名称、规格、价格等。
2.仓位表:包括仓位的信息,如仓位编号、位置、容量等。
《仓库管理系统的设计与实现》范文

《仓库管理系统的设计与实现》篇一一、引言随着企业规模的扩大和业务复杂性的增加,传统的仓库管理方式已经无法满足现代企业的需求。
为了提高仓库管理的效率、减少人力成本、提高准确性,仓库管理系统应运而生。
本文将详细介绍仓库管理系统的设计与实现过程,包括系统需求分析、系统设计、系统实现和系统测试等环节。
二、系统需求分析在系统需求分析阶段,我们首先需要明确系统的目标用户和业务需求。
仓库管理系统的目标用户主要是仓库管理人员、物流人员以及相关决策者。
业务需求主要包括对物品的入库、出库、库存查询、报表生成等功能。
同时,为了满足企业的特殊需求,系统还需要支持多仓库管理、库存预警、员工权限管理等高级功能。
三、系统设计在系统设计阶段,我们首先需要设计数据库结构。
数据库应包含物品信息表、库存表、员工表、订单表等,以便存储和管理相关信息。
其次,我们需要设计系统架构,采用B/S架构,以便用户通过浏览器访问系统。
此外,为了提高系统的稳定性和可扩展性,我们还需要设计合理的系统模块和接口。
四、系统实现在系统实现阶段,我们需要根据设计好的数据库结构和系统架构,进行编程和开发。
具体实现过程包括:1. 编写代码:根据需求和设计,使用合适的编程语言和开发工具进行代码编写。
2. 界面开发:设计友好的用户界面,以便用户方便地使用系统。
3. 数据库连接:将代码与数据库连接起来,以便存储和管理数据。
4. 系统测试:对系统进行测试,确保系统的稳定性和功能完整性。
五、关键技术实现在系统实现过程中,我们需要使用一些关键技术。
例如,我们需要使用数据库技术来存储和管理数据;我们需要使用Web开发技术来实现系统的B/S架构;我们还需要使用网络安全技术来保护系统的数据安全。
此外,为了提高系统的性能和稳定性,我们还需要对代码进行优化和调试。
六、系统测试在系统测试阶段,我们需要对系统进行全面的测试,以确保系统的稳定性和功能完整性。
测试过程包括单元测试、集成测试和系统测试三个阶段。
仓库管理系统数据库设计

仓库管理系统数据库设计一、表结构设计1. 仓库表(Warehouse)- 仓库ID(WarehouseID):主键,唯一标识一个仓库- 仓库名称(WarehouseName):仓库的名称- 仓库地址(WarehouseAddress):仓库的地址- 建立日期(EstablishDate):仓库的建立日期- 最后修改日期(LastModifiedDate):最后一次修改仓库信息的日期2. 物品表(Item)- 物品ID(ItemID):主键,唯一标识一个物品- 物品名称(ItemName):物品的名称- 物品描述(ItemDescription):物品的描述信息- 物品价格(ItemPrice):物品的价格- 添加日期(AddDate):物品的添加日期- 最后修改日期(LastModifiedDate):最后一次修改物品信息的日期- 仓库ID(WarehouseID):外键,关联到仓库表的仓库ID,表示该物品所属的仓库3. 订单表(Order)- 订单ID(OrderID):主键,唯一标识一个订单- 订单日期(OrderDate):订单的日期- 运输状态(ShippingStatus):订单的运输状态,如未发货、已发货、已签收等- 运输费用(ShippingCost):订单的运输费用- 物品ID(ItemID):外键,关联到物品表的物品ID,表示该订单所包含的物品- 仓库ID(WarehouseID):外键,关联到仓库表的仓库ID,表示该订单所属的仓库二、关系设计1.仓库与物品之间的关系是一对多的关系,一个仓库可以拥有多个物品,但一个物品只能属于一个仓库。
在物品表中添加一个仓库ID的外键关联到仓库表的仓库ID。
2.仓库与订单之间的关系也是一对多的关系,一个仓库可以包含多个订单,但一个订单只能属于一个仓库。
在订单表中添加一个仓库ID的外键关联到仓库表的仓库ID。
3. 订单与物品之间的关系是多对多的关系,一个订单可以包含多个物品,一个物品也可以属于多个订单。
数据库管理系统的设计与实现

数据库管理系统的设计与实现数据库管理系统是一个非常重要的软件系统,它为用户提供了对数据库的管理和访问功能。
在今天的信息时代,越来越多的企业、机构和个人需要使用数据库系统管理自己的数据。
因此,设计和实现一个高效稳定的数据库管理系统成为了当今软件开发领域的热门话题之一。
一、数据库管理系统的定义和特点数据库管理系统(Database Management System,DBMS)是一种用来管理数据库的计算机软件系统。
其主要功能是创建、维护和操纵数据库,同时提供了对数据库中数据的检索、更新、删除和添加等操作。
数据库管理系统广泛应用于各种领域,包括企业管理、科研、医疗健康等。
数据库管理系统的主要特点包括数据共享、数据安全、数据一致性、数据完整性、数据可靠性等。
数据共享指多个用户可以同时访问同一份数据而不会相互干扰,数据安全指数据库系统可以防止未经许可的访问和非法修改,数据一致性指数据在整个数据库系统中始终保持一致,数据完整性指数据库系统保证数据的正确性和完整性,数据可靠性指数据库系统可以通过备份和恢复等措施保证数据的可靠性。
二、数据库管理系统的设计和实现流程在设计和实现数据库管理系统时,需要遵循以下流程:1.需求分析需求分析是设计和实现任何软件系统的必要步骤之一。
在数据库管理系统的设计和实现过程中,需要对用户需求进行全面详细的了解,包括用户对数据库的存储、检索、修改、删除、增加等操作的需求,用户需要使用的查询方式以及用户对数据安全和可靠性的要求等。
2.数据库设计在需求分析的基础上,需要对数据库进行设计。
数据库设计是一个非常复杂的过程,需要考虑到数据的组织结构、存储方式、数据类型、索引和关系等方面。
在设计数据库时还需要根据数据库使用场景进行优化,提高系统的性能和效率。
3.编码实现在需求分析和数据库设计的基础上,需要进行编码实现。
编码实现是开发数据库管理系统的关键环节之一。
需要使用合适的开发语言和开发工具进行编码,实现对数据库的访问、操作等功能。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课程设计设计题目:仓库管理数据库设计与实现课程名称:信息系统数据库技术(一)学期: 2010-2011学年第一学期专业班级:管小芬学号: ********* *名:***任课老师:蔡妙娴仓库管理数据库设计与实现一、系统开发目的通过理论与实践教学,掌握关系型数据库的基本操作,理解关系型数据库的有关概念,具备一定的数据库结构设计的能力,并能综合运用所学知识,进行小型数据库应用系统的开发工作。
本次课程设计是基于ACCESS 2003(或SQL SERVER)数据库进行的仓库管理数据库系统设计与实现。
二、系统概述此系统建立了仓库数据库应用系统,适用于拥有仓库的小型或大型企业。
用户主要为小型或大型公司的仓库管路员。
该系统应能完成以下主要功能:(1)对供应商、客户、供应商联系人、客户联系人、退料单、领料单、报损单、入库单、销售单、进货订单、员工、仓库等信息进行储存、查询和管理。
(2)对员工的的工作情况、仓库物品进出情况、客户的订购情况、供应商的供应情况进行系统的监督和管理。
三、数据模型设计由用户业务需求得出数据E_R模型。
参考书上第四章实例分析的格式。
1、供应商信息列表上图为该仓库的供应商信息数据,根据该数据women可以得其供应商的信息中包含了三个实体,供应商实体、业务员、供应商联系人。
分析说明:供应商里面一定会有联系人用来联系业务员,且根据仓库系统的信息,一个供应商只能填一个联系人,联系人也可以为空置,联系人只能属于一个供应商,不能同时属于多个供应商,没有供应商就不会有联系人,一个业务员可以不联系或者联系一个、联系多个供应商,但一个供应商只能由一个业务员来联系;一个供应商只能属于一个类别,一种类别可以不对应过着对应一个或多个供应商。
2 客户信息表该客户信息涉及了三个实体,即客户实体、业务员实体、客户联系人实体。
分析说明:客户可以有一个或多个联系人,但一个联系人只能属于一个客户所以客户对客户联系人的关系为一对多;一个客户只能由能和一个业务员联系,但一个业务员可以没有客户,有一个客户,或多个客户所以客户和业务员的关系为一对多的非ID相关。
3 商品信息表分析说明:一个商品只能属于一个类别,但一个类别中可以有多种商品;一个商品也只能属于一个品牌,但一个品牌下会有多个商品。
4、仓库信息表分析说明:一个仓库必须要有一个且只能有一个职员也就是仓管员来管,而一个仓管员能关一个也可以管多个仓库,所以仓管员对仓库的关系式一比多,两个实体是非ID依赖,所以用虚线连接5、进货订单信息表分析说明:一个进货订单只能对应一个供应商、一个仓库,但一个供应商、一个仓库、可同时有很多个订单,一个进货订单肯定是由一个业务员发出的,但一个业务员可以发出多个订单,订单里面可以有多个商品,一个商品可以在多个订单中出现;一个业务员只能属于一个部门,但一个部门可以有多个业务员6销售订单信息表分析说明“一个销售订单里可以有多个商品,一种商品也可以在多个销售订单里出现,所以商品和销售订单的关系是多对多,从图可知,一个订单只能对应一个客户,一个仓库,只能由一个业务员发出,一个业务员可以不发订单也可以发一个或多个订单,部门里面有一个或多个人业务员,一个业务员只能属于一个部门,一个仓库、一个客户可以同时在多个销售订单里面出现,7、采购入库信息表分析说明:一个采购入库单只能由一个供应商,也只能由一个业务员那里发出,只针对一个仓库,一个仓库可以没有入库单,可以有一个或多个入库单,一张采购入库单可以有多种商品,一种商品也可以在多个采购单里出现;一个供应商可以不提供,可以提供一张或多张如采购入库单,业务员只能是属于一个部门,一个部门,可以有多个业务员。
8、销售出库信息表分析说明:销售出库单只能对应一个客户、一个员工、一个仓库,但是一个员工可以开出多个销售出库单,一个客户也可以有多个销售出库单,一个仓库里也可以有多个销售出库单,一个销售出库单里可以有多个商品,一种商品也可以在多个销售出库单里出现。
9、领单信息表分析说明:一张领料单只能对应一个仓库,并且只能有一个员工开出,但一张领料单里可以对应多个商品,一种商品也能在多个领料单里出现;一个仓库可以有多个领料单,一个员工可以开出多个领料单。
10、退料信息表分析说明:一张退料单只能给一个仓库,只能有一个员工开出,可以有多个商品,一种商品可以在多个退料单里出现,一个业务员可以开出多张退料单,一个仓库也可以有多个退料单。
11、报损信息表分析说明:一张报损单只能对应一个仓库,一个仓库可以有没有货有一个、多个报损单;一张报损带只能由一个员工开出,一个员工可以不开火开出一张、多张报损单;一张报损单可以有多个商品,一种商品也可以在多张报损单里出现。
12、员工信息表分析说明:一个员工只能属于一个部门,但一个部门一定会有一个或多个员工。
13、部门信息表14、仓库调拨单信息表一张调拨单可以有多个商品,一种商品一可以再多个调拨单里出现;一张调拨单只能有一个员工开出,一个员工可以不开或开一个、很多个调拨单,一个仓库必须要有一个员工来管理,一个员工可以不管或管一个、多个仓2、四、数据库设计。
由E_R模型转换成数据表,建立表间联系。
设计各种数据约束。
规范表设计至4NF1、以上E-R,模型转化为表间联系,如下图图十五所示。
其尸体及其属性如下所示(带有下划线的是主键,斜字体的是外键)。
(1)供应商(供应商编号、员工编号、名称、类别、通讯地址、收货地址、邮编、电话、信用金额、传真、网址、email)(2)供应商联系人(供应商联系人编号、供应商编号、供应商联系人名字、供应商联系人手机)(3)客户(客户编号、员工编号、名称、类别、等级、电话、传真、邮编、email、网址、通讯地址、收货地址、状态、类型)(4)客户联系人(客户联系人编号、员工编号、客户编号、客户联系人名字、客户联系人手机)(5)员工(员工编号、部门编号、姓名、性别、薪水、提成率、电话、职称、年龄、出生日期、email、手机、身份证号码、入职日期、学历)(6)部门(部门编号、部门名称)(7)仓库(仓库编号、员工编号、仓库名称、位置、面积)(8)退料单(退料单编号、仓库编号、退料单日期、备注)(9)调拨单(调拨单编号、仓库编号、调拨单日期、备注)(10)报损单(报损单编号、仓库编号、报损单日期、备注)(11)入库单(入库单据编号、入库单据日期、入库类型、备注)(12)领料单(领料单编号、仓库编号、领料单日期、备注)(13)进货订单(进货订单编号、仓库编号、商品编号、供应商编号、进货订单日期、备注)(14)销售订单(销售订单编号、客户编号、仓库编号、销售订单日期、备注)(15)商品(商品编号、名称、类别、名称品牌、条码编号、型号规格、数量、产地、厂家、基本单位、进价、销价、最高库存、最低库存、备注)(16)调拨单据明细表(调拨单据明细表编号、调拨单编号、仓库编号、商品编号、商品名称、规格、数量、成本价、销售价、包装数、单位、备注)(17)销售出库单明细表(销售出库单明细表编号、销售订单编号、商品编号、商品名称、规格、基本单位、备注、折扣、单价、进货金额、金额)(18)领料单据明细表(领料单据明细表编号、领料单编号、商品编号、商品名称、规格、基本单位、数量、单位、备注)(19)采购入库单明细表(采购入库单明细表编号、入库单编号、商品编号、商品名称、基本单位、数量、单价、进货金额、金额)(20)报损单明细表(报损单明细表编号、报损单编号、商品编号、商品名称、规格、基本单位、数量、成本价、成本金额、包装数、单位、备注)(21)退料单明细表(退料单明细表编号、退料单编号、商品编号、商品名称、规格、基本单位、数量、备注)(22)进货订单明细表(进货订单明细表编号、进货订单编号、商品编号、商品名称、基本单位、原价格、折扣、单价、金额、已入库数量、规格、备注)(1)在供应商、供应商联系人、客户、客户联系人、员工信息表中都出现了同样地两个问题。
第一就是电话号码、电子邮箱和手机的多只问题。
一个供应商和客户可以有多个电话和电子邮箱,联系人和员工也可以有多个手机号码。
但在本数据库中,我们有前提假设,即在登记信息时供应商、供应商联系人、客户、客户联系人登记信息时只要求填写一个电话、一个电子邮件,袁洪和联系人在登记表时也只能填写一个手机号码。
第二个问题是员工表中,员工姓名、性别、年龄、完全依赖于身份证号,而身份证又是非主属性,则不满足范式的要求。
但在实际情况中,在查看员工信息中,应该马上就能得知其身份证号码,用以确定其什么的可能性。
因为虽然其没有满足凡是要求,但出于现实考虑,也为了提要查询和管理效率,,还是将身份证放入员工表中。
3、设置数据约束(1)check约束:学历:小学、初中、高中、大学、中专、大专;手机和电话为数字;商品类别:薯片、果冻、饼干、其他。
(2)默认值约束:默认值不可以随便乱设,要不然会造成很严重的错误,所以我只将性别设置默认值为“女”。
(3)有效性约束:将int型属性的数字范围作出了规定。
如员工联系人年龄是大于18小于100,员工工资大于0等。
(4)主键和外键约束:在每个实体中都设置了主键和需要的外键,具体设置在数据库时间部分进行具体说明。
出了身份证和电话、的后记的问题,解决了以上问题,表设计已经达到了4NF的要求。
五、数据库实现。
基于Access或SQL SERVER环境,建立数据库,建立数据表,建立表间联系,实现各种数据约束。
1、有效性规则部门信息表退料单信息客户联系人信息供应商编号供应商联系人信息报损单信息入库单信息领料单编号进货订单编号商品信息2、表间关系六、调试运行说明。
输入测试数据进行调试分析,给出调试运行的有关情况说明。
1、在输入数据时出现了下面这种情况,不能保存遇到上述情况我返回了相关的数据表并仔细的研究了老师给的模板的课程设计后发现了模板上面的外键索引全部是“有(有重复)”于是,我便将自己的数据库表格进行了修改,修改之后,依旧不能输入数据,于是我返回供应商的表,填入数据,并将供应商表有的数据编号填入,就没有出现上述问题了。
2、这是我在输入仓库面积时遇到的情况,我本来输得数据时300*500,看到这情况后,我仔细想了想后,我修改了仓库面积,将面积改小,就没有出现上述问题了3、在我输入员工电话和供应商、客户等的电话时,在关闭的时候我有出此案了上面出现过的这个问题,这可就让我非常郁闷了能因为这不存在面积数字等的问题,于是我就决定刨根接地的搞懂它了,我百度了下也问了其他的同学,在经过一番努力后,我才知道,电话号码的数据类型不是数字,而是文本,你说这我怎么想得到啊,不过庆幸的是我最后还是知道了,并成功输入了数据。
七、总结总结个人在本次课程设计中遇到的问题和心得体会。