数据库课程设计完整版.docx
- 文档编号:30717171
- 上传时间:2023-08-19
- 格式:DOCX
- 页数:22
- 大小:916.39KB
数据库课程设计完整版.docx
《数据库课程设计完整版.docx》由会员分享,可在线阅读,更多相关《数据库课程设计完整版.docx(22页珍藏版)》请在冰豆网上搜索。
数据库课程设计完整版
数据库课程设计(论文)
题目:
超市信息管理系统
院(系):
专业班级:
学号:
学生姓名:
指导教师:
教师职称:
起止时间:
第1章系统概述
1.1社会背景
随着现代科学技术的迅猛发展,计算机技术已经渗透到各个领域,成为各行业必不可少的工具,特别是Internet技术的推广和信息高速公路的建立,使IT产业在市场竞争中越发显示出其独特的优势,步入信息化时代,有巨大的数据信息等待加工处理和传输,这使得对书数据库的进一步开发和利用显得尤为迫切。
作为国内市场的一些中小型超市,它们在信息化过程中的步伐要落后于大中型超市,而对于这些企业的资源管理,信息的存储和处理也显得迫切需要,要适应市场竞争,就需要有高效的处理方式和管理方法,因此加快超市的信息化进程是必可少的。
在开发过程中,我们针对当前各超市管理的特点和技术人员的实际水平,采用基于Windows图形用户界面这一易学易用的操作环境,在系统设计过程中,我们尽量采用易懂易读的人机界面,使用户可以在短期内完全掌握。
我们又始终发系统的正确性放在首位,力求数据的完整和处理的正确性。
在此基础上优化程序代码,加速系统运行和减少对系统资源的占用。
1.2超市背景
在我国超市形成在20世纪90年代初期,现在已经成为我国零售业的一种重要形态,为国民经济的发展发挥了重要的作用。
随着超市高速的发展,其经营管理也变得愈加复杂,早期的售货员站柜台的形式早已不能满足现有销售也的发展,这样就迫切地需要引入新的管理技术。
超市形态具有种种优点,但在目前状况下,它仍存在零售业企业所共有的落后的一面,如:
不能有效地管理每种商品,收款结算速度慢,容易出现营业差错,不宜进行商品调价,盘点效率低等,而且在超市日常管理中,商品的进、销、存等决策以经验为主,缺乏实时分析功能,管理人员对及时传递资料的要求始终得不到满足。
苏辙超市形态的高速发展,其经营管理也变得愈加复杂,日常所需要处理的数据量也逐渐增大,商业运转的中间环节也越来越多,原始的人工管理已无法应对这复杂的市场。
为此,在选题过程中,我选择了超市管理系统设计题目,依靠现代化的计算机信息处理技术来管理超市,从而节省了大量的人力、物力,改善了员工的工作条件,减轻了劳动强度,并且能够快速反映出商品的进、销、存等状况和各种反馈信息分析,使管理人员快速对市场的变化做出相应的决策,加快超市经营管理效率。
1.3系统开发目的
本系统的设计主要是为了提高超市的运作效率,通过全面的信息采集和处理,辅助提高超市的决策水平。
使用本系统,可以迅速提升超市的管理水平,为降低经营成本,提高效益,增强超市扩张力,提供有效的技术保障。
1.4开发工具
数据库:
AdaptiveServerAnywhere9数据库
开发工具:
PowerBuilder10.0程序开发工具
第2章系统分析
2.1系统可行性研究
2.1.1技术可行性研究
在IT行业中从业的工作人员一般都要求掌握计算机技术,具有一定的软硬件基础,会使用各种管理软件,熟悉IT产品。
因为,有的超市对员工的素质要求比较高,从管理层到下面的销售人员,都要求具有一定的计算机基础,所以在新系统投入使用时,只要对员工进行少量的培训,系统的功能和使用方法就基本上能够是系统顺利运行。
2.1.2经济可行性研究
因为通过网络传递销售信息可以不受距离的限制,因此可以借阅许多的人力和物力,方便管理,由此可以减少不必要的开支,同时该系统可以提高超市的销售效率,即提高了超市的经济效益,所以从经济上完全是可行的。
(1)超市有能力承担系统开发费用
开发新系统的工作是一项间距复杂的工作,它的投资主要是人力和物力的投资。
对于本系统的开发者来说,其主要投资还是在人力和物力两个方面。
如果是企业自己安排人手开发系统的话,其主要的投资还是在人力资源上,从系统的业务需求调查到系统的分析编码制作都是需要巨大的人力投入的。
软件企业作为一个简短的高科技产业,其员工要求都比一般企业的要求要高,而且对系统开发及软件产业了解比较多,所以在自我开发管理系统的过程中,企业自己比较容易安排人手,这样就可以为企业借阅大部分的额外开支。
同时软件就其它产品来说,属于高端行业,无论是产品的价格还是质量都比较高,而经营产品的经销商或者是商家都要求有雄厚的资金支持。
所以,在系统的开发过程中,企业完全有能力承担开发费用。
(2)新系统将为企业带来经济效益
管理系统是一个信息化、智能化和先进管理理念的集合体。
而管理是一个动态过程,在其运行过程中要采取多项措施。
所以在管理中获得经济效益是一个综合效益,要对它进行直接定量的分析是比较困难的。
一般新系统带来的经济效益是简介的,其最主要的表现就是减少了企业管理费用和人力开支。
而其它一些繁琐的食物都通过新系统来加以分析解决,不仅节省了大量的时间,还为企业的各项决策提供了宝贵的资料,为企业带来巨大的经济效益。
2.1.3操作可行性研究
本系统采用基于Windows的图形用户界面,而该系统是大家熟悉的操作系统,对于那些有一般的计算机知识的人员就可以轻松上手。
而整个超市管理系统采用最友好的交互界面,简介明了,不需要对数据库进行深入的了解。
由此,该系统的操作是可行的,有必要开发该系统。
综合以上三方面,该系统具有很高的开发可行性,无论是从技术上或者经济上还是操作上。
2.2系统需求分析
该管理软件将为用户提供账号管理工具,以便用户对账号进行管理,具体为添加用户、删除用户、修改用户密码;提供员工信息查询、修改及会员信息注册或查询、修改,此外还有特价商品的处理信息。
整个系统的功能结构如图2-1所示:
图2-1系统功能结构图
第3章系统设计
3.1系统概要设计
3.1.1设计思想
(1)系统分成几个相对独立的模块,但这些模块都进行集中式管理。
(2)分层的模块化程序设计思想,整个系统采用模块化结构设计。
作为应用程序有较强的可操作性和扩展性。
(3)合理的数据流设计,在应用系统设计中,相对独立的模块间以数据流相互连接,使各模块间的耦合性较低,方便系统运行,提高系统安全性。
3.1.2设计原则
为了使本系统功能齐全完备,操作简便,最大限度的提高软件的质量,从而满足用户的实际需要,在设计开发过程中遵循了如下原则:
(1)合法性原则:
依据产品核算系统的工作规定以及要求,参照核算实际的工作情况,进行诸如产品进货、销售等工作。
(2)实用性原则:
适合产品信息管理工作的实际需求,并能够处理一些特殊情况的要求,此外,尽可能预留空间,以便扩充功能。
(3)准确性原则:
对输入的相关资料建立检错机制,及时报错,使用户能够及时准确的输入合法资料(如:
类型匹配,长度不超限等)。
(3)易操作原则:
要求设计的系统功能齐全,界面友好,操作方便,必要的地方进行提示。
(5)源程序可读性原则:
为了便于其他设计,维护人员读懂代码或以后的代码修改,软件升级维护,即可能做好代码注释工作。
(6)优化原则:
为了达到优化的目的,合理的运用窗口,菜单,对象等的继承,自定义用户对象,事件,函数,减少不必要的重复性代码,使程序简介明了,也方便了将来的维护。
(7)安全性原则:
可以为该系统的用户设置用户权限。
3.1.3功能需求
本系统采用自定向下方法开发,其功能模块主要有如下几个部分:
会员管理模块、员工管理模块和业务统计分析模块、商品管理模块。
具体的功能描述如下:
会员管理:
其功能是对会员信息进行管理,实现会员的注册、信息查询更新以及积分查询等功能。
员工管理:
其功能是对员工的信息进行管理,包括查询、更新等。
业务统计模块管理:
其功能是查询超市的营业成交统计量。
商品管理:
其功能是对超市的特价促销商品进行查询、更新等。
3.1.4性能需求
(1)时间特性
该管理系统软件从启动到进入系统登录界面的时间正常情况下应少于5秒,录入并更新数据的时间正常情况下少于2秒。
(2)适用性
该管理系统软件适用于Windows2000/xp及以上操作系统。
3.1.5运行需求
(1)用户界面
本系统采用PowerBuilder10.0程序开发工具设计,采用的是基于Windows的窗口界面。
(2)硬件接口
运行本系统的硬件基本要求如下:
CPU:
IntelP3及以上;
内存:
256MB及以上;
硬盘:
10GB及以上。
(3)软件接口
数据库服务器采用Powerbuilder10.0自带的数据库ASA(AdaptiveServerAnywhere9)数据库。
3.2系统详细设计
3.2.1系统功能结构图
系统总体结构如图3-1所示:
图3-1超市管理系统功能结构图
3.2.2系统功能设计
系统功能设计是使整个系统能基本实现超市会员、员工等的信息管理功能,能让超市管理者更直观的了解超市的经营状况,以做出相应的经营决策。
管理信息系统(MIS)就是要对这些资源建立正确的数据库,并进行信息的收集、传送、存储、编制成各种凭证、报表、台帐、图形等信息,同时对这些信息进行维护,通过实测超市的各种运行情况,并利用过去的历史数据预测未来的发展,从超市全局的角度出发进行决策,利用信息控制超市的行为,附注超市完成其目标。
本系统共包括以下几大模块,分别是会员管理模块,员工信息管理模块,业务管理模块,商品管理模块。
每个模块的功能如下:
1.会员管理模块功能:
(1)实现会员信息的查询;
(2)实现会员积分的查询;
(3)实现会员信息的更注册更新,包括增加、删除、修改功能。
2.员工信息管理模块功能:
(1)实现员工信息的查询;
(2)实现员工信息的不同方式的查询、修改等功能。
3.业务管理模块功能:
(1)实现营业成交记录的查询、统计和分析。
4.商品管理模块功能:
(1)实现特价商品信息的查询;
3.2.3系统数据库设计
1.数据库表设计
数据模型利用AdaptiveServerAnywhere9数据库进行数据库的详细设计,其基本表的设计如下:
(1)职工清单(Employee)
中文字段名
英文字段名
字段类型
长度
主键/外键
字段值约束
职工编号
Employied
char
10
P
NOTNULL
姓名
name
nvarchar
8
NOTNULL
性别
sex
nchar
2
NOTNULL
籍贯
home
nvarchar
4
NULL
学历
diploma
nvarchar
4
NOTNULL
类别
kind
nvarchar
10
NULL
工资
salary
int
4
NULL
联系电话
phone
varchar
12
NULL
联系地址
address
nvarchar
50
NULL
身份证号
idCard
varchar
18
NOTNULL
聘用日期
beginDate
datetime
8
NULL
编制日期
enactTime
datetime
8
NULL
备注
others
ntext
50
NULL
说明:
此表存放员工信息。
(2)会员清单(Customermessage)
中文字段名
英文字段名
字段类型
长度
主键/外键
字段值约束
会员号
Vip
char
10
P/F
NOTNULL
联系方式
Telephone
Varchar
16
NOTNULL
注册账号
Pcumber
Varchar
16
NOTNULL
密码
Record
Float
NOTNULL
会员名称
Name
char
8
NOTNULL
说明:
此表存放会员信息。
(3)特价商品清单(Good)
中文字段名
英文字段名
字段类型
长度
主键/外键
字段值约束
商品名称
Special
char
10
NOTNULL
原价
Original
char
10
NOTNULL
现价
Nowprice
Char
10
NOTNULL
所需积分
Integral
Char
10
NOENULL
截止日期
Deadline
Date
NOTNULL
受理员工编号
Employied
Char
10
P/F
NOTNULL
折扣
Discount
Char
6
NULL
说明:
此表存放特价商品信息。
(4)会员折扣清单(Good)
中文字段名
英文字段名
字段类型
长度
主键/外键
字段值约束
会员号
Vip
char
10
P/F
NOTNULL
折扣
Discount
char
6
NOTNULL
会员积分
Integral
Char
10
NOTNULL
价格
Prizes
Char
10
NOENULL
受理员工编号
Employied
Char
10
NOTNULL
说明:
此表存放会员折扣信息。
(5)员工账户清单(Good)
中文字段名
英文字段名
字段类型
长度
主键/外键
字段值约束
员工编号
Employied
char
10
P/F
NOTNULL
账户
Account
Varchar
10
NOTNULL
密码
Password
Varchar
10
NOTNULL
注册时间
Madetime
Date
NOTNULL
职位
Type
Char
32
说明:
此表存放员工账户信息。
3.2.4模块功能设计
1.连接数据库代码
在应用主窗口的open事件里编写连接数据库的代码如下:
SQLCA.DBMS="ODBC"
SQLCA.dbparm="Connectstring='DSN=www;UID=dba;PWD=sql'"
Connect;
IFSQLCA.SQLCode<>0THEN
MessageBox("连接失败","不能连接数据库")
RETURN
ENDIF
open(w_dl)
2.系统登录模块
功能:
本模块的主要功能是对用户身份进行验证,只有系统的合法用户才能进入系统。
其窗体如图3-2所示:
图3-2系统登录界面
在进行系统登录过程中,登录模块将调用数据库设置的账号和密码,对登陆界面输入的账号和密码进行验证,只有输入了正确的账号和密码后,系统登录才会成功。
当用户输入了错误的或者是不存在的账户和密码时,或者用户名和密码无输入时,系统会给出错信息提示,指明登录过程中的错误输入或者错误操作,以便用户进行正确的登录。
输入项、输出项:
输入项为账号和密码。
账号和密码均为字符串,长度各为6个字符,密码回显字符是“*”。
“确定”按钮主要用于验证用户的身份,其代码设计如下:
Stringuserid
Stringuserpsw
//定义局部变量,userid是系统用户名,userpsw是系统密码
Stringuid
Stringupsd
uid="dba"
upsd="sql"
//获取
userid=Trim(sle_1.text)
userpsw=Trim(sle_2.text)
IFuserid=uidANDuserpsw=upsd THEN
MessageBox("恭喜!
","密码正确,已批准登录系统!
")
open(w_manue)
ELSE
MessageBox("Error!
","用户名或密码错误!
登录界面将立即关闭.",Stopsign!
)
Close(PARENT)
ENDIF
登录成功后,将显示系统主窗口界面,如图3-3所示:
图3-3系统主窗口界面
3.窗口管理模块
功能:
该模块主要是实现会员注册以及退出当前窗口功能。
会员注册子窗口如图3-4所示:
注册信息填写完毕后,点击“注册”按钮,将显示注册成功提示框,点击“确定”,会链接到特价商品信息窗口,供会员进行查询。
图3-4会员注册界面
“注册”按钮核心代码设计如下:
stringusername,password
username=sle_1.text
password=sle_2.text
ifsle_1.text=""orsle_2.text=""orsle_3.text=""
orsle_2.text<>sle_3.textthen
messagebox("错误!
","用户名或密码不能为空,并且新密码两次输入必须相同!
",exclamation!
ok!
2)
else
insertinto"manage"("name","psd")values(:
username,:
password);
UPDATE"manage"
SET"psd"=:
sle_2.text,"name"=:
sle_1.text;
messagebox("提示!
","注册成功!
",Information!
ok!
2)
endif
open(w_view)
4.员工信息管理模块
员工信息查询:
主要实现员工的资料、账户的查询功能。
查询员工的账户信息界面如图3-5所示:
图3-5账户信息查询界面
输入项、输出项:
该模块的输入项为员工的编号,输出项为员工的编号、账号和职位类别。
“查询”按钮的核心代码设计如下:
Stringls_1
ls_1=Trim(sle_1.text)
Ifls_1=""THEN
MessageBox("数据不全!
","请输完整的数据!
")
ELSE
dw_1.Retrieve(ls_1)
ENDIF
sle_1.setFocus()
5.会员管理模块
该模块主要实现会员的积分查询和会员信息更新功能。
会员积分查询输入项为会员编号,输出项为会员编号和积分值。
会员信息更新界面如图3-6所示:
图3-6会员信息更新界面
该窗口主要用于实现会员信息的添加、删除、修改、更新功能。
在主窗口的open事件中编写用于连接数据窗口的代码:
dw_1.SetTransObject(SQLCA)
各按钮的代码设计如下:
(1)“append”按钮:
IFKeyDown(keyenter!
)THEN
THIS.triggerevent(clicked!
)
ENDIF
(2)“delete”按钮:
IFKeyDown(keyenter!
)THEN
THIS.Eventclicked()
ENDIF
(3)“insert”按钮:
Longrow
row=dw_1.InsertRow(dw_1.getrow())
dw_1.SetRow(row)
dw_1.ScrollToRow(row)
dw_1.SetFocus()
(4)“retrieve”
IFKeyDown(keyenter!
)THEN
THIS.triggerevent(clicked!
)
ENDIF
(5)“return”
IFKeyDown(keyenter!
)THEN
THIS.triggerevent(clicked!
)
ENDIF
(6)“update”
IFKeyDown(keyenter!
)THEN
THIS.triggerevent(clicked!
)
ENDIF
6.业务管理模块
该模块主要提供营业成交额分析统计图以及相关受理业务人员信息的查询。
特价商品统计图分析如图3-7所示:
图3-7特价商品销售统计图
主窗口的open事件核心代码设计如下:
gr_1.Elevation=30
gr_1.Rotation=45
gr_1.Spacing=150
gr_1.AddSeries("一季度")
gr_1.AddSeries("二季度")
gr_1.AddSeries("三季度")
gr_1.AddSeries("四季度")
gr_1.AddData(1,12,"香蕉")
gr_1.AddData(1,27,"葡萄")
gr_1.AddData(4,3,2)
gr_1.AddData(2,17,1)
gr_1.AddData(3,27,1)
gr_1.AddData(1,10,2)
gr_1.AddData(2,20,2)
gr_1.AddData(3,30,2)
gr_1.AddData(1,15,3)
gr_1.AddData(2,25,3)
gr_1.AddData(3,35,3)
gr_1.AddData(1,12,4)
gr_1.AddData(2,22,4)
gr_1.AddData(3,32,4)
7.商品信息管理模块
该模块主要实现特价商品的信息查询以及商品图片的预览功能。
商品查询界面如图3-8所示:
图3-8特价商品查询界面
该窗口可以实现对特价商品的查询、修改、删除、更新功能。
其中各个按钮控件是由数据窗口来实现其功能的。
本模块还实现了特价商品图片预览功能,如图3-9所示:
图3-9特价商品图片预览界面
该窗口的设计中添加了一个列表控件和一个隐藏的数据窗口控件,其中主窗口的open事件中核心代码设计如下:
dw_1.SetTransObject(sqlca)
dw_1.Retrieve()
Longi
Stringid
Intlm
lv_1.addcolumn("类型",center!
500)
FORi=1TOdw_1.RowCount()
id=dw_1.GetItemString(i,1)
lm=lv_1.Additem(id,i)
NEXT
除了以上几大模块功能外,系统还有帮助界面等,用于提供该系统的设计说明信息等。
第4章系统测试
完成对流程的编码后最重要的事情就是对系统的测试工作了,测试在系统设计阶段有两个时期,通常在编写每个模块后做单元测试,另一个时期是对系统的综合测试。
4.1模块测试
在模块测试时我们主要从以下几个方面考虑:
1.模块接口;
2.局部数据结构;
3.重要执行通道;
4.出错处理通道;
5.影响上述方面的边界条件。
测试时进行代码审查,从数据类型,变量声明,数据结构进行审查,然后进行功能测试,从输入一些简单的数据开始执行一遍,观测运行期间变量的变化,运行中值的变化范围。
改变测试方案来变换另一个角度进行测试,发现错误并记录,修改代码,测试条件使程序通过多层分支,判别运行结果从而完成模块测试。
4.2整体测试
总体测试是组装软件的系统技术,本系统测试采用渐增集成测试,即测试单一模块,将测试完的模块加入系统中,进行一次系统测试,依次类推将所有模块加入系统中,在具体测试时,采用自顶向下的结合方式,从主控模块开始,沿各控制层向下移动,逐渐把所有模块结合了。
在测试过程中使用到调试技术:
1.采用debug调试语句,跟踪数据;
2.嵌入打印语句,输出中间结果;
3.设置断点,观察程序在断点附近的状况。
评估运行的可靠性问题:
1.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 课程设计 完整版