库存管理系统——数据库设计
### 库存管理系统——数据库设计 #### 一、系统设计 **总原则:** - 首要确保系统总目标的实现。 - 强调模块的独立性,并保持清晰简单的接口。 **系统结构图:** - **数据录入:** 负责数据的输入工作,如物料入库、出库等操作。 - **库存分析:** 包括物资短缺/超储分析、物资积压分析等功能,提供决策支持。 - **查询系统:** 支持各种查询需求,如按日期、按物料等进行查询。 #### 二、数据库设计 **1. 数据模型抽象层次** - 数据模型的设计分为多个层次,包括概念层、逻辑层和物理层。概念层主要关注业务实体及其之间的关系;逻辑层则更侧重于数据的组织形式;物理层则涉及具体的存储实现。 **2. E-R 方法的基本思想** - 在设计过程中,首先构建一个与具体数据库实现无关的企业模式(E-R模型),然后再将其转换为特定DBMS支持的数据模型,多数情况下是关系模型。 **3. 库存管理系统E-R模型设计** **3.1 局部E-R视图** - **物料与入库单之间**:表示物料入库时的相关信息,如入库日期、数量等。 - **物料与领料单之间**:记录物料出库的具体情况,包括领料日期、数量及用途等。 - **物料与退料单之间**:记录因质量问题或其他原因导致的退货情况。 - **物料与仓库之间**:关联物料与存放仓库的信息。 **3.2 集成E-R视图** - 将各个局部E-R视图整合在一起,形成整个系统的完整数据模型。 **4. ER模型到关系模式的转换** **4.1 实体集的转换** - 每个实体对应一个关系表,实体的属性成为表中的字段,而实体的关键字则作为表的主键。 **4.2 联系的转换** - **M:N联系**:将联系单独转换为一个关系表,包含两端实体的关键字以及联系的其他属性。 - **1:N联系**:通常将N端实体的关键字作为联系关系表的关键字,或者与N端实体表合并。 - **1:1联系**:可以选择任何一端实体的关键字作为关系表的关键字,也可以与任一端实体表合并。 **5. 参考数据库结构** **5.1 入库台帐** - 主要记录入库操作的详细信息,如入库单编号、仓库号、进货日期等。 - 表格设计示例: - **入库单编号** (rk_id):唯一标识每次入库操作。 - **仓库号** (ck_id):关联存储位置。 - **进库日期** (in_date):记录入库时间。 - **供货单位** (cl_from):记录供应商信息。 - **入库数量** (rk_num):记录入库物品的数量。 - **材料编号** (cl_id):关联物料信息。 - **进货单价** (price):记录进货价格。 - **检验员** (jyy):负责验收的员工。 - **记账员** (jzy):负责记录的员工。 - **备注** (bz):额外信息或备注。 **5.2 领料台帐** - 记录领料操作,包括领料单编号、领料日期、领料部门等信息。 - 表格设计示例: - **领料单编号** (ll_id):唯一标识每次领料操作。 - **仓库号** (ck_id):关联存储位置。 - **领料日期** (ll_date):记录领料时间。 - **领料部门** (ll_bm):记录领料的部门。 - **领料用途** (yt):记录领料目的。 - **材料编号** (cl_id):关联物料信息。 - **实发数量** (num):记录实际发放数量。 - **领料员** (lly):执行领料操作的员工。 - **发料员** (fly):执行发放操作的员工。 - **备注** (bz):额外信息或备注。 **5.3 库存总帐** - 记录当前库存情况,包括材料编号、仓库号、库存数量等。 - 表格设计示例: - **材料编号** (total_id):唯一标识物料。 - **仓库号** (ck_id):关联存储位置。 - **库存数量** (total_num):记录现有库存量。 **5.4 退料台帐** - 记录退料操作,包括退料单编号、退料日期、退料原因等。 - 表格设计示例: - **退料单编号** (b_id):唯一标识每次退料操作。 - **仓库号** (ckid):关联存储位置。 - **退料日期** (tl_date):记录退料时间。 - **材料编号** (cl_id):关联物料信息。 - **退料数量** (num):记录退料数量。 - **退料人** (tlr):执行退料操作的员工。 - **经手人** (jsr):处理退料流程的员工。 - **退料原因** (reason):记录退料的原因。 **5.5 材料库** - 存储所有物料的基本信息,包括材料编号、名称、单价、最低库存量和最高库存量。 - 表格设计示例: - **材料编号** (cl_id):唯一标识物料。 - **材料名称** (cl_name):记录物料名称。 - **单价** (price):记录物料单价。 - **最低库存量** (min):设定的最低库存限制。 - **最高库存量** (max):设定的最高库存限制。 **5.6 管理员** - 记录管理员的基本信息,如用户名、密码等。 - 表格设计示例: - **用户名** (id):管理员账号。 - **密码** (pwd):登录密码。 - **备注** (bz):附加信息。 通过以上详细的数据库设计,我们可以确保库存管理系统的高效运行,同时也为后续可能的扩展提供了良好的基础。
- neuqhu2012-11-27参考价值不大
- leo_wan2013-05-17参考了做mis的思路~还可以
- alphaes2013-12-07参考下,具体的怎样就是另一回事了
- 粉丝: 1
- 资源: 12
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助