数据库实验报告
第一章 系统概述
该物流管理系统是对物流公司业务的统一信息化管理,提供在线服务。订单
模块实现了业务订单的新增,查询,修改,删除等功能。用户可以以会员身份或
者游客身份登陆公司网站进行网上下单,当完成订单之后可根据系统提供的订单
号进行订单状态的查询。公司员工需要对订单审核确认,进行删改查等管理操作。
该系统是 B\S 结构,运用 MVC 模式基于 J2EE 平台开发的,使用 Oracle 数
据库。我负责的是订单模块的需求分析,系统设计,数据库设计,编码和测试。
该 系 统 所 使 用 的 开 发 工 具 有 : MyEclipse,Tomcat, Rational
Rose ,PowerDesigner,PL/SQL 等。
第二章 系统设计
订单模块功能设计
1. 网上下单
本系统是 BS 结构的 WEB 系统,我们通过在线方式新增订单。
2. 订单审核
因为是物流系统,在网上下单之后,顾客需要将货物送至配送点,经过工作
人员审核,才能最后完成一份订单。
3. 订单查询
查询功能支持模糊查询,多条件查询。可以满足顾客及工作人员的需要。
4. 订单管理
管理功能包括:查看明细,修改,删除。
业务逻辑设计
类图如下所示(本部分不是此次作业重点,这里不再过叙述类图的设计):
第三章 数据库设计
概念模型
本系统模块包含的实体有:订单基本表,订单信息表,订单状态表,货
HttpServlet
OrderServlet
doGet()
doPost()
DbConn
getConnection()
Order
OrderID
Order_Dstn
Order_Start
Order_LatestArvlTime
Order_State
Order_Quantity
Order_Weight
TransID
get***()
set***()
OrderDAO
queryOrder()
insertOrder()
updateOrder()
deleteOrder()
物表,交接单,配送点。
1. 各实体 ER 图如下图 3-1 到图 3-6 所示。
图 3-1 订单基本表实体 E-R 图
图 3-2 订单信息表实体 E-R 图
订单基本表
收获配送点
寄件人单位
寄件人姓名
寄件人联系电话 寄件人详细地址
发货配送点
订单编号
寄件人姓名 寄件人单位 寄件人联系电话 寄件人详细地址
订单信息表
订单类别
支付状态
下单日期
保价金额
总计费用
交接单编号
订单编号
货物资费
发货日期
备注
图 3-3 订单状态表实体 E-R 图
图 3-4 货物表实体 E-R 图
图 3-5 交接单实体 E-R 图
订单状态表
状态
更新时间操 作 点 编 号
称
操作员编号
订单编号
货物表
货物名称
货物数量 货物重量
货物编号
订单编号
交接单
交接单编号 运力编号 发货配送点
订单数量
最迟到达时间
配送重量
图 3-6 配送点实体 E-R 图
2. 实体之间关系 E-R 图
配送点
所属省份
所属城市
办公电话
配送点编号
配送点名称
订单基本表
订 单 信 息
表
订 单 状 态
表
交接单配送点
属
于
属
于
属
于
包
含
货物表
3. 使用 PowerDesigner 画的 ER 图
逻辑模型
1.订单基本表
订单基本表
中文名称 字段名 数据类型 是否为空 默认值 备注
订单编号 Order_No NUMBER 系统生成 PK
发货地 Send_Site VARCHAR2(30)
收货地 Rece_Site VARCHAR2(30)
寄件人姓名 SendP_Name VARCHAR2(20)
寄件人单位 SendP_Unit VARCHAR2(40) 可为空
寄件人联系电话 SendP_PhNum NUMBER(20)
寄件人详细地址 SendP_Add VARCHAR2(60)
收件人姓名 ReceP_Name VARCHAR2(20)
收件人单位 ReceP_Unit VARCHAR2(40) 可为空
收件人联系电话 ReceP_PhNum NUMBER(20)
收件人详细地址 ReceP_Add VARCHAR2(60)
2.订单信息表
订单信息表
中文名称 字段名 数据类型 是否为空 默认值 备注
订单编号 Order_No NUMBER 系统生成 PK
下单日期 Order_Date DATE 提取下单时
计算机时间
网上下单的
日期,规定
时限不确认
订单就自动
取消预订单
发货日期 Send_Date DATE 发货地收到
货物确认订
单的日期
订单类别 Order_Sort VARCHAR2(20)
保价金额 supvalue NUMBER 可为空 0
货物资费 Goods_Fee NUMBER
总计费用 Total_Fee NUMBER 保价金额+
货物资费
支付状态 Pay_State VARCHAR2(20)
所属交接单编号 Co_No NUMBER 可为空 生成交接单
之后才有
FK
备注 remark VARCHAR2(10
0)
可为空
3.货物表
货物表(Goods)
中文名称 字段名 数据类型 是否为空 默认值 备注
货物编号 Goods_No NUMBER NOTNUL
L
PK
货物名称 Goods_Name VARCHAR2(20)
货物数量 Goods_Amount NUMBER
货物重量 Goods_Weight NUMBER
订单编号 Order_No NUMBER FK
4.订单状态表
订单状态表(Order_State)
中文名称 字段名 数据类型 是否为空 默认值 备注
记录编号 Orec_No NUMBER NOTNUL
L
PK
操作站编号 All_No NUMBER FK
操作员编号 Emp_ID NUMBER FK
订单编号 Order_No NUMBER FK
状态编号 Orstate_No NUMBER
状态更新时间 Orstate_Time DATE
5.交接单表
交接单表(Conn_Order)
中文名称 字段名 数据类型 是否为空 默认值 备注
交接单编号 Co_No Number PK
已有运力编号 Trans_No Number FK_CO_CP
目的地 All_No_Des NUMBER FK
交接地 All_No_Src NUMBER FK
最迟到达时间 Co_Limtime Date
包含订单数量 Co_Amount Number
配送重量(吨) Co_Weight NUMBER
6.配送点表
配送点表(All_Station)
中文名称 字段名 数据类型 是否为空 默认值 备注
配送点编号 All_No Number(8) NOTNUL
L
PK
配送点名称 All_Name Varchar2
所属省份 All_Provin Varchar2
所属城市 All_City Varchar2
第四章 总结
经过一学期的理论学习,对数据库的理论有了一个深层次的理解。本次大作
业的练习,在理论的基础上更加熟练的掌握了数据库设计的基本方法。对如何开
发一个完整的数据库系统有了整体的认识,本次作业的主要任务放在了概念设计
和逻辑设计以及学习使用 Oracle 数据库,需求分析已经在本次整体系统开发时
完成,物理结构设计实际比较难以实现,我打算放入下一个阶段作为主要研究对
象。在定义实体和属性,确定各个实体间的关系时,并不像学习理论时想象的那
么简单,必须经过详细的需求分析结果,画出好的 ER 图。逻辑设计中如何定义
模式,定义表都需要详尽的分析。但也还有很多问题存在,我会继续深入的学习
数据库知识。