探讨进销存系统数据库设计逻辑

商城类电商软件及服务提供商--HiShop海商,欢迎您!

最新消息报道,进销存系统数据库设计,对于一个系统来说是不可缺少的一部分,那么如何做好数据库的设计呢下面我们就来具体来说下。

理清一下整个进销存系统逻辑:

2、断货表的内容是怎么来的余额为零时就生成记录吗通过查询总表来得出断货的记录就可以了,何必设一个表

3、在实际的系统中,我觉得最好不要使用不规范的计量单位,比如:包(不是小包,是那种大的包装)、瓶、件、车等。因为不能用来确定实际数量,比如一包中可能有10瓶,可能有20瓶,很可能会有调整。我以前公司用过的系统就有过这样的问题,一包由6个单位改成5个单位,使用人理所当然地在基础资料里将6改成5,结果所有报表都不对。既然你在数据库里保存的就是瓶,就让用户录入以瓶为单位的(虽然我觉得若是生产型的企业,以瓶也不严格,因为可能有大瓶,小瓶。我们现在公司用的单位大家猜猜,是用升的,MYGOD,真是晕死了。但我觉得只有用L才是准确的,因为用瓶,根本不能确定诸如实际产量之类的数据,实际产量非要用L才准确。)。不过实际情况中也不能要求太高,但是一定要注意避免这样的问题。所以我觉得你这里肯定也最好就用瓶来做单位,不允许用其他单位。因为可能换算关系会变,但操作员的思路不会变的,他上次一包是4瓶,他会录入1包,现在是1包5瓶,他肯定也是录入1包的。结果当然会乱了。

4、加上月结的处理,按你的思路,需要存分月的出入库总表,在月结时,当月没有业务发生的数据也要在总表中有记录,而不是等到以后月份有出入库了再去补充。这样才能保证总表中的记录的完整的。试想一下,若不是这样,你按总表出本月余额表是不是会很难(因为本月无记录的,需要找最近月份的记录查出当时的余额,怎么样SQL语句都会难写些,效率也低很多)。我怕你到时候又要来问该怎么写这样的SQL了。

6、建议找点写得好的进销存系统的数据库来研究研究。不要被这样糟糕的设计耽误了。

7、不会数据库、不会SQL不是最要紧的,设计数据库只是个技术活,对业务的理解,系统的分析与设计才是最根本的。

下面举个进销存系统数据库设计例子:

CREATETABLEuser(

User_Idvarchar(6),

User_Pwdvarchar(8)NULL,

Again_Pwdvarchar(8)NULL,

Bel_Groupvarchar(3)NULL,

Div_Typevarchar(1)NULL,

User_Authvarchar(1)NULL,

Auth_Typevarchar(1)NULL,

User_Statusvarchar(1)NULL,

Create_Uservarchar(6)NULL,

Create_Datevarchar(7)NULL,

Create_Timevarchar(6)NULL,

Appr_Uservarchar(6)NULL,

Appr_Datevarchar(7)NULL,

Appr_Timevarchar(6)NULL,

Pwd_Datevarchar(7)NULL,

Err_CountfloatNULL,

Use_eJCICvarchar(1)NULL

)

CREATETABLESupplier/*供应商表*/

(

Supplier_IDintIDENTITY(1,1)NOTNULL,/*供应商编号,主键*/

Namevarchar(250)NOTNULL,/*供应商名称*/

Addressvarchar(250)NOTNULL,/*地址*/

Faxvarchar(25)NULL,/*传真*/

PostalCodevarchar(10)NULL,/*邮编*/

ConstactPersonvarchar(20)NULL/*联系人*/

CREATETABLECustomer/*客户表*/

Customer_IDintIDENTITY(1,1)NOTNULL,/*客户编号,主键*/

Namevarchar(250)NOTNULL,/*客户名称*/

CREATETABLEDept/*部门表*/

Dept_IDintIDENTITY(1,1)NOTNULL,/*部门编号,主键*/

Namevarchar(30)NOTNULL,/*名称*/

Remarkvarchar(250)NOTNULL/*描述,备注*/

CREATETABLEDept_Supplier/*部门--供应商表*/

Dept_IDintNOTNULL,/*部门编号,主键,外键(参照DEPT表)*/

Supplier_IDintNOTNULL/*供应商编号,主键,外键(参照SUPPLIER表)*/

CREATETABLEDept_Customer/*部门--客户表*/

Customer_IDintNOTNULL/*客户编号,主键,外键(参照SUPPLIER表)*/

CREATETABLEStoreHouse/*仓库表*/

StoreHouse_IDintIDENTITY(1,1)NOTNULL,/*仓库编号,主键*/

Employee_IDINTNOTNULL,/*仓库保管,外键(参照EMPLOYEE表)*/

CREATETABLEProductClass/*商品总分类表*/

ProductClass_IDintIDENTITY(1,1)NOTNULL,/*商品总分类编号,主键*/

Namevarchar(30)NOTNULL,/*商品分类名称*/

Employee_IDINTNOTNULL,/*建分类人,外键(参照EMPLOYEE表)*/

Remarkvarchar(250)NULL,/*描述,备注*/

CREATETABLEProductList/*商品细分类表*/

ProductClass_IDINTNOTNULL,/*商品总分类编号,外键(参照PRODUCTCLASS表)*/

ProductList_IDintIDENTITY(1,1)NOTNULL,/*商品细分类编号,主键*/

Namevarchar(30)NOTNULL,/*商品名称*/

CREATETABLEProductSpec/*商品规格表*/

ProductSpec_IDINTIDENTITY(1,1)NOTNULL,/*商品规格编号,主键*/

Namevarchar(30)NOTNULL,/*商品规格名称*/

Employee_IDINTNOTNULL,/*操作员,外键(参照EMPLOYEE表)*/

Remarkvarchar(250)NULL/*描述,备注*/

CREATETABLEProductUnit/*商品计量单位表*/

ProductUnit_IDINTIDENTITY(1,1)NOTNULL,/*计量单位编号,主键*/

Namevarchar(30)NOTNULL,/*计量单位名称*/

CREATETABLEProduct/*商品目录表*/

ProductList_IDintNOTNULL,/*商品细分类编号,外键(参照PRODUCTLIST表)*/

Product_IDINTIDENTITY(1,1)NOTNULL,/*商品名称编号,主键*/

ProductSpec_IDINTNOTNULL,/*商品规格,外键(参照PRODUCTSPEC表)*/

ProductUnit_IDINTNOTNULL,/*计量单位,外键(参照PRODUCTUNIT表)*/

PriceMONEYNULL,/*参考价格*/

CREATETABLEProduct_Supplier/*商品--供应商表*/

Product_IDINTNOTNULL,/*商品名称编号,主键,外键(参照PRODUCT表)*/

Supplier_IDINTNOTNULL/*供应商编号,主键,外键(参照SUPPLIER表)*/

CREATETABLEEmployee/*员工表*/

Employee_IDINTIDENTITY(1,1)NOTNULL,/*员工编号*/

Dept_IDINTNOTNULL,/*所属部门编号*/

Namevarchar(30)NOTNULL,/*姓名*/

Dutyvarchar(20)NOTNULL,/*职务*/

Gendervarchar(6)NOTNULL,/*性别*/

BirthDatedatetimeNOTNULL,/*出生日期*/

HireDatedatetimeNULL,/*合同签订日期*/

MatureDatedatetimeNULL,/*合同到期日*/

IdentityCardvarchar(20)NULL,/*身份证号*/

Addressvarchar(250)NULL,/*住址*/

Emailvarchar(30)NULL/*E_MAIL*/

/*-///////////////////////////////////////////////////////////////////////////////////////-*/

CREATETABLEBuyOrder/*进货合同*/

BuyOrder_IDINTIDENTITY(1,1)NOTNULL,/*进货合同编号,主键*/

WriteDatedatetimeNOTNULL,/*合同签订日期*/

InsureDatedatetimeNOTNULL,/*合同生效日期*/

EndDatedatetimeNOTNULL,/*合同到期日期*/

Dept_IDINTNOTNULL,/*签订部门,外键(参照DEPT表)*/

Supplier_IDINTNOTNULL,/*供应商,外键(参照SUPPLIER表)*/

Employee_IDINTNOTNULL/*合同主要负责人,外键(参照EMPLOYEE表)*/

CREATETABLEBuyOrder_Detail/*进货合同明细表*/

BuyOrder_IDINTNOTNULL,/*进货合同编号,主键,外键(参照BUYORDER表)*/

Product_IDINTNOTNULL,/*所进商品编号,主键,外键(参照PRODUCT表)*/

QuantityINTNOTNULL,/*商品数量*/

PricemoneyNOTNULL/*商品进价*/

CREATETABLEEnterStock/*入库单表*/

EnterStock_IDINTIDENTITY(1,1)NOTNULL,/*入库单编号,主键*/

Dept_IDINTNOTNULL,/*入库部门,外键(参照DEPT表)*/

StoreHouse_IDINTNOTNULL,/*所入仓库,外键(参照STOREHOUSE表)*/

Employee_IDINTNOTNULL/*入库人,外键(参照EMPLOYEE表)*/

/*需添加仓库保管员如何来验证入库单*/

CREATETABLEEnterStock_Detail/*入库单明细*/

EnterStock_IDINTNOTNULL,/*入库单编号,主键,外键(参照ENTERSTOCK表)*/

Product_IDINTNOTNULL,/*此种商品编号,主键,外键(参照PRODUCT表)*/

QuantityintNOTNULL,/*此种商品数量*/

PricemoneyNULL,/*此种商品参考价格*/

HaveInvoicebitnotnull,/*此种商品有没有开发票(缺省为0,有没有开票)*/

InvoiceNumvarchar(30)NULL/*发票号*/

CREATETABLEBackStock/*退库单表*/

BackStock_IDINTIDENTITY(1,1)NOTNULL,/*退库单编号,主键*/

Dept_IDINTNOTNULL,/*退库部门,外键(参照DEPT表)*/

StoreHouse_IDINTNOTNULL,/*所退入仓库,外键(参照STOREHOUSE表)*/

Employee_IDINTNOTNULL,/*退库人,外键(参照EMPLOYEE表)*/

Remarkvarchar(250)NULL/*退库原因*/

CREATETABLEBackStock_Detail/*退库单明细表*/

BackStock_IDINTNOTNULL,/*退库单编号,主键,外键(参照BACKSTOCK表)*/

Product_IDINTNOTNULL,/*所退商品编号,主键,外键(参照PRODUCT表)*/

QuantityintNOTNULL,/*退入数量*/

PricemoneyNULL/*参考价格*/

CREATETABLELeaveStock/*出库单表*/

LeaveStock_IDINTIDENTITY(1,1)NOTNULL,/*出库单编号,主键,外键(参照LEAVESTOCK表)*/

Dept_IDINTNOTNULL,/*出库部门,外键(参照DEPT表)*/

StoreHouse_IDINTNOTNULL,/*所出仓库,外键(参照STOREHOUSE表)*/

ToStoreHouse_IDINTNOTNULL,/*所入仓库,外键(参照STOREHOUSE表)*/

Employee_IDINTNOTNULL/*出库人,外键(参照EMPLOYEE表)*/

/*仓库保管员如何来验证出库单*/

CREATETABLELeaveStock_Detail/*出库单明细表*/

LeaveStock_IDINTNOTNULL,/*出库单编号,主键,外键(参照BACKSTOCK表)*/

Product_IDINTNOTNULL,/*所出商品编号,主键,外键(参照PRODUCT表)*/

QuantityintNOTNULL,/*出库数量*/

PricemoneyNULL/*出库价格*/

CREATETABLEBackSale/*退货单表*/

BackSale_IDINTIDENTITY(1,1)NOTNULL,/*退货单编号,主键*/

BackDatedatetimeNOTNULL,/*退货日期*/

Dept_IDINTNOTNULL,/*退货部门,外键(参照DEPT表)*/

StoreHouse_IDINTNOTNULL,/*退入仓库,外键(参照STOREHOUSE表)*/

Employee_IDINTNOTNULL,/*退货人,外键(参照EMPLOYEE表)*/

Remarkvarchar(250)NULL/*退货原因*/

CREATETABLEBackSale_Detail/*退货单明细表*/

BackSale_IDINTNOTNULL,/*退货单编号,主键,外键(参照BACKSTOCK表)*/

QuantityintNOTNULL,/*退货数量*/

PricemoneyNULL/*价格*/

CREATETABLESaleOrder/*销售合同*/

SaleOrder_IDINTIDENTITY(1,1)NOTNULL,/*合同编号,主键*/

Customer_IDINTNOTNULL,/*客户编号,外键(参照CUSTOMER表)*/

CREATETABLESaleOrder_Detail/*销售合同明细表*/

SaleOrder_IDINTNOTNULL,/*销售合同编号,主键,外键(参照BUYORDER表)*/

Product_IDINTNOTNULL,/*销售商品编号,主键,外键(参照PRODUCT表)*/

Quantityintnotnull,/*商品数量*/

Pricemoneynull/*商品进价*/

CREATETABLEBuy/*进货表(验货表)*/

Buy_IDINTIDENTITY(1,1)NOTNULL,/*进货编号,主键*/

ComeDatedatetimeNOTNULL,/*进货日期*/

Dept_IDINTNOTNULL,/*进货部门,外键(参照DEPT表)*/

Employee_IDINTNOTNULL/*验货人,外键(参照EMPLOYEE表)*/

CREATETABLEBuy_Detail/*进货表明细(验货表)*/

Buy_IDINTNOTNULL,/*进货编号,主键,外键(参照BUY表)*/

Product_IDINTNOTNULL,/*商品编号,主键,外键(参照PRODUCT表)*/

BuyOrder_IDINTNULL,/*采购合同,外键(参照BUYORDER表)*/

Quantityintnotnull,/*数量*/

Pricemoneynull/*价格*/

/*BUYORDER_ID为NULL时,为现金进货*/

CREATETABLESale/*销售表*/

Sale_IDINTIDENTITY(1,1)NOTNULL,/*销售编号*/

SaleDatedatetimenotnull,/*销售日期*/

Dept_IDINTNOTNULL,/*销售部门,外键(参照DEPT表)*/

Employee_IDINTNOTNULL/*售货人,外键(参照EMPLOYEE表)*/

CREATETABLESale_Detail/*销售明细(验货表)*/

Sale_IDINTNOTNULL,/*销售编号,主键,外键(参照SALE表)*/

SaleOrder_IDINTNULL,/*销售合同,外键(参照SALEORDER表)*/

Pricemoneynotnull,/*价格*/

Discountintnull/*折扣*/

/*SALEORDER_ID为NULL时,为现金销售*/

CREATETABLEStockPile/*库存表*/

StockPile_IDINTIDENTITY(1,1)NOTNULL,/*库存编号,主键*/

Dept_IDINTNOTNULL,/*商品所属部门,外键(参照DEPT表)*/

StoreHouse_IDINTNOTNULL,/*所在仓库,外键(参照SOTREHOUSE表)*/

THE END
1.springboot毕设超市商品进销存管理系统程序+论文超市作为零售业的重要组成部分,其商品进销存管理直接关系到企业的成本控制、利润增长以及顾客满意度。传统的人工管理方式存在信息更新不及时、数据易出错、决策依据不足等问题,难以满足现代超市管理的需求。因此,开发一套高效、准确、易用的超市商品进销存管理系统显得尤为重要。该系统旨在通过信息化手段,实现对超市商品从https://blog.csdn.net/wuzhou107/article/details/144253530
2.UML建模案例——超市进销存管理系统该系统可以帮助超市提高管理效率,减少人力资源的浪费,并使整个进销存流程更加顺畅和高效。 总体描述: 超市进销存管理系统主要包括进货管理、销售管理和库存管理三个模块。进货管理模块用于管理超市的商品进货,包括商品入库、供应商管理和进货单管理。销售管理模块用于管理超市的商品销售,包括销售单管理和销售统计分析。库存https://wenku.baidu.com/view/da822085a5c30c22590102020740be1e640ecc75.html
3.UML建模案例超市进销存管理系统.doc该【UML建模案例超市进销存管理系统 】是由【花双韵芝】上传分享,文档一共【14】页,该文档可以免费在线阅读,需要了解更多关于【UML建模案例超市进销存管理系统 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获https://www.taodocs.com/p-1041754244.html
4.UML建模案例——超市进销存管理系统剖析实验报告规范实 验报告姓 名实验名称一.实验内容 学 号班级 超市进销存管理系统的UML 建模 成 绩实验日期基于OO 设计与分析方法,用统一建模语言UML 完成一个超市进销存管理系统要求:软件系统模型包括 8 种建模图,其中至少包含三个主要用例的用例脚本描述、顺序图、活动图和两个有较复杂行为的类的实例状态图。二https://max.book118.com/html/2023/0914/8056120023005132.shtm
5.超市进销存管理系统(附用例图)超市进销存管理系统,功能包括商品进货、销售等订单添加、统计、管理。https://www.iteye.com/resource/xlfsc_tkcs-5169435
6.仓库管理入库出库管理流程3.系统UML静态模型设计 3.1入库流程分析 (1)货物到达后,站台值班员组织卸货,大致清点品种、件数,编写《物资到站日报》,送至收货组; (2)收货组根据《物资到站日报表》核对验收货物,分配库位,填写《码单》。 (3)客户《货物明细单》到达后,填写《入库单》。核对《码单》、《货物明细单》,《入库单》,如出现差错https://www.99xueshu.com/w/file3kd6owd7.html
7.文献综述十六:基于UML的中小型超市管理系统分析与设计文件分类:uml技术系统的研究 二、研究背景 开发一款安全、稳定、经济而且适合中小型超市的管理系统能使用户对商品信息的管理更加简洁和高效。 三、具体内容 文献的主要内容分为三大部分。一是中小型超市管理系统需求分析,二是系统数据分析与数据库设计、三是系统的关键技术。 https://www.cnblogs.com/zacybl/p/10091780.html
8.进销存管理系统用例图怎么画零代码企业数字化知识站进销存管理系统用例图的绘制主要包括以下几个步骤:1、定义系统边界、2、识别主要角色、3、绘制用例。以简道云为例,其用例图可以帮助企业全面管理库存、销售和采购流程。1、定义系统边界是指明确进销存管理系统的功能范围,包括采购、库存、销售等模块。2、识别主要角色是指确定系统的主要用户群体,如采购员、仓库管理员、https://www.jiandaoyun.com/blog/article/1070162/
9.统一建模语言UML基础专题之UML简介及用例图从业务介绍来看,操作人员主要进行“进销存、报表和其他业务”的处理,系统维护人员主要进行基础信息管理,所以这 4 个概要用例(风筝层)分属不同的 PA 。这两种角色在概要白云层似乎没有必要严格区分,所以我们把系统维护人员和操作人员合并成“操作维护人员”,并且把这 4 个用例合并成 1 个最外围用例“业务管理”,并http://www.360doc.com/content/12/1126/20/9200790_250397602.shtml
10.进销存管理系统需求解析规格说明书进销存管理系统 需求分析规格说明书 下表汇总了文档撰写的任务分配 撰写人 负责章节 内容 xxx 第一章引言 第二章任务概述 第五章缩写词表 系统的开发背景、对任务的概述 和缩写词表的编写 xxx 第三章需求规定 第四章运行环境设定 对系统的用例进行分析,画出系 统的用例图,对例图进行说明数 据要求和运行环境 https://doc.mbalib.com/view/3796156d829fa21653455948e2d7cf46.html
11.076asp.net医药进销存系统本系统运用面向对象的思想,基于UML进行药品管理系统的分析与设计。本文运用UML来分析和描述药品店药品管理所涉及的药品基本信息管理、药品入库、出库、调价、查询、统计、盘点等一系列功能。 系统维护包括:新建操作用户、修改用户信息、删除用户等。 商品管理包括:商品信息的添加、修改和删除和查询等。 http://download.shuangyulin.com/archives/248.html
12.进销存管理子系统的用例图活动图类图包图等码农集市专业分享IT进销存管理子系统的用例图活动图类图包图等安然**放心 上传1.83 MB 文件格式 mdl 用例图 活动图 类图 包图 此资源中包含了系统的用例图,并对主要用例画出了活动图包图等点赞(0) 踩踩(0) 反馈 所需:5 积分 电信网络下载 u010658210 2018-06-06 16:48:31 评论 还是挺有用的,非常感谢https://www.coder100.com/index/index/content/id/279927
13.系统的分析与设计(精选十篇)因为UML仅仅是一种建模语言而不是建模方法,本身独立于过程,因此在实际的开发中通常会将RUP和UML联系在一起,建立软件系统可视化模型,帮助人们提供管理软件复杂性的能力。RUP告诉我们如何通过可视化对软件系统建模,使建模变的直观、清晰,降低软件开发的风险系数,从而能更好的适应用户需求的经常性变动,控制整个系统的开发https://www.360wenmi.com/f/cnkeyf5luq8x.html
14.java仓库信息管理系统基于java仓库管理系统开发仓库管理系统即有宏观上的意义,那就是顺应时代信息化、现代化潮流,提高效益,促进国民经济结构优化;也有微观上的意义,那就是可以提高管理的现代化程序,加强管理的信息化手段,提高工作效率,增加企业效益。 近年来,仓库管理系统已被世界各地大中小型企业所普遍应用,其发展趋势极其可观。进销存 (http://www.51lunwenhttps://blog.51cto.com/u_14224/6781252