进销存管理系统数据库设计.docx
- 文档编号:7131221
- 上传时间:2023-01-21
- 格式:DOCX
- 页数:84
- 大小:33.35KB
进销存管理系统数据库设计.docx
《进销存管理系统数据库设计.docx》由会员分享,可在线阅读,更多相关《进销存管理系统数据库设计.docx(84页珍藏版)》请在冰豆网上搜索。
进销存管理系统数据库设计
关系数据库标准语言SQL
关系模型定义三类完整性约束:
实体完整性、参照完整性、用户定义的完整性
SQL语言的动词
SQL功能
动词
数据定义
CREATE,DROP,ALTER
数据查询
SELECT
数据操纵
INSERT,UPDATE,DELETE
数据控制
GRANT,REVOKE
操作
语句
定义基本表
CREATETABLE<表名>
(<列名><数据类型>[列级完整性约束条件]
[,<列名><数据类型>[列级完整性约束条件]]…
[,<列级完整性约束条件>]);
修改基本表
ALERTTABLE<表名>
[ADD<新列名><数据类型>[完整性约束]]
[DROP[完整性约束名]]
[MODIFY<列名><数据类型>];
删除基本表
DROPTABLE<表名>
建立索引
CREATE[UNIQUE][CLUSTER]INDEX<索引名>
ON<表名>(<列名>[<次序>][,(<列名>[<次序>]]…);
删除索引
DROPINDEX<索引名>
ON<表名>(<列名>[<次序>][,(<列名>[<次序>]]…);
查询操作
SELECT[ALL|DISTINCT]<目标列表达式>[,<目标列表达式>]…
FROM<表名或视图名>[,<表名或视图名>]…
[WHERE<条件表达式>]
[GROUPBY<列名1>[HAVING<条件表达式>]]
[ORDERBY<列名2>[ASC|DSC]];
集函数,包括:
COUNT([DISTINCT|ALL]*)统计元组个数
COUNT([DISTINCT|ALL]<列名>)统计一列中值的个数
SUM([DISTINCT|ALL]<列名>)计算一列值的总和(必须是数值型)
AVG([DISTINCT|ALL]<列名>)求一列值的平均值(必须是数值型)
MAX([DISTINCT|ALL]<列名>)求一列值中的最大值
MIN([DISTINCT|ALL]<列名>)求一列值中的最小值
插入操作
INSERTINTO<表名>[(<属性列1>[,<属性列2>…)]
VALUES(<常量1>[,<常量2>]…);
INSERTINTO<表名>[(<属性列1>[,<属性列2>…)]
子查询;
修改操作
UPDATE<表名>
SET<列名>=<表达式>[,<列名>=<表达式>]…
[WHERE<条件>];
删除操作
DELETEFROM<表名>
[WHERE<条件>];
建立视图
CREATEVIEW<视图名>[(列名>[,<列名>…)]
AS<子查询>
[WITHCHECKOPTION];
删除视图
DROPVIEW<视图名>;
用户授权操作权限
GRANT<权限>[,<权限>]…
[ON<对象类型><对象名>]
TO<用户>[,<用户>]…
[WITHGRANTOPTION];
对象
对象类型
操作权限
属性列
TABLE
SELECT,INAERT,UPDAT,DELETE,ALLPRIVILEGES
视图
TABLE
同上
基本表
TABLE
同上+ALERT,INDEX
数据库
DATABASE
CREATTAB
收回权限
REVOKE<权限>[,<权限>]…
[ON<对象类型><对象名>]
FROM<用户>[,<用户>]…;
进销存管理系统数据库设计
系统表分为码表、基本信息表、单据表和账表。
其中码表共五,包括往来单位码表、商品种类码表、商品计量单位码表、部门码表、商品产地码表。
基本信息表共两,包括操作员表、商品信息表。
单据表共九,包括采购单主项与采购单明细项、销售单主项与销售单明细项、报损单主项与报损单明细项、付款单、收款单、商品盘存表。
账表共八,包括库存初始化库存表、初始化应付账表、初始化应收账表、商品库存表、流水账表、应付账表、应收账表、进销存数量报表。
1.码表
(1)码表中文名称:
商品种类码表,见表1。
表名:
C_SORT
关键字:
SORT_CODE
备注:
确定系统所涉及的商品种类。
表1商品种类码表
列名
中文名称
类型与长度
空否
说明
SORT_CODE
商品种类编码
char
(2)
否
默认取值为:
“01”手机、“02”相机、“03”音响。
SORT_NAME
商品种类名称
char(50)
是
i
(2)码表中文名称:
商品计量单位码表,见表2。
表名:
C_UNIT
关键字:
UNIT_CODE
备注:
确定系统所应用的商品计量单位。
表2商品计量单位码表
列名
中文名称
类型与长度
空否
说明
UNIT_CODE
商品计量单位编码
char
(2)
否
默认取值为:
“01”部、“02”台。
UNIT_NAME
商品计量单位名称
char(10)
是
(3)码表中文名称:
商品产地码表,见表3。
表名:
C_AERO
关键字:
AERO_CODE
备注:
定义系统所涉及的商品产地。
表3商品产地码表
列名
中文名称
类型与长度
空否
说明
AERO_CODE
商品产地编码
char(10)
否
AERO_NAME
商品产地名称
char(100)
是
(4)码表中文名称:
往来单位码表,见表4。
表名:
C_SUPP
关键字:
SUPP_CODE
备注:
设定提供商品的供货单位。
表4往来单位码表
列名
中文名称
类型与长度
空否
说明
SUPP_CODE
往来单位编码
char(10)
否
SUPP_NAME
往来单位名称
char(100)
否
ZIP
邮编
char(6)
是
ADDR
地址
char(100)
是
TEL
char(20)
是
FAX
传真
char(20)
是
电子
char(100)
是
WEB
网址
char(100)
是
ACCOUNT
账号
char(30)
是
BANK
开户行
char(100)
是
(5)码表中文名称:
部门码表,见表5。
表名:
C_DEPT
关键字:
DEPT_CODE
备注:
设定企业部的部门。
表5部门码表
列名
中文名称
类型与长度
空否
说明
DEPT_CODE
部门编码
char(10)
否
DEPT_NAME
部门名称
char(50)
是
2.基本信息表
(1)码表中文名称:
操作员表,见表6。
表名:
C_OPERATOR
关键字:
OPER_CODE
备注:
记录系统的操作员信息,包括编码、姓名、密码、权限等。
表6操作员表
列名
中文名称
类型与长度
空否
说明
OPER_CODE
操作员编码
char(10)
否
OPER_NAME
操作员姓名
char(20)
是
PASSWORD
密码
char(10)
是
设定操作员登录系统的密码,避免非法用户进入系统。
DEPT_CODE
部门
char(10)
是
操作员所属部门。
POWER
权限
char(10)
是
操作员所具有的权限。
(2)码表中文名称:
商品信息表,表7。
表名:
C_GOODS
关键字:
GOODS_CODE
备注:
系统的所有商品信息。
表7商品信息表
列名
中文名称
类型与长度
空否
说明
GOODS_CODE
商品编码
char(13)
否
GOODS_NAME
商品名称
char(60)
是
SORT_CODE
商品种类
char
(2)
是
MODEL
规格型号
char(50)
是
UNIT_CODE
计量单位
char
(2)
是
PRICE_RETAIL
零售价
decimal(8,2)
是
PRICE_PLAN
计划价
decimal(8,2)
是
AERO_CODE
产地
char(10)
是
SUPP_CODE
供应商
char(10)
是
NOTE
备注
varchar(200)
是
PHOTEFILE
图片
char(100)
是
图片文件的文件名为商品编码,格式为.bmp,由系统自动写入。
3.单据表
(1)单据表中文名称:
采购单主项,见表8。
表名:
SHEET_CG_MAIN
关键字:
SHEETID
备注:
采购单由主项及明细项组成。
表8采购单主项
列名
中文名称
类型与长度
空否
说明
SHEETID
单据号
char(13)
否
在新增采购单时,采购单据号由系统自动生成。
SHEETDATE
日期
date
是
采购单的制单日期。
OPER_CODE
制单人
char(10)
是
默认为登录系统的操作员,不可修改。
MONE
金额
decimal(10,2)
是
采购商品总金额。
SUPP_CODE
供应商
char(10)
是
商品采购所对应的供应商。
FLAG_JZ
记账标记
char
(2)
是
取值为:
“是”、“否”;已记账的采购单不能修改。
MAN_JZ
记账人
char(10)
是
默认为登录系统的操作员,不可修改。
NOTE
备注
varchar(200)
是
对采购业务进行解释说明。
(2)单据表中文名称:
采购单明细项,见表9。
表名:
SHEET_CG_ITEM
关键字:
SHEETID+ITEMNO
备注:
采购单由主项及明细项组成。
表9采购单明细项
列名
中文名称
类型与长度
空否
说明
SHEETID
单据号
char(13)
否
ITEMNO
序号
integer
否
GOODS_CODE
商品编码
char(13)
是
AMOUNT
数量
integer
是
商品购买数量。
PRICE
单价
decimal(8,2)
是
由系统根据商品编码自动填入,单价为商品售价。
MONE
金额
decimal(10,2)
是
计算法:
金额=数量*单价。
NOTE
备注
varchar(200)
对每项商品的采购情况进行的解释说明。
(3)单据表中文名称:
销售单主项,见表10。
表名:
SHEET_XS_MAIN
关键字:
SHEETID
备注:
销售单由主项及明细项组成。
表10销售单主项
列名
中文名称
类型与长度
空否
说明
SHEETID
单据号
char(13)
否
在新增销售单时,销售单据号由系统自动生成。
SHEETDATE
日期
date
是
销售单的制单日期
OPER_CODE
制单人
char(10)
是
默认为登录系统的操作员,不可修改。
MONE
金额
decimal(10,2)
是
销售商品总金额。
FLAG_JZ
记账标记
char
(2)
是
取值为:
“是”、“否”;已记账的销售单不能修改。
MAN_JZ
记账人
char(10)
默认为登录系统的操作员,不可修改。
NOTE
备注
varchar(200)
是
对销售业务进行解释说明。
(4)单据表中文名称:
销售单明细项,见表11。
表名:
SHEET_XS_ITEM
关键字:
SHEETID+ITEMNO
备注:
销售单由主项及明细项组成。
表11销售单明细项
列名
中文名称
类型与长度
空否
说明
SHEETID
单据号
char(13)
否
ITEMNO
序号
integer
否
GOODS_CODE
商品编码
char(13)
是
AMOUNT
数量
integer
是
某项商品销售数量。
PRICE
单价
decimal(8,2)
是
由系统根据商品编码自动填入,单价为商品售价。
DISCOUNT
折扣
decimal(5,3)
是
销售折扣。
MONE
金额
decimal(10,2)
是
计算法:
金额=单价*数量*折扣。
NOTE
备注
varchar(200)
是
对每项商品销售情况进行解释说明。
(5)单据表中文名称:
报损单主项,见表12。
表名:
SHEET_BS_MAIN
关键字:
SHEETID
备注:
报损单由主项及明细项组成。
表12报损单主项
列名
中文名称
类型与长度
空否
说明
SHEETID
单据号
char(13)
否
在新增报损单时,报损单据号由系统自动生成。
SHEETDATE
日期
date
是
报损单的制单日期。
OPER_CODE
制单人
char(10)
是
默认为登录系统的操作员,不可修改。
MONE
金额
decimal(10,2)
是
报损销售商品总金额。
FLAG_JZ
记账标记
char
(2)
是
取值为:
“是”、“否”;已记账的报损单不能修改。
MAN_JZ
记账人
char(10)
是
默认为登录系统的操作员,不可修改。
NOTE
备注
varchar(200)
是
对报损情况进行解释说明。
(6)单据表中文名称:
报损单明细项,见表13。
表名:
SHEET_BS_ITEM
关键字:
SHEETID+ITEMNO
备注:
报损单由主项及明细项组成。
表13报损单明细项
列名
中文名称
类型与长度
空否
说明
SHEETID
单据号
char(13)
否
ITEMNO
序号
integer
否
GOODS_CODE
商品编码
char(13)
是
AMOUNT
数量
integer
是
某项商品报损数量。
PRICE
单价
decimal(8,2)
是
由系统根据商品编码自动填入,单价为商品售价。
MONE
金额
decimal(10,2)
是
计算法:
金额=数量*单价。
NOTE
报损原因
varchar(200)
是
说明商品报损的原因。
(7)单据表中文名称:
商品盘存表,见表14。
表名:
TABLE_GOODS_PC
关键字:
DATE_PC+GOODS_CODE
备注:
定期进行商品盘存处理。
获得商品的盈亏数量,并通过盘存,及时调整商品的账面数量。
表14商品盘存表
列名
中文名称
类型与长度
空否
说明
DATE_PC
盘存日期
date
否
进行商品盘存的日期。
GOODS_CODE
商品编码
char(10)
否
AMOUNT_ZM
账面数量
integer
是
当前商品库存表中的商品数量。
AMOUNT_SP
实盘数量
integer
是
经过实际盘点的商品数量。
AMOUNT_YK
盈亏数量
integer
是
盈亏数量=实盘数量-账面数量
OPER_CODE
制单人
char(10)
是
默认为登录系统的操作员,不可修改。
FLAG_JZ
记账标记
char
(2)
是
取值为:
“是”、“否”;已记账的商品盘存表不能修改。
MAN_JZ
记账人
char(10)
是
默认为登录系统的操作员,不可修改。
NOTE
备注
varchar(200)
是
对商品盘存表的解释说明。
(8)单据表中文名称:
收款单,见表15。
表名:
SHEET_SK
关键字:
SHEETID
备注:
针对销售单据号进行收款处理。
表15收款单
列名
中文名称
类型与长度
空否
说明
SHEETID
单据号
char(13)
否
在新增收款单时,收款单据号由系统自动生成。
SHEETDATE
日期
date
是
收款单的制单日期。
OPER_CODE
制单人
char(10)
是
默认为登录系统的操作员,不可修改。
SHEETID_XS
销售单据号
char(13)
是
收款单针对的销售单据号。
MONE
金额
decimal(10,2)
是
收款金额。
FLAG_JZ
记账标记
char
(2)
是
取值为:
“是”、“否”;已记账的收款单不能修改。
MAN_JZ
记账人
char(10)
是
默认为登录系统的操作员,不可修改。
NOTE
备注
varchar(200)
是
对收款单进行解释说明。
(9)单据表中文名称:
付款单,见表16。
表名:
SHEET_FK
关键字:
SHEETID
备注:
针对供应商进行付款处理。
表16付款单
列名
中文名称
类型与长度
空否
说明
SHEETID
单据号
char(13)
否
在新增付款单时,付款单据号由系统自动生成。
SHEETDATE
日期
date
是
付款单的制单日期。
OPER_CODE
制单人
char(10)
是
默认为登录系统的操作员,不可修改。
MONE
金额
decimal(10,2)
是
付款金额。
SUPP_CODE
供应商
char(10)
是
针对供应商付款。
FLAG_JZ
记账标记
char
(2)
是
取值为:
“是”、“否”;已记账的付款单不能修改。
MAN_JZ
记账人
char(10)
是
默认为登录系统的操作员,不可修改。
NOTE
备注
varchar(200)
是
对付款情况进行解释说明。
4.账表
(1)账表中文名称:
初始化库存表,见表17。
表名:
INI_GOODS_AMOUNT
关键字:
GOODS_CODE
备注:
通过初始化库存,系统可以将初始数据自动转入商品库存表、进销存数量报表。
表17初始化库存表
列名
中文名称
类型与长度
空否
说明
GOODS_CODE
商品编码
char(13)
否
AMOUNT
库存
integer
是
商品期初库存数量。
FLAG_JZ
记账标记
char
(2)
是
取值为:
“是”、“否”。
MAN_JZ
记账人
char(10)
是
默认为登录系统的操作员编码。
(2)账表中文名称:
初始化应付账表,见表18。
表名:
INI_REPORT_YF_MONE
关键字:
SUPP_CODE
备注:
本系统针对供应商挂应付账。
通过初始化应付账表,系统可以将初始数据将自动转入应付账表。
表18初始化应付账表
列名
中文名称
类型与长度
空否
说明
SUPP_CODE
供应商
char(10)
否
MONE_YF
应付金额
decimal(10,2)
是
系统启用期初应付金额。
MONE_FK
付款金额
decimal(10,2)
是
系统启用期初已付款金额。
MONE_YE
余额
decimal(10,2)
是
期初应付账款余额。
NOTE
备注
varchar(200)
是
对应付账款情况进行解释说明。
FLAG_JZ
记账标记
char
(2)
是
取值为:
“是”、“否”。
MAN_JZ
记账人
char(10)
是
默认为登录系统的操作员编码。
(3)账表中文名称:
初始化应收账表,见表19。
表名:
INI_REPORT_YS_MONE
关键字:
SHEETID_XS
备注:
本系统针对销售单据号挂应收账。
通过初始化应收账表,系统可以将初始数据将自动转入应收账表。
表19初始化应收账表
列名
中文名称
类型与长度
空否
说明
SHEETID_XS
销售单据号
char(13)
否
MONE_YS
应收金额
decimal(10,2)
是
系统启用期初应收账款金额。
MONE_SK
收款金额
decimal(10,2)
是
系统启用期初已收款金额。
MONE_YE
余额
decimal(10,2)
是
期初应收账款余额。
NOTE
备注
varchar(200)
是
对应收账款情况进行解释说明。
FLAG_JZ
记账标记
char
(2)
是
取值为:
“是”、“否”。
MAN_JZ
记账人
char(10)
是
默认为登录系统的操作员编码。
(4)账表中文名称:
商品库存表,见表20。
表名:
GOODS_AMOUNT
关键字:
GOODS_CODE
备注:
商品当前的库存数量。
表20商品库存表
列名
中文名称
类型与长度
空否
备注
GOODS_CODE
商品编码
char(13)
否
AMOUNT
库存
integer
是
商品当前的账面库存数量。
(5)账表中文名称:
流水账表,见表21。
表名:
GOODS_RECORD
关键字:
SHEETDATE+GOODS_CODE+ITEMNO
备注:
详细记录每一笔采购、销售、报损、盘存等业务处理的数据情况。
表21流水账表
列名
中文名称
类型与长度
空否
说明
SHEETDATE
日期
date
否
表示业务发生的日期。
GOODS_CODE
商品编码
char(13)
否
ITEMNO
序号
integer
否
对同一日期、同一商品的商品采购、销售、报损、盘存情况进行排序。
SHEETTYPE
单据类型
char(10)
是
取值为:
“采购”、“销售”、“报损”、“盘存”。
SHEETID
单据号
char(13)
是
经济业务发生的单据号
AMOUNT_ADD
增加数量
integer
是
经济业务发生后,导致商品增加的数量。
AMOUNT_SUB
减少数量
integer
是
经济业务发生后,导致商品减少的数量。
PRICE
单价
decimal(8,2)
是
商品单价。
DISCOUNT
折扣
decimal(5,3)
是
商品折扣,与单据上折扣一致。
(6)账表中文名称:
进销存数量报表,见表22
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 进销存 管理 系统 数据库 设计
![提示](https://static.bdocx.com/images/bang_tan.gif)