大型数据库课程设计.docx
《大型数据库课程设计.docx》由会员分享,可在线阅读,更多相关《大型数据库课程设计.docx(47页珍藏版)》请在冰豆网上搜索。
大型数据库实践报告
课题:
超市商品管理系统
学院(系):
软件学院
专业:
软件工程
学生:
王帅
指导教师:
宋薇
完成日期2017年05月
目录
第一章绪论 3
1.1开发背景 3
1.2开发意义 4
第二章系统分析 4
2.1系统的需求分析 4
2.2系统开发设计思想 4
2.3系统开发步骤 5
2.4系统的主要技术 5
2.4.1数据库相关技术介绍 5
2.5系统的运行环境和开发平台 5
2.5.1硬件设备及操作系统 5
2.5.2系统开发工具 6
2.5.3开发工具简介 6
第三章系统设计 6
3.1系统流程 6
3.2系统功能模块的划分 7
3.2.1用户模块 7
3.2.3产品管理 7
3.2.4供应商管理 7
3.2.5入库管理 8
3.2.6出货管理 8
3.2.8库存查看 8
3.2.9系统管理 8
3.2.10系统监控 8
3.3数据库设计 8
3.3.1数据库需求分析 8
3.3.2数据库的逻辑设计 9
3.2.4用户设计 10
3.2.5数据库表的设计 14
3.2.6数据表修改 18
3.2.7视图函数的使用 21
3.2.8数据备份与管理 22
3.3.9数据库表结构 26
3.3.10表实现相关代码 29
第四章系统实现 30
4.1运行截图 30
4.1.1登陆界面 30
4.1.2首页展示 31
4.1.3添加商品信息 31
4.1.4查找商品功能 32
4.1.5修改商品功能 32
4.1.6删除商品功能 32
4.1.7查看销售信息 33
4.1.8修改密码 33
4.1.9查看用户信息 33
4.1.10用户购买界面 34
4.1.11用户退货界面 34
4.2代码实现 34
4.2.1myecplise连接数据库 34
4.2.2其余代码展示 36
第五章总结 36
参考文献 36
致谢:
37
第一章绪论
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。
数据库软件oracle11g。
操作系统:
windows10企业版
客户端:
本地机器华硕电脑,有网络接口,内存12g,硬盘在1T。
数据库软件oracle11g。
网络:
服务器和客户端应有网络连通。
配置TCP/IP协议。
2.5.2系统开发工具
电脑配置:
华硕品牌机CPU:
i5-7200U内存:
DDR312G硬盘:
1T
操作系统:
win10
开发环境:
oracle11g,myecplise2017CI
界面工具:
PL/SQL
数据库:
oracle
2.5.3开发工具简介
(1)oracle11g概述
Oracle是一个关系型数据库管理系统,Oracle11g有400多项功能,经过了1500多个小时的测试,开发工作量达到了3.6万人/月,相当于1000名员工连续研发3年。
Oracle11g提供了高性能、伸展性、可用性和安全性,并能更方便地在低成本服务器和存储设备组成的网格上运行,相对过往版本而言,Oracle11g具有了与众不同的特性,数据库重演,计划管理,自动诊断知识库,事务打包服务,自动内存优化等等。
第三章系统设计
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.Size50M reuse
3.Extent management local autoallocate;
3.2.4用户设计
本系统的用户包括四种:
一是最高管理员;二是数据管理人员,该类用户可以进行数据表的创建与修改,数据的修改和删除;三是业务组织人员,该类用户可以进行视图的创建,以及函数、存储过程和触发器等对象的创建和管理;第四种是数据访问人员,该类用户人数比较多,但是只能进行特定的数据表或者视图的查询操作。
请使用最高管理员执行以下操作:
1)实现问题
(1)中的数据库设计;
2)给出区分其他三种用户的实施方案和关键代码;
问题1,已经在上一小题实现,在此不在列出。
问题2的实施方案如下:
最高管理员在此使用system用户,创建一个用户登录表userLogin,表中有四个属性,分别是用户编号Loginid,登陆名LoginName,密码pwdd,权限值authority,权限值可取0,1,2(0代表数据管理员标识,1代表业务组织人员标识,2代表数据访问人员标识)。
并编写存储过程对用户登陆数据库时进行身份判断,并返回相应的权限值。
其次并规定,登陆时候要判断用户名是否存在,不存在返回-2;判断密码是否正确,如果密码不正确返回-1;用户名和权限值作为主键,并创建序列作为登陆id.
1.创建用户登录表:
1.cr