首页 小型面粉加工企业信息管理系统

小型面粉加工企业信息管理系统

举报
开通vip

小型面粉加工企业信息管理系统小型面粉加工企业信息管理系统 信息工程学院 《数据库原理与应用》课程设计论文 题目:小型面粉加工企业管理系统数据库设计 学 号: 09307006 姓 名: 丁 超 专业班级: 电子商务071班 指导老师: 李书琴 完成日期: 二零零九年七月 摘 要 小型面粉加工企业管理系统是应对面粉加工企业管理的现代化,逐步摆脱当前乡镇面粉加工企业管理的人工管理方式,提高面粉企业管理效率而开发的,它包括供货方基本信息管理、收货方基本信息管理、储户基本信息管理、仓库基本信息管理、面粉基本信息管理、麸皮基本信息管...

小型面粉加工企业信息管理系统
小型面粉加工企业信息管理系统 信息 工程 路基工程安全技术交底工程项目施工成本控制工程量增项单年度零星工程技术标正投影法基本原理 学院 《数据库原理与应用》课程设计论文 题目:小型面粉加工企业管理系统数据库设计 学 号: 09307006 姓 名: 丁 超 专业班级: 电子商务071班 指导老师: 李书琴 完成日期: 二零零九年七月 摘 要 小型面粉加工企业管理系统是应对面粉加工企业管理的现代化,逐步摆脱当前乡镇面粉加工企业管理的人工管理方式,提高面粉企业管理效率而开发的,它包括供货方基本信息管理、收货方基本信息管理、储户基本信息管理、仓库基本信息管理、面粉基本信息管理、麸皮基本信息管理、小麦基本信息管理、欠款查询等八大功能模块,并提供了对各功能模块的查询和更新功能,。 该系统开发由系统需求分析阶段、概念设计阶段、逻辑设计阶段、数据库实施阶段、系统调试和测试阶段、参考文献、附录等阶段组成。 关键字:小型面粉加工企业管理,产品信息管理,储户信息管理,小麦管理,功能模块,存储过程 目 录 1.系统需求分析阶段 .................................................................. 1 1.1引言 ........................................................................... 1 1.2 目标与任务 .................................................................... 1 1.2.1 需求分析阶段的目标 ........................................................ 1 1.2.2 需求分析阶段的任务 ........................................................ 1 1.2.3 需求分析阶段成果 .......................................................... 2 2. 系统概念结构设计阶段 ............................................................ 10 3(系统逻辑结构设计阶段 ............................................................ 11 3.1逻辑设计的任务和目标 .......................................................... 11 3.2数据组织 ...................................................................... 11 3.2.1将E-R图转换为关系模型 .................................................... 11 3.2.2数据库模式定义 ............................................................ 12 3.2.3用户子模式设计 ............................................................ 12 4(系统物理设计阶段 ..............................................................13 5(数据库实施阶段................................................................13 5.1建立数据库、数据表、视图、索引 ................................................ 13 5.1.1 建立数据库 ............................................................... 13 5.1.2 建立数据表 ............................................................... 13 5.1.3 建立视图 ................................................................. 18 5.1.4 建立索引 ................................................................. 20 5.2数据入库 ....................................................................... 20 6(系统调试和测试................................................................21 7(实习心得 .....................................................................23 参考文献 ........................................................................24 附录1 数据字典 ..................................................................25 附录2数据库逻辑结构定义 .........................................................28 附录3 存储过程定义 ..............................................................32 附录4 数据查看和存储过程功能的验证 ...............................................35 附录5 所有的SQL运行语句 ........................................................37 2007级电子商务1班数据库原理与应用课程设计论文 1.系统需求分析阶段 1.1引言 通过对家乡乡镇小型面粉加工企业的了解,知道现在的面粉管理还停留在文件管理阶段,管理员对企业的相关信息仍用纸制文件保存。这样的存放很容易造成信息的丢失,也会使花费更多,效率也不是很高,所以开发合适的小型面粉加工企业信息管理系统可以更高效的进行管理并节省开支。 1.2 目标与任务 1.2.1 需求分析阶段的目标 (1)了解现在小型面粉加工企业管理的现状。 (2)通过一定的方式了解小型面粉加工企业管理的工作业务流程,并记录和处理相关的数据。 (3)与指导教师、同学进行交流,征求各方意见,改正不合理的地方。 1.2.2 需求分析阶段的任务 (1)处理对象: 系统要处理的对象包括供货方基本信息管理、收货方基本信息管理、储户基本信息管理、仓库基本信息管理、面粉基本信息管理、麸皮基本信息管理、小麦基本信息管理等七个方面,各个对象包括信息如下所示(详细的数据见于数据字典): 1.收货方基本信息(S):包括收货方编号,收货方姓名,收货方地址,收货方电话等方面,这可以方便对收货方的管理,提高查询效率; 2(供货方基本信息(G):包括供货方编号,供货方姓名,供货方地址,供货方电话等方面,这可以方便对供货方信息的管理; 3(储户基本信息(C):包括储户编号,储户姓名,储户地址,储户电话,存储重量,这可以方便对储户信息的查询、更新及删除; 4仓库基本信息(K):包括仓库编号,仓库存放种类,仓库最大库存,仓库当前库存,这可以方便仓库管理员对仓库信息的查询; 5(面粉基本信息(M):包括面粉编号,面粉种类,面粉销售量,面粉支取量,面粉警戒低库存,面粉警戒高库存,面粉率,所在仓库编号,当前库存,这可以方便销售员与库管员对面粉信息的及时查询以方便销售; 6(麸皮基本信息(F):包括麸皮编号,麸皮重量,麸皮销售重量,麸皮支取重量,麸皮警戒低库存,麸皮警戒高库存,麸皮率,所在仓库编号,当前库存,这可以方便销售员对麸皮信息的及时查询以方便销售; 7.小麦基本信息(W):包括小麦编号,小麦累计收购入库,小麦累计存储入库,小麦警戒低库存,小麦警戒高库存,所在仓库编号,当前库存,这可以方便采购员及时的对小麦信息的查询以知道是否进行小麦的采购工作。 1 2007级电子商务1班数据库原理与应用课程设计论文 (2)处理功能要求 系统主要完成以下几个功能: 1(供货方、收货方、储户基本信息的查询与修改; 2(小麦基本信息查询与更新; 3(面粉和麸皮信息的查询与更新; 4(库存信息的查询和修改; 5(储户加工费欠费信息的查询; 6(收货方货款欠费信息的查询; (3)安全性和完整性要求 安全性先通过视图机制,不同的用户只能访问系统授权的视图,这样可提供系统数据一定程度上的安全性,再通过用户授权机制,欲用户登陆来识别用户级别,根据这个级别来分配用户权限,达到数据更高层次的安全保密功能。 完整性要求用于描述供货方基本信息、收货方基本信息、储户基本信息、仓库基本信息、面粉基本信息、麸皮基本信息、小麦基本信息中数据项能否为null,以及一些用户自定义完整性(符合实际要求),详细完整性要求见于系统的逻辑设计阶段。 1.2.3 需求分析阶段成果 (1)体会与收获 由于我们家原来办过一个面粉加工厂,所以在系统需求分析阶段主要通过自己的实地轻身体验了解相关信息,同时借鉴了学长在做数据库开发这方面的经验。通过体验,了解目前小型面粉加工企业的现状、管理中存在的一些问题以及在管理中存在的资源浪费问题。在需求分析的前期调查中,整体感觉还是比较顺利的,但是在后期在画系统的业务图和数据业务流程图的过程中还是遇到了一些问题,例如:整体效果、没有注意相关细节等问题。当然这样问题一一都解决了,我想画图工作也是一次很好的锻炼机会,给了我很大的启发。 (2)系统的功能结构图: 2 2007级电子商务1班数据库原理与应用课程设计论文 小型面粉加工企业信息管理系统采购部销售部财务部仓库管理客户部 小代产储收库产供收储麦农品户银存品货货户收储销支出信支方方信购存售取纳息取信信息息息 面麸小 粉皮麦 库库库 存存存 1.1 图系统功能结构图 (3)系统业务流程图 采购部的业务流程图: 发发送发送发出供货信息供货信息出 供货采购储户商部 化验 送达库存账务不合不合退货单化验报告退货单格格送达修改库存合格 称重呈库管填取款单填写供货单入库单填送员员写 填写送达填写出纳写收货单收货单 1.2 图采购部业务流程图 财务部的业务流程图: 收货供货传送传送填写填写订单取款单方方 填写收银填写传送传送收款单支付单出纳 收取加工费传送 填传支取单收费单储户写送 图1.3 财务部业务流程图 3 2007级电子商务1班数据库原理与应用课程设计论文 销售部业务流程图: 递收货请销售递请订单订单储户交方求求员交 查询库存 递库存库存递缺货单库存表缺货单交不足不足交货填写填写货销售单支取单物物提递交递交提取取库管改改改库存帐务库存账务储户存量写员写写 1.4 图销售部的业务流程图 仓库管理业务流程图: 填写填写填写填写流水账入库单入库单流水账 提交供货单提交供货供货单方库管递递储户员送送 收货提交提交销售单支取单方 填写填写填写填写流水账流水账支出单支出单汇总 更流水账库存账新 1.5 图仓库管理业务流程图 客户部的业务流程图: 更新更新供货方信息销售信息表表 订单传送 确销售客户提采购传供货信息定部部供部送 传送销户表管理递 交更改 提交销户单储户储户信息表员工信息表 1.6 图客户部业务流程图 4 2007级电子商务1班数据库原理与应用课程设计论文 (4)数据流程图: 顶层数据流程图: E3 储户 供货单支取单 P0收货单订单E1E2管理供货方收货方支取单供货单系统 库存台帐S1 图1.7 顶层数据流程图 第一层数据流程图: 管理系统 E4库 管员 退货单 P1P4P2收货单订单E1E2供收 货方货方销售进货盘存支取单供货单 盘查入出库清单库单 单库存台S1帐 出库入 单库 P3 存储 交易 支取供货单单 E3 储户 1.8 图第一层数据流程图 5 2007级电子商务1班数据库原理与应用课程设计论文 第二层数据流程图:从收货方出发 P2 F10出库F7P2.1P2.2订单单F9E2库存台帐S1销售销售单收货方出库F8产品支取单 流水账S2 图1.9 第二层收货方数据流程图 第二层数据流程图:从供货方出发 P1 F2 P1.1P1.2P1.3收货单F6F1F3E1库存台帐S1入库单供货单合格单供货单供货方化验称重入库F1F4不 合格 单 P1.4F5流水账S2退货单退货 图1.10 第二层供货方数据流程图 第二层数据流程图:从储户出发 P3 F8支取单P3.5P3.6F8F10支取单出库单产品出库F7订单支取 F11 P3.1P3.2P3.3存储单F6F1F3E3S1库存台帐入库单供货单供货单合格单储户化验称重入库F4F1不 合格 单P3.4F5流水账S2退货单退货 1.11 图第二层储户数据流程图 6 2007级电子商务1班数据库原理与应用课程设计论文 第二层数据流程图:从库管员出发 P4 F13F13F12P4.1P4.2P4.3E4麸皮面粉小麦库存台帐S1小麦面粉麸皮库管清单清单清单盘存盘存盘存员 1.12 图第二层库管员数据流程图 (5)数据字典: (a) 数据项: 表1.1 数据字典 数据项 数据项 数据含义 存储结构 别名 备注 编号 名称 D1-01 CName 储户姓名 char(10) 姓名 D1-02 CNo 储户编号 char(10) 编号 D1-03 CDate 存储日期 char(10) 存储日期 D1-04 CAdress 储户地址 char(50) 地址 D1-05 CTel 储户电话 char(20) 电话 D1-06 CWwei 存储重量 flaot 存储重量 D1-07 CWNo 存储编号 char(20) 编号 D1-08 QNo 取面编号 char(20) 编号 D1-09 QGyw 共用小麦 float 重量 D1-10 QZjgf 总加工费 float 费用 D1-11 QSfjgf 实付加工费 float 付费 D1-12 QSqjgf 所欠加工费 float 欠费 D1-13 CZgross 支取总重量 float 支取总重量 小麦的重量单位:Kg D1-14 CSgross 剩余总重量 float 剩余总重量 同上 D1-15 SName 收货方姓名 char(10) 姓名 D1-16 SNo 收货方编号 char(10) 编号 D1-17 SAdress 收货地址 char(50) 地址 D1-18 STel 收货人电话 char(20) 电话 D1-19 GName 供货方姓名 char(10) 姓名 D1-20 GNo 供货方编号 char(10) 编号 D1-21 GAdress 供货方地址 char(50) 地址 D1-22 GTel 供货方电话 char(20) 电话 D1-23 YName 经办人姓名 char(10) 姓名 D1-24 YNo 经办人工作号 cahr(20) 工作号 D1-25 YPay 经办人工资 float 工资 D1-26 YZw 经办人职务 char(10) 职务 D1-27 YSb 经办人所属部门 char(10) 所属部门 D1-28 MSort 面粉种类 char(12) 种类 7 2007级电子商务1班数据库原理与应用课程设计论文 数据项 数据项 数据含义 存储结构 别名 备注 编号 名称 D1-29 MNo 面粉编号 char(10) 编号 D1-30 MWei 面粉重量 float 重量 面粉重量:Kg D1-31 MZrWei 面粉累计入库 float 累计入库 重量单位:吨 D1-32 MZXs 面粉销售出库 float 销售出库 同上 D1-33 MZzq 面粉累计支取出库 float 计支取出库 同上 D1-34 MZc 面粉累计出库 float 累计出库 同上 D1-35 MZWei 面粉当前库存 float 当前库存 同上 D1-36 MJd 面粉警戒低库存 float 警戒低库存 同上 D1-37 MJg 面粉警戒高库存 float 警戒高库存 同上 D1-38 MXsNo 面粉销售编号 char(20) 销售编号 D1-39 MXsWei 面粉销售重量 float 销售重量 重量单位:kg D1-40 MXsPrice 面粉销售单价 float 销售单价 D1-41 MLv 面粉率 float 面粉率 0<面粉率<1 D1-42 FNo 麸皮编号 char(10) 编号 D1-43 FWei 麸皮重量 float 重量 重量:Kg D1-44 FZr 麸皮累计入库 float 累计入库 D1-45 FZXs 麸皮销售出库 float 销售出库 库存单位:吨 D1-46 FZzq 麸皮累计支取出库 float 计支取出库 同上 D1-47 FZc 麸皮累计出库 float 累计出库 同上 D1-48 FZWei 麸皮当前库存 float 当前库存 同上 D1-49 FJd 麸皮警戒低库存 float 警戒低库存 同上 D1-50 FJg 麸皮警戒高库存 float 警戒高库存 同上 D1-51 FLv 麸皮率 float 麸皮率 0<麸皮率<1 D1-52 FXsNo 麸皮销售编号 char(20) 编号 D1-53 FXsWei 麸皮销售重量 float 重量 重量单位:Kg D1-54 FXsPrice 麸皮销售单价 float 单价 单价单位:元/袋 D1-55 XsZmon 销售总金额 float 总金额 D1-56 Sfge 收货方实付金额 float 实付金额 D1-57 Sqge 收货方所欠金额 float 所欠金额 D1-58 WNo 小麦编号 char(10) 编号 D1-59 WZbr 小麦累计收购入库 float 计收购入库 同上 D1-60 WZcr 小麦累积存储入库 float 计存储入库 同上 D1-61 WZr 小麦累计入库 float 累计入库 同上 D1-62 WZWei 小麦当前库存 float 当前库存 同上 D1-63 WJd 小麦警戒低库存 float 警戒低库存 同上 D1-64 WJg 小麦警戒高库存 float 警戒高库存 同上 D1-65 PDate 收购日期 char(10) 日期 D1-66 PNo 收购编号 char(20) 编号 D1-67 Mwei 小麦重量 float 重量 重量单位:Kg D1-68 PPrice 收购价格 float 价格 价格单位:元/kg D1-69 PZmon 收购总金额 float 总金额 D1-70 ShdNo 收货单编号 char(20) 编号 8 2007级电子商务1班数据库原理与应用课程设计论文 数据项 数据项 数据含义 存储结构 别名 备注 编号 名称 D1-71 GhdNo 供货单编号 char(20) 编号 D1-72 GhLb 供货类别 char(10) 类别 类别分为:存储和出售 D1-73 HgdNo 合格单编号 char(20) 编号 D1-74 BhgdNo 不合格单编号 char(20) 编号 D1-75 ThdNo 退货单编号 char(20) 编号 D1-76 RkdNo 入库单编号 char(20) 编号 D1-77 DdNo 订单编号 char(20) 编号 D1-78 DdLb 订单类别 char(10) 类别 类别分为:提取和购买 D1-79 ZqdNo 支取单编号 char(20) 编号 D1-80 XsdNo 销售单编号 char(20) 编号 D1-81 CkdNo 出库单编号 char(20) 编号 D1-82 WqdNO 小麦清单编号 char(20) 编号 D1-83 MqdNo 面粉清单编号 char(20) 编号 D1-84 FqdNo 麸皮清单编号 char(20) 编号 D1-85 CcdNo 存储单编号 char(20) 编号 D1-86 Date 日期 char(10) 日期 所有单据的开票日期 D1-87 KNo 仓库编号 char(10) 编号 D1-88 KcZl 仓库库存种类 char(10) 库存种类 小麦,面粉,麸皮 D1-89 KcMax 仓库最大库存量 float 最大库存 库存量单位:吨 D1-90 KcDql 仓库当前库存量 float 当前库存 同上 (b)数据结构: 表1.2 数据结构 据结 数据 数据结 组成 构编号 结构名 构含义 DS-1 C 储户信息 CNo,CName,CTel,CAdress DS-2 S 收货方信息 SNo,SName,STel,SAdress DS-3 G 供货方信息 GNo,GName,GTel,GAdress DS-4 Y 经办人信息 YNo,YName,YPay,YZw DS-5 M 面粉信息 MSort,MNo,MWei,MJd,MJg,MLv DS-6 F 麸皮信息 FqdNo,FNo,FZr,FZXs,FZzq,FZc,FZWei,FLv DS-7 W 小麦信息 WNo,WJd,WJg DS-8 Ghd 供货单 GhdNo,Date,GNo,GName,GhLb DS-9 Shd 收货单 ShdNo,PNo,PDate,GNo,GName,PWwei,PPrice,PZmon,YName DS-10 Hgd 合格单 HgdNo,Date,GNo,WNo,YName DS-11 Bhgd 不合格单 BhgdNo,Date,GNo,WNo,YName DS-12 Thd 退货单 ThdNo,Date,GNo,GName,YName DS-13 Rkd 入库单 RkdNo,Date,WNo,WWei,YName DS-14 Dd 订单 DdNo,Date,SNo,SName,MSort,MWei,DdLb DS-15 Zqd 支取单 ZqdNo,Date,QNo,MSort,MWei,FWei,QGyw,QZjgf,QSfjgf,QSqjgf,CNo,CName,Yname XsdNo,Date,SNo,SName,MSort,MNo,MXsPrice,MXsWei,FNo,FXsWei, DS-16 Xsd 销售单 FXsPrice,XsZmon,Sfge,Sqge,Yname 9 2007级电子商务1班数据库原理与应用课程设计论文 据结 数据 数据结 组成 构编号 结构名 构含义 DS-17 Ccd 存储单 CcdNo,Date,CName,WNo,CWWei,YName DS-18 Wqd 小麦清单 WqdNo,Date,WNo,WZbr,WZcr,WZr,WZWei,YName DS-19 Mqd 面粉清单 MqdNo,Date,MSort,MNo,MZrWei,MZXs,MZzq,MZc,MZWei,YName DS-20 Fqd 麸皮清单 FqdNo,Date,FNo,FZr,FZXs,FZzq,FZc,FZWei,YName (c)数据流:见附录1-1 (d)处理逻辑:见附录1-2 (e)数据存储:见附录1-3 2. 系统概念结构设计阶段 2.1 引言 概念设计阶段主要是将需求分析阶段得到的用户需求抽象为信息结构(概念模型)的过程,它是整 个数据库设计的关键,主要是概念模型设计。 2.2 概念模型设计 (1)根据不同的对象,从第二层数据流程图入手,分别画出分E,R图: (a )从数据流程图1.9抽象出分E-R图: n1nm订货面粉存放 收货方仓库 1n1n订货麸皮存放 2.1 E-R图收货方分图 (b)从数据流程图1.10抽象出分E-R图: n1m n供货方供货小麦存放仓库 2.2 ER图供货方分-图 (c)从数据流程图1.11抽象出分E-R图: n1nm存储小麦存放 储户仓库 换取面粉存放nmn1 2.3 E-R图储户分图 10 2007级电子商务1班数据库原理与应用课程设计论文 (2)各分E,R图中每个实体的属性如下所示: 收货方: S(收货方编号,收货方姓名,收货方地址,收货方电话) 供货方: G(供货方编号,供货方姓名,供货方地址,供货方电话) 储户: C(储户编号,储户姓名,储户地址,储户电话) 面粉: M(面粉编号,面粉种类,面粉重量面粉销售量,面粉支取量,面粉警戒低库存,面粉警戒高库存, 面粉率) 麸皮: F(麸皮编号,麸皮重量,麸皮销售量,麸皮支取量,麸皮警戒低库存,麸皮警戒高库存,麸皮率) 小麦: W(小麦编号,小麦累计收购入库,小麦累计存储入库,小麦警戒低库存,小麦警戒高库存) 仓库: K(仓库编号,仓库存放种类,仓库最大库存,仓库当前库存) (3)合并各分,,,图,消除属性冲突、命名冲突、结构冲突等三类冲突,得到初步E-R图, 再消除不必要冗余,得到的基本E-R图如下所示: 供货方麸皮收货方订麸皮11 111 存放 订货n供货 nn存放存放仓库nmmn 1n1n小麦储户面粉存储换取 2.4 E-R图总图 3(系统逻辑结构设计阶段 3.1逻辑设计的任务和目标 以上的概念设计阶段是独立于任何一种数据模型的,但是逻辑设计阶段就与选用的DBMS产品发生关系了,系统逻辑设计的任务就是将概念设计阶段设计好的基本E-R图转换为选用DBMS产品所支持的数据模型相符合的逻辑结构。具体内容是将E-R图转换成关系模型、数据库模式定义、用户子模式设计。 3.2数据组织 3.2.1将E-R图转换为关系模型 在此管理系统里存在多个实体之间的多种关系,具体的基本E-R图向关系模型的转化如下: 收货方: S(SNo,SName,SAdress,STel) 供货方: G(GNo,GName,GAdress,GTel) 11 2007级电子商务1班数据库原理与应用课程设计论文 储户: C(CNo,CName,CAdress,ATel) 面粉: M(MNo,MSort,MWei,MZXs,MZzq,MJd,MJg,MLv) 麸皮: F(FNo,FZXs,FZzq,FJd,FJg,FLv) 小麦: W(WNo,WZbr,WZcr,WJd,WJg) 仓库: K(KNo,KcZl,KcMax,KcDql) 供货: Gh(GhdNo,GNo,WNo,Mwei,PPrice,PZmon) 订面: Dm(DdNo,SNo,MNo,MXsPrice,MXsWei,XsZmon,Sfge,Sqge) 订麸皮: Dfp(DdNo,SNo,FNo,FWei,FXsPrice,XsZmon,Sfge,Sqge) 存储: Cc(CNo,WNo,CDate,CWwei) 取面: Qm(QNo,CNo,MNo,MWei,QGyw,QZjgf,QSfjgf,QSqjgf) 小麦存放:Wcf(WNo,KNo,WWei) 面粉存放:Mcf(MNo,KNo,KWei) 麸皮存放:Fcf(FNo,KNo,FWei) (注:标有直线下划线的为主属性,标有波浪线下划线的是外键属性,主属性与外键属性一起构成主码) 3.2.2数据库模式定义 表3.1 数据库模式定义表 编号 逻辑结构(基本表)定义 完整性和安全性 T-1 G(详见附录2-1) (详见附录2-1) T-2 S(详见附录2-2) (详见附录2-2) T-3 C(详见附录2-3) (详见附录2-3) T-4 W(详见附录2-4) (详见附录2-4) T-5 M(详见附录2-5) (详见附录2-5) T-6 F(详见附录2-6) (详见附录2-6) T-7 K(详见附录2-7) (详见附录2-7) T-8 Gh(详见附录2-8) (详见附录2-8) T-9 Dm(详见附录2-9) (详见附录2-9) T-10 Dfp(详见附录2-10) (详见附录2-10) T-11 Cc(详见附录2-11) (详见附录2-11) T-12 Hq(详见附录2-12) (详见附录2-12) T-13 Wcf(详见附录2-13) (详见附录2-13) T-14 Mcf(详见附录2-14) (详见附录2-14) T-15 Fcf(详见附录2-15) (详见附录2-15) 3.2.3用户子模式设计 表3.2 用户子模式定义表 编号 用户子模式 作用(共性:提供数据保密和安全保护机制) V-1 GView 用于查询和更新供货方基本信息 V-2 SView 用于查询和更新收货方基本信息 V-3 CView 用于查询和更新储户基本信息 V-4 WView 用于查询和更新小麦基本信息 V-5 MView 用于查询和更新面粉基本信息 V-6 FView 用于查询和更新麸皮基本信息 V-7 KView 用于查询和更新仓库基本信息 12 2007级电子商务1班数据库原理与应用课程设计论文 编号 用户子模式 作用(共性:提供数据保密和安全保护机制) V-8 Sqmf 用于查询收货方订面所欠的费用 V-9 Sqff 用于查询收货方订麸皮所欠的费用 V-10 Sqjgf 用于查询储户换取面粉所欠的加工费 4(系统物理设计阶段 4.1物理设计阶段的目标与任务 数据库的物理设计就是为逻辑数据模型选取一个最合适应用要求的物理结构的过程,在这个阶段中要完成两大任务: (1)确定数据库的物理结构,在关系数据库中主要是存取方法和存储结构; (2)对物理结构进行评价,评价的重点是时间和空间效率。 4.2数据存储方面 确定系统的物理结构主要指确定数据的存放位置和存储结构,包括:确定关系、索引、聚簇、日志、备份等存储安排和存储结构,确定系统配置等。 这主要说明建立索引问题:由于基本表G、S、C、W、M、F、K的主码GNo、SNo、CNo、WNo、MNo、FNo、KNo经常在查询条件和连接操作的连接条件中出现,且它们的值唯一,考虑在属性上建立唯一性索引。 5(数据库实施阶段 5.1建立数据库、数据表、视图、索引 5.1.1 建立数据库 create database Flourmill_ManagementSystem 5.1.2 建立数据表 (1)供货方基本信息表的建立: create table G( GNo char(10) primary key, GName char(10) not null, GAdress char(50) not null, GTel char(20) not null ) 13 2007级电子商务1班数据库原理与应用课程设计论文 (2)收货方基本信息表的建立: create table S( SNo char(10) primary key, SName char(10) not null, SAdress char(50) not null, STel char(20) not null ) (3) 储户基本信息表的建立: create table C( CNo char(10) primary key, CName char(10) not null, CAdress char(50) not null, CTel char(20) not null, ) (4)小麦基本信息表的建立: create table W( WNo char(10) primary key, WZbr float, WZcr float, WJd float not null, WJg float not null, ) (5)面粉基本信息表的建立: create table M( MNo char(10) primary key, MSort char(12) , MWei float not null, MZXs float , MZzq float , MJd float not null, MJg float not null, MLv float not null ) create trigger Ms on M for insert,update as 14 2007级电子商务1班数据库原理与应用课程设计论文 if exists( select * from inserted where MSort!='特制一级' or MSort!='特制二级' or MSort!='特制三级') rollback create trigger Ml on M for insert,update as if exists( select * from inserted where MLv<=0 or MLv>=1) rollback (6)麸皮基本信息表的建立: create table F( FNo char(10) primary key, FZXs float , FZzq float , FJd float not null, FJg float not null, FLv float ) create trigger Fl on F for insert,update as if exists( select * from inserted where FLv<=0 or FLv>=1) rollback (7)仓库基本信息表的建立: create table K( KNo char(10) primary key, KcZl char(10), KcMax float not null, KcDql float not null ) 15 2007级电子商务1班数据库原理与应用课程设计论文 create trigger Kz on K for insert,update as if exists( select * from inserted where KcZl!='面粉'or KcZl!='麸皮'or KcZl!='小麦') rollback (8)供货基本信息表的建立: create table Gh( GhdNo char(20) primary key, GNo char(10) not null, WNo char(10) not null, Mwei float not null, PPrice float not null, PZmon float not null, foreign key (GNo) references G(GNo), foreign key (WNo) references W(WNo) ) (9) 订面基本信息表的建立: create table Dm( DdNo char(20) primary key, SNo char(10) not null, MNo char(10) not null, MXsPrice float not null, MXsWei float not null, XsZmon float not null, Sfge float not null, Sqge float , foreign key (SNo) references S(SNo), foreign key (MNo) references M(MNo) ) (10) 订麸皮基本信息表的建立: create table Dfp( DdNo char(20) primary key, SNo char(10) not null, FNo char(10) not null, 16 2007级电子商务1班数据库原理与应用课程设计论文 FWei float not null, FXsPrice float not null, XsZmon float not null, Sfge float not null, Sqge float , foreign key (SNo) references S(SNo), foreign key (FNo) references F(FNo) ) (11)存储基本信息表的建立: create table Cc( CNo char(10) , WNo char(10) , CDate char(10) not null, CWwei float not null, primary key(CNo,WNo), foreign key (CNo) references C(CNo), foreign key (WNo) references W(WNo), ) (12)换取基本信息表的建立: create table Hq( QNo char(20) primary key, CNo char(10) not null, MNo char(10) not null, MWei float not null, QGyw float not null, QZjgf float not null, QSfjgf float not null, QSqjgf float , foreign key(CNo) references C(CNo), foreign key(MNo) references M(MNo) ) (13)小麦存放基本信息表的建立: create table Wcf( KNo char(10) , WNo char(10) , WWei float not null, primary key(KNo,WNo), foreign key (KNo) references K(KNo), foreign key (WNo) references W(WNo), ) 17 2007级电子商务1班数据库原理与应用课程设计论文 (14)面粉存放基本信息表的建立: create table Mcf( KNo char(10) , MNo char(10) , MWei float not null, primary key(KNo,MNo), foreign key (KNo) references K(KNo), foreign key (MNo) references M(MNo) ) (15)麸皮存放基本信息表的建立: create table Fcf( KNo char(10) , FNo char(10) , FWei float not null, primary key(KNo,FNo), foreign key (KNo) references K(KNo), foreign key (FNo) references F(FNo) ) 5.1.3 建立视图 (1)用于查询和更新供货方基本信息的视图定义如下: create view GView(供货方编号,供货方姓名,供货方地址,供货方电话) as select * from G with check option (2)用于查询和更新收货方基本信息的视图定义如下: create view SView(收货方编号,收货方姓名,收货方地址,收货方电话) as select * from S with check option (3)用于查询和更新储户基本信息的视图定义如下: create view CView(储户编号,储户姓名,储户地址,储户电话,存储重量) as select C.CNo,CName,CAdress,CTel,CWwei from C,Cc where C.CNo=Cc.CNo with check option (4)用于查询和更新面粉基本信息的视图定义如下 18 2007级电子商务1班数据库原理与应用课程设计论文 create view MView(面粉编号,面粉种类,面粉销售量,面粉支取量,面粉警戒低库存,面粉警戒高 库存,面粉率,所在仓库编号,当前库存) as select M.MNo,MSort,MZXs,MZzq,MJd,MJg,MLv,KNo,Mcf.MWei from M,Mcf where M.MNo=Mcf.MNo with check option (5)用于查询和更新麸皮基本信息的视图定义如下 create view FView(麸皮编号,麸皮销售量,麸皮支取量,麸皮警戒低库存,麸皮警戒高库存,麸皮 率,所在仓库编号,当前库存) as select F.FNo,FZXs,FZzq,FJd,FJg,FLv,KNo,Fcf.FWei from F,Fcf where F.FNo=Fcf.FNo with check option (5)用于查询和更新小麦基本信息的视图定义如下 create view WView(小麦编号,小麦累计收购入库,小麦累计存储入库,小麦警戒低库存,小麦警 戒高库存,所在仓库编号,当前库存) as select W.WNo,WZbr,WZcr,WJd,WJg,KNo,Wcf.Wwei from W,Wcf where W.WNo=Wcf.WNo with check option (6)用于查询和更新仓库基本信息的视图定义如下 create view KView(仓库编号,仓库存放种类,仓库最大库存,仓库当前库存) as select * from K with check option (7)用于查询收货方订面所欠的费用基本信息的视图定义如下 create view Sqmf(收货方姓名,订面所欠费用) as select SName,Sqge from Dm,S where Dm.SNo=S.SNo and Sqge>0 with check option (8)用于查询收货方订麸皮所欠的费用基本信息的视图定义如下 create view Sqff(收货方姓名,订麸皮所欠费用) as 19 2007级电子商务1班数据库原理与应用课程设计论文 select SName,Sqge from Dfp,S where Dfp.SNo=S.SNo and Sqge>0 with check option (9)用于查询储户换取面粉所欠的加工费基本信息的视图定义如下 create view Sqjgf(储户姓名,所欠加工费) as select CName,QSqjgf from C,Hq where C.CNo=Hq.CNo and QSqjgf>0 with check option 5.1.4 建立索引 create unique index Ind_GNo on G(GNo) create unique index Ind_SNo on S(SNo) create unique index Ind_CNo on C(CNo) create unique index Ind_MNo on M(MNo) create unique index Ind_WNo on W(WNo) create unique index Ind_FNo on F(FNo) create unique index Ind_KNo on K(KNo) 5.2数据入库 系统包括供货方基本信息管理、收货方基本信息管理、储户基本信息管理、仓库基本信息管理、面粉基本信息管理、麸皮基本信息管理、小麦基本信息管理、欠款查询等八大功能模块,共有15张基本表,牵涉到大量数据的录入,又由于时间限制,采用事先在Excel中录入数据,然后使用SQL Server 2000数据导入/导出向导功能,直接将数据导入到相应的基本表中。当然,附录中也给出了各个基本表插入元组的存储功能,详细内容请参阅附录2。 5.3创建各个功能的存储过程 系统共创建了16个存储过程,具体列表如下: 表5.1 创建存储过程表 编号 存储过程名 定义 作用 P-1 G_insert 详见附录3-01 在G表中插入一个元组 P-2 G_delete 详见附录3-02 删除G表中一个元组 P-3 S_insert 详见附录3-03 在S表中插入一个元组 P-4 S_delete 详见附录3-04 删除S表中一个元组 P-5 C_insert 详见附录3-05 在C表中插入一个元组 20 2007级电子商务1班数据库原理与应用课程设计论文 编号 存储过程名 定义 作用 P-6 C_delete 详见附录3-06 删除C表中一个元组 P-7 G_select 详见附录3-07 在G表中查询匹配GNo的元组 P-8 S_select 详见附录3-08 在S表中查询匹配SNo的元组 P-9 C_select 详见附录3-09 在C表中查询匹配CNo的元组 P-10 M_select 详见附录3-10 在M表中查询匹配MNo的元组 P-11 F_select 详见附录3-11 在F表中查询匹配FNo的元组 P-12 W_select 详见附录3-12 在W表中查询匹配WNo的元组 P-13 K_select 详见附录3-13 在K表中查询匹配KNo的元组 P-14 Sqjgf_select 详见附录3-14 在Hq表中查询匹配CName的元组 P-15 Sqmf_select 详见附录3-15 在Dm表中查询匹配SName的元组 P-16 Sqff_select 详见附录3-16 在Dfp表中查询匹配SName的元组 (其他表的查询、修改、删除与上述表大致相同,这里不再具体列出) 6(系统调试和测试 小型面粉加工企业管理系统的测试具体的测试如下: (1) 查看各个基本表中的数据(借助与视图查询) (a)查看C表的数据: 21 2007级电子商务1班数据库原理与应用课程设计论文 (b)查看M表的数据: (c)其他表的数据的查看操作显示见于附录4-1 (2)检测各个存储过程的功能: (a)验证存储过程G_insert及G_delete的功能: 22 2007级电子商务1班数据库原理与应用课程设计论文 (b) 验证存储过程W_select的功能: (c)验证其它存储过程的功能见于附录4-1 7(实习心得 1. 加深对数据库系统概论相关知识和SQL SERVER相关功能理解方面 以前只是记书本上关于数据库系统的相关功能,以及不同数据库系统(如:SQL SERVER2000与ORACLE)功能的对比,但这些大部分只是处在死记的基础上,没有切身实地的感触,这次实习有让我再次对SQL SERVER 2000相关功能有了更深刻的理解,比如:存储过程。 2. 进一步掌握相关的SQL语句方面 系统开发的过程中牵涉到相当多基本表的建立,视图、索引以及存储过程的设计,这次系统开发让我对SQL语句的操作更熟练了。 3. 熟悉对项目开发的大致过程方面 这次系统开发,从开始的系统需求分析、概念设计、逻辑设计、物理设计,再到数据库实施、系统的测试和调试,都时自立完成,虽然只是做出的系统的内部结构,并没有开发出具体应用的小型面粉加工企业系统,但对于项目(系统)开发的大致流程有了一定的了解,为以后的系统的开发打下了良好的基础。 4. 存在的问题 在系统开发的过程中也遇到了这样那样的问题,比如画E-R图时不能准确的抽象出实体、触发器的使用还不是很熟悉等方面。存在的问题需要我以后不断的去改正与学习,我一定会在这些方面进行加强的。 23 2007级电子商务1班数据库原理与应用课程设计论文 参考文献 [1] 萨师煊 王珊,数据库系统概论(第三版),北京:高教出版社,2006 [2] 李晓喆 张晓辉 李祥胜, SQL Server 2000管理及应用系统开发,北京:人民邮电出版社, 2002 [3] 求是科技,SQL Server 2000数据库开发技术与工程实践,北京:人民邮电出版社,2004.6 [4]肖月振,2004级数据库课程设计论文 24 2007级电子商务1班数据库原理与应用课程设计论文 附录1 数据字典 1. 数据流: 表1.3 数据流 编号 名称 简述 来源 去向 组成 小麦供应商向 验收货品模供货单编号+日期+供货方编号 F1 供货单 供货方 面粉厂提供小麦 块 +供货方姓名+供货类别 收货单编号+收购日期+ 采购部向供货 收购编号+供货方编号+ F2 收货单 验收货品模块 入库模块 方提供的收货单 供货方姓名+收购小麦重量+ 收购价格+收购总金额+经办人 采购部提供的 合格单编号+日期+供货方编号 F3 合格单 验收货品模块 入库模块 小麦验收合格单 +小麦编号+经办人 不合 采购部提供的 不合格单编号+日期+供货方编号 F4 验收货品模块 退货模块 格单 小麦验收不合格单 +小麦编号+经办人 采购部向化验不合 退货单编号+日期+供货方编号 F5 退货单 验收货品模块 退货模块 格的提供的退货单 +供货人方+经办人 库管员开出的 入库单编号+日期+小麦编号 F6 入库单 进库模块 库存台帐 小麦入库单 +小麦重量+经办人 订单编号+日期+收货方编号 收货方向面粉 +收货方姓名+面粉种类 F7 订单 验收货品模块 面粉厂 厂订购面粉 +面粉重量+麸皮重量 +订单类别+经办人 支取单编号+日期+取面编号 +取面人+面粉种类+面粉重量 销售部向储户 F8 支取单 销售员 出库模块 +麸皮重量+共用小麦+总加工费 提供的支取单 +实付加工费+所欠加工费+ 存储人编号+存储人姓名+经办人 销售单编号+日期+收货方编号 +收货人姓名+面粉种类+ 面粉编号+面粉销售单价+ 销售部向收货 F9 销售单 销售员 出库模块 面粉销售重量+麸皮编号+ 方提供的销售单 麸皮销售重量+麸皮销售单价+ 总金额+实付金额 +所欠金额+经办人 库管员向收货 出库单编号+面粉种类+面粉重量 F10 出库单 库管员 出库模块 方提供的出库单 +麸皮重量+经办人 采购部向存储 存储单编号+日期+存储人+小麦编号+F11 存储单 采购员 入库模块 人提供的存储单 小麦重量+经办人 面粉清单编号+日期+面粉种类 面粉 库管员开出的 F13 盘存货品模块 库存台帐 +面粉编号+面粉原始库存+ 清单 面粉入库单 面粉累计入库+面粉累计销售出库 25 2007级电子商务1班数据库原理与应用课程设计论文 编号 名称 简述 来源 去向 组成 麸皮清单编号+日期 +麸皮编号+麸皮原始库存 麸皮 库管员开出的麸皮+麸皮累计入库+麸皮累计 F14 盘存货品模块 库存台帐 清单 入库单 销售出库+麸皮累计支取出库 +麸皮累计出库+麸皮当前库存 +经办人 2处理逻辑: 表1.4 处理逻辑 处理逻 处理逻 简述 输入的数据流 处理 输出的数据流 辑编号 辑名称 F2收货单:收购供 根据供货单进行化验,货商的小麦、F3合化验员对供货方小F1供货单:来源于供货P1.1 化验 确定供货方小麦是否格单:化验合格称麦化验 方的供货单据 合格 重、F4不合格单: 化验不合格退货 F1供货单:化验合称重员对化验合格F3合格单:来源于化验根据化验结果对合格P1.2 称重 格的小麦的称重结的小麦进行称重 员对小麦化验合格 的小麦进行称重 果 根据入库单对采购的检验合格的小麦入F1供货单:源于化验合S1库存台帐:每次P1.3 入库 小麦进行入库,登记库库 格称完重的供货单据 入库都要详细登记 存和流水账 检验不合格的小麦F4不合格单:源于化验根据不合格单退回供F5退货单:经确认P1.4 退货 退回 员对小麦化验不合格 货方的小麦 进行退货 F9销售单:确认收对收货方的订货情F7订单:来源于收货方根据收货方订单销售P2.1 销售 货方的订单后开出况进行开单 发出的采购单据 员开出相应的销售单 的单据 F9销售单:来源于销售对销售产品进行开根据销售单库管员个S1库存台帐:每次P2.2 出库 员根据收货方订单开单 收货方发货 入库都要详细登记 出的单据 F2收货单:收存储 根据供货单进行化验,户小麦F3合格单:化验员对储户小麦F1供货单:来源于储户P3.1 化验 确定储户小麦质量是化验合格称重、F4进行化验 的供货单据 否合格 不合格单:化验不合 格退货 F1供货单:化验合称重员对化验合格F3合格单:来源于化验根据化验结果对合格P3.2 称重 格的小麦的称重结的小麦进行称重 员对小麦化验合格 的小麦进行称重 果 检验合格的小麦入F1供货单:源于化验合根据入库单对采购的S1库存台帐:每次P3.3 入库 库 格称完重的供货单据 小麦进行入库登记 入库都要详细登记 26 2007级电子商务1班数据库原理与应用课程设计论文 处理逻 处理逻 简述 输入的数据流 处理 输出的数据流 辑编号 辑名称 检验不合格的小麦F4不合格单:源于化验根据不合格单退回储F5退货单:经确认P3.4 退货 退回 员对小麦化验不合格 户的小麦 进行退货 F8支取单:销售员对储户的订货情况F7订单:来源于储户发根据储户的订单销售P3.5 产品支取 为储户开出的支取进行开单 出的支取单据 员开出相应的支取单 产品的单据 F8支取单:来源于销售对支取产品进行开根据支取单给储户相S1库存台帐:每次P3.6 出库 员根据储户订单开出单 应的产品 入库都要详细登记 的单据 F12小麦清单:小麦 根据小麦的相关单据盘存的结果、S1库P4.1 小麦盘存 盘存小麦的库存 有关小麦的单据 统计小麦的相关数据 存台帐:每次入库都 要详细登记 F13面粉清单:面粉 根据面粉的相关单据盘存的结果、S1库P4.2 面粉盘存 盘存面粉的库存 有关面粉的单据 统计面粉的相关数据 存台帐:每次入库都 要详细登记 F14麸皮清单:麸皮 根据麸皮的相关单据盘存的结果、S1库P4.3 麸皮盘存 盘存麸皮的库存 有关麸皮的单据 统计麸皮的相关数据 存台帐:每次入库都 要详细登记 3. 数据存储: 表1.5 数据存储 数据存 数据存 简述 数据存储的组成 相关联的处理 储编号 储名称 小麦入库、面粉出库、麸皮小麦、面粉、麸皮的编号+P1.3、P1.4、P2.2、P3.3、P3.4、S1 库存台帐 出库及退货后修改当前库存当前库存+警戒低库存+警戒P3.5、P3.6、P4.1、P4.2、P4.3 量 高库存 入库、出库及退货的流水账类型+日期+单号+产品编号+S2 流水账 P1.4、P2.1、P2.2、P3.4 记录 产品名+单位+数量+单价 27 2007级电子商务1班数据库原理与应用课程设计论文 附录2数据库逻辑结构定义 1. 供货方(G)基本信息表: 表3.3 供货方基本信息表 属性名 别名 数据类型 取值范围 是否是主属性或外健 完整性 GNo 编号 char(10) G00000000--G99999999 是 not null GName 姓名 char(10) 否 not null GAdress 地址 char(50) 否 not null GTel 电话 char(20) 否 not null 2. 收货方(S)基本信息表: 表3.4 收货方基本信息表 属性名 别名 数据类型 取值范围 是否是主属性或外健 完整性 SNo 编号 char(10) S00000000--S99999999 是 not null SName 姓名 char(10) 否 not null SAdress 地址 char(50) 否 not null STel 电话 char(20) 否 not null 3. 储户(C)基本信息表: 表3.5 储户基本信息表 属性名 别名 数据类型 取值范围 是否是主属性或外健 完整性 CNo 编号 char(10) C00000000--C99999999 是 not null CName 姓名 char(10) 否 not null CAdress 地址 char(50) 否 not null CTel 电话 smallint 否 not null 4. 小麦(W)基本信息表: 表3.6 小麦基本信息表 属性名 别名 数据类型 取值范围 是否是主属性或外健 完整性 WNo 编号 char(10) W0000--W9999 是 not null WZbr 累计收购入库 float 否 null WZcr 累积存储入库 float 否 null WJd 警戒低库存 float 否 not null WJg 警戒高库存 float 否 not null 5. 面粉(M)基本信息表: 表3.7 面粉基本信息表 属性名 别名 数据类型 取值范围 是否是主属性或外健 完整性 MNo 编号 char(10) M0000--M9999 是 not null MSort 种类 char(12) 特制一、二、三级 否 not null MWei 重量 float 否 not null MZXs 销售出库 float 否 null 28 2007级电子商务1班数据库原理与应用课程设计论文 属性名 别名 数据类型 取值范围 是否是主属性或外健 完整性 MZzq 累计支取出库 float 否 null MJd 警戒低库存 float 否 not null MJg 警戒高库存 float 否 not null MLv 面粉率 float 在0和1之间 否 not null 6. 麸皮(F)基本信息表: 表3.8 麸皮基本信息表 属性名 别名 数据类型 取值范围 是否是主属性或外健 完整性 FNo 编号 char(10) F0000--F9999 是 not null FZXs 销售出库 float 否 null FZzq 累计支取出库 float 否 null FJd 警戒低库存 float 否 not null FJg 警戒高库存 float 否 not null FLv 麸皮率 float 在0和1之间 否 not null 7. 仓库(K)基本信息表: 表3.9 仓库基本信息表 属性名 别名 数据类型 取值范围 是否是主属性或外健 完整性 KNo 编号 char(10) K00--K99 是 not null KcZl 库存种类 char(10) 小麦,面粉,麸皮 否 not null KcMax 最大库存量 float 否 not null KcDql 当前库存量 float 否 not null 8. 供货(Gh)基本信息表: 表3.10 供货基本信息表 属性名 别名 数据类型 取值范围 是否是主属性或外健 完整性 GhdNo 供货单编号 char(20) Ghd00000000--Ghd99999999 是 not null GNo 供货方编号 char(10) G00000000--G99999999 是 not null WNo 小麦编号 char(20) W0000--W9999 是 not null Mwei 重量 float 否 not null PPrice 价格 float 否 not null PZmon 总金额 float 否 not null 9. 订面(Dm)基本信息表: 表3.11 订面基本信息表 属性名 别名 数据类型 取值范围 是否是主属性或外健 完整性 DdNo 订单编号 char(20) D0000000000--D9999999999 是 not null SNo 收货方编号 char(10) S00000000--S99999999 是 not null MNo 编号 char(10) M0000--M9999 是 not null MXsPrice 单价 float 否 not null MXsWei 重量 float 否 not null XsZmon 总金额 float 否 not null Sfge 实付金额 float 否 not null 29 2007级电子商务1班数据库原理与应用课程设计论文 属性名 别名 数据类型 取值范围 是否是主属性或外健 完整性 Sqge 所欠金额 float 否 null 10. 订麸皮(Dfp)基本信息表: 表3.12 订麸皮基本信息表 属性名 别名 数据类型 取值范围 是否是主属性或外健 完整性 DdNo 订单编号 char(20) D0000000000--D9999999999 是 not null SNo 收货方编号 char(10) S00000000--S99999999 是 not null FNo 编号 char(10) F0000--F9999 是 not null FWei 重量 float 否 not null FXsPrice 单价 float 否 not null XsZmon 总金额 float 否 not null Sfge 实付金额 float 否 not null Sqge 所欠金额 float 否 null 11. 存储(Cc)基本信息表: 表3.13 存储基本信息表 属性名 别名 数据类型 取值范围 是否是主属性或外健 完整性 CNo 储户编号 char(10) C00000000--C99999999 是 not null WNo 小麦编号 char(10) W0000--W9999 是 not null CDate 存储日期 char(10) 否 not null CWwei 存储重量 float 否 not null 12. 换取(Hq)基本信息表: 表3.14 换取基本信息表 属性名 别名 数据类型 取值范围 是否是主属性或外健 完整性 QNo 取面编号 char(20) Q0000000000--Q9999999999 是 not null CNo 储户编号 char(10) C00000000--C99999999 是 not null MNo 面粉编号 char(10) M0000--M9999 是 not null MWei 面粉重量 float 否 not null QGyw 共用小麦 float 否 not null QZjgf 总加工费 float 否 not null QSfjgf 实付加工费 float 否 not null QSqjgf 所欠加工费 float 否 null 13. 小麦存放(Wcf)基本信息表: 表3.15 小麦存放基本信息表 属性名 别名 数据类型 取值范围 是否是主属性或外健 完整性 WNo 小麦编号 char(20) W0000--W9999 是 not null KNo 仓库编号 char(10) K00--K99 是 not null WWei 小麦重量 float 否 not null 30 2007级电子商务1班数据库原理与应用课程设计论文 14.面粉存放(Mcf)基本信息表: 表3.16 面粉存放基本信息表 属性名 别名 数据类型 取值范围 是否是主属性或外健 完整性 MNo 面粉编号 char(10) M0000--M9999 是 not null KNo 仓库编号 char(10) K00--K99 是 not null MWei 面粉重量 float 否 not null 15.麸皮存放(Fcf)基本信息表: 表3.17 麸皮存放基本信息表 属性名 别名 数据类型 取值范围 是否是主属性或外健 完整性 FNo 麸皮编号 char(10) F0000--F9999 是 not null KNo 仓库编号 char(10) K00--K99 是 not null FWei 麸皮重量 float 否 not null 31 2007级电子商务1班数据库原理与应用课程设计论文 附录3 存储过程定义 1.G_insert的定义: create proc G_insert @G_No char(10), @G_Name char(10), @G_Adress char(50), @G_Tel char(20) as insert into G values(@G_No ,@G_Name ,@G_Adress ,@G_Tel) 2.G_delete的定义: create proc G_delete @G_No char(10) as delete from G where GNo=@G_No 3.S_insert的定义: create proc S_insert @S_No char(10), @S_Name char(10), @S_Adress char(50), @S_Tel char(20) as insert into S values(@S_No ,@S_Name ,@S_Adress ,@S_Tel) 4.S_delete的定义: create proc S_delete @S_No char(10) as delete from S where SNo=@S_No 5(C_insert的定义: create proc C_insert 32 2007级电子商务1班数据库原理与应用课程设计论文 @C_No char(10), @C_Name char(10), @C_Adress char(50), @C_Tel char(20) as insert into C values(@C_No ,@C_Name ,@C_Adress ,@C_Tel) 6.C_delete的定义: create proc C_delete @C_No char(10) as delete from C where CNo=@C_No 7.G_select 的定义: create proc G_select @G_No char(10) as select * from G where GNo=@G_No 8.S_select的定义: create proc S_select @S_No char(10) as select * from S where SNo=@S_No 9.C_select的定义: create proc C_select @C_No char(10) as select * from CView where 储户编号=@C_No 10.M_select的定义: create proc M_select @M_No char(10) 33 2007级电子商务1班数据库原理与应用课程设计论文 as select * from MView where 面粉编号=@M_No 11.F_select的定义: create proc F_select @F_No char(10) as select * from FView where 麸皮编号=@F_No 12.W_select的定义: create proc W_select @W_No char(10) as select * from WView where 小麦编号=@W_No 13.K_select 的定义: create proc K_select @K_No char(10) as select * from KView where 仓库编号=@K_No 14(Sqjgf_select的定义 create proc Sqjgf_select as select * from Sqjgf 15(Samf_select的定义: create proc Sqmf_select as select * from Sqmf 17.Sqff_select的定义: create proc Sqff_select as select * from Sqff 34 2007级电子商务1班数据库原理与应用课程设计论文 附录4 数据查看和存储过程功能的验证 1.基本表的数据查看(基于视图查询): (1)查看S表中的数据: (2)查询Sqmf表的数据: (3)查询Sqjgf表的数据: 35 2007级电子商务1班数据库原理与应用课程设计论文 (4)查询F表的数据(同上省略) 2(数据存储过程功能的验证: (1)存储过程C_select功能的验证: (2)存储过程M_select 功能的验证: 36 2007级电子商务1班数据库原理与应用课程设计论文 附录5 所有的SQL运行语句 create database Flourmill_ManagementSystem create table G( GNo char(10) primary key, GName char(10) not null, GAdress char(50) not null, GTel char(20) not null ) create table S( SNo char(10) primary key, SName char(10) not null, SAdress char(50) not null, STel char(20) not null ) create table C( CNo char(10) primary key, CName char(10) not null, CAdress char(50) not null, CTel char(20) not null, ) create table W( WNo char(10) primary key, WZbr float, WZcr float, WJd float not null, WJg float not null, ) create table M( MNo char(10) primary key, MSort char(12) , MWei float not null, MZXs float , MZzq float , MJd float not null, MJg float not null, MLv float not null 37 2007级电子商务1班数据库原理与应用课程设计论文 ) create trigger Ms on M for insert,update as if exists( select * from inserted where MSort!='特制一级' or MSort!='特制二级' or MSort!='特制三级') rollback create trigger Ml on M for insert,update as if exists( select * from inserted where MLv<=0 or MLv>=1) rollback create table F( FNo char(10) primary key, FZXs float , FZzq float , FJd float not null, FJg float not null, FLv float ) create trigger Fl on F for insert,update as if exists( select * from inserted where FLv<=0 or FLv>=1) rollback create table K( KNo char(10) primary key, KcZl char(10), KcMax float not null, KcDql float not null ) 38 2007级电子商务1班数据库原理与应用课程设计论文 create trigger Kz on K for insert,update as if exists( select * from inserted where KcZl!='面粉'or KcZl!='麸皮'or KcZl!='小麦') rollback create table Gh( GhdNo char(20) primary key, GNo char(10) not null, WNo char(10) not null, Mwei float not null, PPrice float not null, PZmon float not null, foreign key (GNo) references G(GNo), foreign key (WNo) references W(WNo) ) create table Dm( DdNo char(20) primary key, SNo char(10) not null, MNo char(10) not null, MXsPrice float not null, MXsWei float not null, XsZmon float not null, Sfge float not null, Sqge float , foreign key (SNo) references S(SNo), foreign key (MNo) references M(MNo) ) create table Dfp( DdNo char(20) primary key, SNo char(10) not null, FNo char(10) not null, FWei float not null, FXsPrice float not null, XsZmon float not null, Sfge float not null, Sqge float , foreign key (SNo) references S(SNo), 39 2007级电子商务1班数据库原理与应用课程设计论文 foreign key (FNo) references F(FNo) ) create table Cc( CNo char(10) , WNo char(10) , CDate char(10) not null, CWwei float not null, primary key(CNo,WNo), foreign key (CNo) references C(CNo), foreign key (WNo) references W(WNo), ) create table Hq( QNo char(20) primary key, CNo char(10) not null, MNo char(10) not null, MWei float not null, QGyw float not null, QZjgf float not null, QSfjgf float not null, QSqjgf float , foreign key(CNo) references C(CNo), foreign key(MNo) references M(MNo) ) create table Wcf( KNo char(10) , WNo char(10) , WWei float not null, primary key(KNo,WNo), foreign key (KNo) references K(KNo), foreign key (WNo) references W(WNo), ) create table Mcf( KNo char(10) , MNo char(10) , MWei float not null, primary key(KNo,MNo), foreign key (KNo) references K(KNo), foreign key (MNo) references M(MNo) ) 40 2007级电子商务1班数据库原理与应用课程设计论文 create table Fcf( KNo char(10) , FNo char(10) , FWei float not null, primary key(KNo,FNo), foreign key (KNo) references K(KNo), foreign key (FNo) references F(FNo) ) create view GView(供货方编号,供货方姓名,供货方地址,供货方电话) as select * from G with check option create view SView(收货方编号,收货方姓名,收货方地址,收货方电话) as select * from S with check option create view CView(储户编号,储户姓名,储户地址,储户电话,存储重量) as select C.CNo,CName,CAdress,CTel,CWwei from C,Cc where C.CNo=Cc.CNo with check option create view MView(面粉编号,面粉种类,面粉销售量,面粉支取量,面粉警戒低库存,面粉警戒高库存, 面粉率,所在仓库编号,当前库存) as select M.MNo,MSort,MZXs,MZzq,MJd,MJg,MLv,KNo,Mcf.MWei from M,Mcf where M.MNo=Mcf.MNo with check option create view FView(麸皮编号,麸皮销售量,麸皮支取量,麸皮警戒低库存,麸皮警戒高库存,麸皮率, 所在仓库编号,当前库存) as select F.FNo,FZXs,FZzq,FJd,FJg,FLv,KNo,Fcf.FWei from F,Fcf where F.FNo=Fcf.FNo with check option 41 2007级电子商务1班数据库原理与应用课程设计论文 create view WView(小麦编号,小麦累计收购入库,小麦累计存储入库,小麦警戒低库存,小麦警戒高库存,所在仓库编号,当前库存) as select W.WNo,WZbr,WZcr,WJd,WJg,KNo,Wcf.Wwei from W,Wcf where W.WNo=Wcf.WNo with check option create view KView(仓库编号,仓库存放种类,仓库最大库存,仓库当前库存) as select * from K with check option create view Sqmf(收货方姓名,订面所欠费用) as select SName,Sqge from Dm,S where Dm.SNo=S.SNo and Sqge>0 with check option create view Sqff(收货方姓名,订麸皮所欠费用) as select SName,Sqge from Dfp,S where Dfp.SNo=S.SNo and Sqge>0 with check option create view Sqjgf(储户姓名,所欠加工费) as select CName,QSqjgf from C,Hq where C.CNo=Hq.CNo and QSqjgf>0 with check option create unique index Ind_GNo on G(GNo) create unique index Ind_SNo on S(SNo) create unique index Ind_CNo on C(CNo) create unique index Ind_MNo on M(MNo) create unique index Ind_WNo on W(WNo) 42 2007级电子商务1班数据库原理与应用课程设计论文 create unique index Ind_FNo on F(FNo) create unique index Ind_KNo on K(KNo) 43
本文档为【小型面粉加工企业信息管理系统】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_036899
暂无简介~
格式:doc
大小:259KB
软件:Word
页数:0
分类:互联网
上传时间:2017-10-14
浏览量:13