大型数据库实践报告课题:超市商品管理系统学院(系):软件学院专业:软件工程学生:王帅指导教师:宋薇完成日期2017 年05 月目录第一章绪论 (7)1.1 开发背景 (7)1.2 开发意义 (7)第二章系统分析 (8)2.1 系统的需求分析 (8)2.2 系统开发设计思想 (8)2.3系统开发步骤 (9)2.4 系统的主要技术 (9)2.4.1 数据库相关技术介绍 (9)2.5 系统的运行环境和开发平台 (9)2.5.1 硬件设备及操作系统 (10)2.5.2 系统开发工具 (10)2.5.3 开发工具简介 (10)第三章系统设计 (11)3.1系统流程 (11)3.2 系统功能模块的划分 (11)3.2.1用户模块 (12)3.2.3 产品管理 (12)3.2.4供应商管理 (12)3.2.5 入库管理 (12)3.2.6 出货管理 (13)3.2.9 系统管理 (13)3.2.10 系统监控 (13)3.3数据库设计 (13)3.3.1数据库需求分析 (13)3.3.2数据库的逻辑设计 (14)3.2.4用户设计 (15)3.2.5 数据库表的设计 (21)3.2.6 数据表修改 (28)3.2.7 视图函数的使用 (31)3.2.8 数据备份与管理 (33)3.3.9数据库表结构 (38)3.3.10表实现相关代码 (43)第四章系统实现 (45)4.1 运行截图 (45)4.1.1 登陆界面 (45)4.1.2 首页展示 (46)4.1.3 添加商品信息 (46)4.1.4 查找商品功能 (47)4.1.5 修改商品功能 (47)4.1.6 删除商品功能 (47)4.1.7 查看销售信息 (48)4.1.9 查看用户信息 (49)4.1.10 用户购买界面 (49)4.1.11 用户退货界面 (50)4.2 代码实现 (50)4.2.1 myecplise 连接数据库 (50)4.2.2其余代码展示 (53)第五章总结 (53)参考文献 (54)致谢: (56)第一章绪论1.1 开发背景随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。
计算机的发明应用,被视为人类的第三次重大的科学技术革命,是一次飞跃。
过去的革命最高成就就是“用机器制造机器”,是手的延长,而计算机的出现却能做到“用机器控制机器”,是脑的延伸。
计算机是提高生产效率的主要工具及途径。
随着我国改革开放和经济的快速发展,超市行业也迅速壮大,竞争也越来越激烈。
超市商品库在运营过程中会面临大量商品信息的录入,查找,删除,编辑修改等,而人工记录的方法效率低而且错误多,严重影响了商品库的正常管理工作,而这样的情况再不改变,必定要被社会抛弃,在激烈的竞争中走向死亡。
因此需要对商品的入库信息,出库信息等进行管理,及时了解各个环节中信息的变更,有利于管理效率的提高。
本系统就是针对超市库存管理的缺陷,结合了当前超市的发展状况,旨在提高工作人员的工作效率,使其适应现状发展的需要。
在这基础上本系统还考虑到将来对系统的要求而添加了一些灵活可更新的功能。
作为计算机应用的一部分,使用计算机对超市库存信息进行管理,拥有着手工管理所无法比拟的优点:1.可以有效地管理各种商品,减少出入库手续,提高运营速度,提高经济效益;2.大大节省了人力,减少财务支出;3.系统设计全面,操作方式也容易掌握,且不容易出错,为超市仓库的正常正确营运提供保障。
1.2 开发意义超市商品管理系统能确保物畅其流,促使企业经营活动繁荣兴旺。
不论什么企业,都要储备一些物资。
以生产为主的企业,不储备一定的物资,不能维持其连续生产;服务性行业,也要备置某些需用的设备和服务用具;就连一般的事业单位,也要备有某些办公用品等。
因此,各行各业都存在不同程度的库存管理业务。
第二章系统分析2.1 系统的需求分析根据各大中小企业关于超市商品工作流程与实际的需求和特色,本系统在数据库方面需满足以下几个要求:1.提供对商品信息维护的功能2.提供对数据库的维护功能3.提供对不同用户登录的管理功能4.提供对数据库表的维护功能5.提供对商品查询和相关数据分析功能2.2 系统开发设计思想系统采用模块化程序设计方法,既便于系统功能的各种组合和修改,又便于未参与开发的技术维护人员补充、维护;系统应具备数据库维护功能,及时根据用户需求进行数据的添加、删除、修改、备份等操作。
2.3系统开发步骤超市商品管理系统的建立与应用可以划分成总体规划、系统开发和系统运行三个阶段,其中系统开发阶段还可进一步分为系统分析、系统设计和系统实施等工作环节。
上述各个阶段排列成一个严格的线性开发序列,在每个工作阶段均产生完整的技术文档作为下一阶段工作的指导和依据,每一阶段都应对文档进行评审,确信该阶段工作已完成并达到要求后才能进入下一阶段,同时在以后的工作中不能轻易改变前面经过评审的成果。
上述开发方式的主要优点是便于开发工作的组织和管理,并且可大大降低在线学习系统开发的复杂性。
国内外许多系统开发的实例都证明这是一种行之有效的开发方式。
由于时间的原因在本次设计开发中,本文档只介绍数据库方面的设计与维护等功能,对于前台等页面设计将在后续开发中进行实现。
2.4 系统的主要技术2.4.1 数据库相关技术介绍在数据库方面的设计将严格遵照数据库开发步骤,在此运用了大型数据库设计的相关性知识,包括对存储过程,函数,触发器等的使用,还有对数据库全方面的设计,及安全措施等的设计。
其次还涉及表分区,用户管理与权限分配,表空间及数据文件,数据库的导入与导出等,还有视图、索引、序列的建立与使用。
2.5 系统的运行环境和开发平台2.5.1 硬件设备及操作系统服务器:本地机器华硕电脑,有网络接口,内存12g,硬盘在1T。
数据库软件oracle 11g 。
操作系统:windows 10企业版客户端:本地机器华硕电脑,有网络接口,内存12g,硬盘在1T。
数据库软件oracle 11g。
网络:服务器和客户端应有网络连通。
配置TCP/IP协议。
2.5.2 系统开发工具电脑配置:华硕品牌机CPU: i5-7200U 内存:DDR3 12G 硬盘:1T操作系统:win 10开发环境:oracle11g,myecplise 2017 CI界面工具:PL/SQL数据库:oracle2.5.3 开发工具简介(1) oracle 11g概述Oracle是一个关系型数据库管理系统,Oracle 11g有400多项功能,经过了1500多个小时的测试,开发工作量达到了3.6万人/月,相当于1000名员工连续研发3年。
Oracle 11g提供了高性能、伸展性、可用性和安全性,并能更方便地在低成本服务器和存储设备组成的网格上运行,相对过往版本而言,Oracle 11g具有了与众不同的特性,数据库重演,计划管理,自动诊断知识库,事务打包服务,自动内存优化等等。
第三章系统设计3.1系统流程与本系统相关的角色包括:本系统的用户包括四种:一是最高管理员;二是数据管理人员,该类用户可以进行数据表的创建与修改,数据的修改和删除;三是业务组织人员,该类用户可以进行视图的创建,以及函数、存储过程和触发器等对象的创建和管理;第四种是数据访问人员,该类用户人数比较多,但是只能进行特定的数据表或者视图的查询操作。
3.2 系统功能模块的划分软件所实现的功能强弱是衡量一个软件的最根本的标准。
经过对系统的需求分析和实际应用需求,确定了本子系统的功能模块如图3.2所示:图3.2 系统功能模块图3.2.1用户模块用户包括为用户分配账号,修改密码,用户安全退出功能。
此模块只能由系统管理员统一配置,用户不能自行注册,用户密码要进行加密处理。
3.2.3 产品管理对需要入库的产品进行增删改查操作。
3.2.4供应商管理对供应商进行增删改查操作3.2.5 入库管理先由最高管理人员对数据管理人员进行授权,然后该类用户对商品信息进行入库操作,即对商品信息表进行修改,或增加数据,或删除数据,可以建立表或删除表。
3.2.6 出货管理此操作由数据管理人员进行操作,包括对商品信息进行出库操作,即对商品出库信息表进行修改,或增加数据,或删除数据,可以建立表或删除表。
3.2.8 库存查看可以查看产品的库存状况,库存数量。
3.2.9 系统管理进行用户角色权限分配,使不同的角色拥有不同的权限从而有效的使用系统进行工作。
3.2.10 系统监控记录登陆用户的登陆时间、推出时间及在系统内进行的所有操作。
3.3数据库设计3.3.1数据库需求分析数据库的设计在一个系统中的作用十分重要,数据库建立的是否完善直接影响到你系统的实现。
数据库的设计既要满足用户的需求又要尽最大可能的降低数据的冗余,尽可能降低数据间的依赖,将他们分离。
在各种信息的提供,保存,更新和查询,这就要求数据库结构能充分满足各种信息的输出和输入,收集基本数据,数据结构,以及数据处理的流程,组成一份详尽的数据字典,为后面的具体设计打下基础.3.3.2数据库的逻辑设计逻辑结构设计的原则如下:(1)尽可能的减少数据冗余和重复。
(2)结构设计与操作设计相结合。
(3)数据结构具有相对的稳定性。
其实数据库还有要求如下:为了方便数据文件的扩展和迁移,本项目实施要求使用独立的数据文件,请给出具体的实施方案和关键代码。
其中,数据文件放在服务器的E盘,文件名称为“自己的姓名.dbf”,文件初始大小为50M,本地化管理,自动扩展。
完整代码如下(使用system账户进行创建表空间和数据文件)1.Create tablespace bigshuai datafile‘E:\oracle\王帅.dbf’2.Size 50M reuse3.Extent management local autoallocate;3.2.4用户设计本系统的用户包括四种:一是最高管理员;二是数据管理人员,该类用户可以进行数据表的创建与修改,数据的修改和删除;三是业务组织人员,该类用户可以进行视图的创建,以及函数、存储过程和触发器等对象的创建和管理;第四种是数据访问人员,该类用户人数比较多,但是只能进行特定的数据表或者视图的查询操作。
请使用最高管理员执行以下操作:1)实现问题(1)中的数据库设计;2)给出区分其他三种用户的实施方案和关键代码;问题1,已经在上一小题实现,在此不在列出。
问题2的实施方案如下:最高管理员在此使用system用户,创建一个用户登录表userLogin,表中有四个属性,分别是用户编号Loginid,登陆名LoginName,密码pwdd,权限值authority,权限值可取0,1,2(0代表数据管理员标识,1代表业务组织人员标识,2代表数据访问人员标识)。