电脑销售系统毕业论文SQL毕业论文.docx
《电脑销售系统毕业论文SQL毕业论文.docx》由会员分享,可在线阅读,更多相关《电脑销售系统毕业论文SQL毕业论文.docx(18页珍藏版)》请在冰豆网上搜索。
![电脑销售系统毕业论文SQL毕业论文.docx](https://file1.bdocx.com/fileroot1/2023-2/21/f91d3c8b-ac39-4c53-8ded-c98ce354fd49/f91d3c8b-ac39-4c53-8ded-c98ce354fd491.gif)
电脑销售系统毕业论文SQL毕业论文
《数据库系统》
课程设计说明书
设计题目:
_电脑销售系统课程设计__
目 录
1引言1
1.1课程设计选题1
1.2课程设计的目的1
1.3本选题的设计背景1
2系统分析与设计1
2.1系统的需求分析1
2.1.1功能需求1
2.1.2性能需求2
2.1.3操作要求2
2.1.4数据流图表示2
2.2系统的开发运行环境3
2.3系统总体设计3
3数据库设计3
3.1数据库概念结构3
3.1.1局部E-R图4
3.1.2实体间联系6
3.2数据库逻辑结构6
3.2.1关系模型6
3.2.2关系模型的优化7
3.2.3视图的设计7
3.3数据库的实现8
3.3.1表8
3.3.2视图9
3.3.3安全性设计9
3.3.4完整性设计10
3.3.5索引设计10
3.3.6整个库的存储方式12
4主要模块的详细设计与实现12
4.1登录模块12
4.2销售员身份模块13
4.3人事部身份模块14
4.4管理员身份模块16
4.5密码修改模块17
结 论18
参考文献19
1引言
1.1课程设计选题
《电脑销售系统》
1.2课程设计的目的
通过数据库系统课程设计,熟悉了SQLSERVER数据库管理系统的结构与组成;掌握了SQLSERVER数据库管理系统的应用技术和的使用;应用SQLSERVER2008开发工具实践了《电脑销售系统》的数据库应用系统的设计方法、开发过程和SQLSERVER数据库的管理与维护。
最终达到掌握数据库管理系统的使用和开发,提高分析问题、解决问题和实践应用能力。
1.3本选题的设计背景
现在笔记本电脑越来越普及,许多大学生、白领等都拥有笔记本或购买笔记本的打算。
所以,笔记本的市场需求量是很大的。
而对于一个电脑的大商场,会有多家电脑品牌的若干机型。
售价、库存、进货、销售、员工和客户等这些信息量庞大而繁琐。
如果单靠人工记录和管理这些信息,不仅工作量大,而且效率低下。
利用DBMS设计平台,设计出符合商场实际情况的电脑销售数据库系统,能够有效、快速、简单、准确的管理这些信息。
2系统分析与设计
2.1系统的需求分析
需求分析是数据库的起点,为以后的具体设计做准备。
需求分析的结果是否准确地反映了用户的实际要求,将直接影响到后面各个阶段的设计,并影响到设计结果是否合理和实用。
经验证明,由于设计要求的不正确或误解,知道系统测试阶段才能发现很多错误,则纠正起来要付出很大的代价。
因此,必须高度重视系统的需求分析。
2.1.1功能需求
作为一个电脑商场的电脑销售系统,必须对商场的库存、销售情况作出具体的统计,库房管理人员能够对仓库里的库存信息进行修改更新,销售人员能够查询电脑的库存、进价、售价,能够增添销售信息。
2.1.2性能需求
对库房的管理和对电脑信息的查询,不同的角色应该有不同的权限,数据库系统要设置不同的用户和角色并给予不同的权限。
数据库系统的数据要有一定的恢复功能,这可以通过日志文件来实现。
2.1.3操作要求
对于数据库中的数据信息,要有一定的约束,各数据表中的关联数据要相对一致,防止混乱不清的数据出现。
信息修改要及时、准确。
2.1.4数据流图表示
⑴当仓库新进入一批货物或出库一些货物时
⑵当售出电脑时,售货员需要填写销售信息并添加客户信息
2.2系统的开发运行环境
本系统开发平台:
VB6.0+sqlserver2008
本系统采用架构:
主从式结构的数据库系统
本系统运行环境:
windowsxp或以上版本,安装有sqlsever
2.3系统总体设计
3数据库设计
3.1数据库概念结构
概念结构设计是把用户的信息要求统一到一个整体逻辑结构中,此结构能够表达用户的要求,是一个独立于任何DBMS软件和硬件的概念模型。
数据库概念结构设计是在需求分析的基础上,设计出能够满足用户需求的各种实体以及它们之间的关系,为后面的逻辑结构设计打下基础。
概念结构设计就是将需求分析得到的用户需求抽象为信息结构,即概念模型。
3.1.1局部E-R图
⑴部门:
由部门号、部门名、负责人、备注组成
⑵仓库:
由仓库号、负责人、备注组成
⑶客户:
由客户号、姓名、年龄、性别、住址、联系方式组成
⑷员工:
由员工号、姓名、性别、年龄、职位、所属部门、家庭地址、联系电话组成
⑸电脑:
由序列号、品牌、型号、进价、售价、库存、备注组成
3.1.2实体间联系
员工属于部门,有员工管理仓库库,电脑存放于仓库,销售需要联系客户、员工、
电脑三个实体,同时销售还需要包含销售记录号、销售额、日期的属性。
3.2数据库逻辑结构
3.2.1关系模型
根据系统的概念结构分析,得出其关系模式如下:
部门(部门号,部门名,负责人,备注)
仓库(仓库号,负责人,备注)
员工(员工号,姓名,性别,年龄,职位,所属部门,家庭住址,联系电话)
客户(客户号,姓名,性别,年龄,住址,联系方式)
电脑(序列号,品牌,型号,进价,售价,库存,备注)
存放(序列号,仓库号)
属于(员工号,部门号)
管理(仓库号,员工号)
销售(销售记录号,员工号,客户号,序列号,销售额,日期)
3.2.2关系模型的优化
由于上述关系模式有些有相同的码,可以进行合并,所以要进行优化,优化后结果如下:
部门(部门号,部门名,负责人,备注)
仓库(仓库号,员工号,负责人,备注)
员工(员工号,部门号,姓名,性别,年龄,职位,所属部门,家庭住址,联系电话)
客户(客户号,姓名,性别,年龄,住址,联系方式)
电脑(序列号,仓库号,品牌,型号,进价,售价,库存,备注)
销售(销售记录号,员工号,客户号,序列号,销售额,日期)
其中,部门号、仓库号、员工号、客户号、序列号分别为五个实体的主码,销售记录号是销售联系的主码。
这些主码在表中具有唯一性,不可为空。
部门的备注、仓库的备注有则写之,无则不写。
对于客户的信息,客户号、姓名和联系方式不可少,以方便售后。
但是性别、年龄和住址根据用户要求可为空。
3.2.3视图的设计
角色
权限
销售员
Ø查询商品的情况
Ø查询商品存储情况
Ø对销售数据进行查询更新统计
采购员
Ø对供应商数据进行查询更新
Ø对采购数据进行查询更新统计
顾客
Ø查询商品基本信息
管理员
Ø维护(插入,更新和删除)营业员,采购员数据
Ø查询所有的数据
视图并不是数据库中真是存在的表,是对数据库中基本表的查询、筛选所得,视图的建立是为了方便地满足不同用户,为不同用户创建不同的视图,可以根据他们不同的身份职责看到不同的信息。
同时减少了数据库的数据冗余度。
销售员可看到的视图中,要包含电脑的基本信息,包括序列号、仓库号、品牌、型号、售价、库存、备注;而且,而作为顾客,可以查询到电脑的序列号、品牌和型号,还有对应负责的销售员的员工号,需要其他信息需要咨询销售员;作为采购人员,需要查询到电脑的品牌、型号和对应的库存、进价、售价;而作为管理层和人事管理可以查询到员工的基本信息,包括员工号、部门号、姓名、性别、年龄、职位、所属部门、家庭住址和联系电话。
3.3数据库的实现
3.3.1表
根据优化后的关系模式,创建数据库Computer-Sale,并以此创建出6个表,
表中各数据项的定义要符合前面的需求分析,并根据实际情况建立约束,其中Laptop表建立的效果如下图所示:
3.3.2视图
根据前面的视图设计,分别建立相应的视图,如下图所示共建立了4个视图:
其中View_Consumer视图为顾客可见视图,效果如下图所示:
图13:
视图View_Conxumer
3.3.3安全性设计
根据应用的要求,对顾客、销售员、管理员等分别创建不同的用户和角色,并赋予它们不同的权限,以达到数据库的安全使用。
同时,对于数据库中的数据,要设定约束,利用存储过程或触发器来进一步完善数据库的安全性。
再有,数据库的存储文件可以存储在不同的存储设备上,从而保证数据库的安全性。
使得数据库有一定的备份和恢复能力。
3.3.4完整性设计
数据库的完整性包括实体完整性、参照完整性和用户自定义完整性。
实体完整性,就是每一个实体都有它的唯一主键,这在逻辑结构设计中已经指出。
参照完整性是指一个表中的一个属性的值要参照另外一个表中的一个属性列的值,即设置外键,如下图:
图14:
建外键
Trade中的cnum、lnum、wnum要分别参照Consumer、Laptop和Worker表。
用户自定义完整性是根据实际情况而设置约束,如职工的年龄在18到55之间,性别只能取难男和女两个值,
图15:
建约束
3.3.5索引设计
创建索引可以大大提高系统的性能。
第一,通过创建唯一性索引,可以保证每一行数据的唯一性。
第二,可以大大加快数据的检索速度,这也是所以的最主要原因。
第三,可以加速表与表之间的连接,特别是实现数据的参考完整性方面特有意义。
第四,在使用ORDERBY和GROUPBY子句进行数据检索时,同样可以显著减少查询中分组和排序的时间。
第五,通过使用索引,可以在查询过程中,使用优化隐藏器,提高系统性能。
如图对Laptop表依品牌做索引,对Trade表依销售员员工号做索引:
图16:
建索引
3.3.5存储过程、触发器的设计
存储过程是存储在SQLServer数据库中的一种变异对象。
创建合理的存储过程能具有以下优点:
模块化的程序设计、高效率的执行、减少网络流量、可以作为安全机制使用。
而触发器是一种特殊的存储过程,当它,满足了一定的条件后会自动执行。
如下图建立一个查询的存储过程并执行:
图17:
存储过程的建立和执行
创建触发器的代码如下所示:
createtriggerInsertTrade
onTrade
forinsert
as
print('您新添加了一次新的销售记录!
')
3.3.6整个库的存储方式
整个数据库的数据文件有两部分组成,一个是这里有两个文件,Computer-Sale.mdf和Computer-Sale_log.ldf,Computer-Sale.mdf是数据库的数据文件,Computer-Sale_log.ldf是数据库的事务日志文件。
数据库的存储方式和存储路径如图所示:
图18:
存储方式和路径
根据数据库的存储路径,可以找出数据库的主要存储文件,从而可以对数据库进行备份和恢复。
对于数据库的存储文件,可以分别存储在不同的存储设备上,从而加强数据库的安全性。
4主要模块的详细设计与实现
4.1登录模块
本系统的前台设计是在VB6.0下完成的,基本实现了前台与数据库的连接、登录、查询、修改功能。
并且设计不同用户身份登录后的权限有所不同。
设置有销售员、人事部、管理员三种用户身份登录,登录时用户需要在下拉菜单中进行选择,然后输入正确的用户名和密码,进行登录。
如果密码或用户名不正确,将弹出警告框。
登录系统的主界面如下图所示
图19:
登录界面
如果点击退出按钮将退出本系统。
4.2销售员身份模块
电脑销售系统中的销售员,登录是为了查询所售电脑的信息,在数据库中已经设计了相应的视图。
下图是销售员王红以销售员身份登录的情况。
图20:
销售员登录
销售员登录后看到的界面中有两个按钮,一个是信息查询,可以输入电脑的序号,系统从数据库中提取相应的电脑信息反馈给销售员;另一个是密码修改,提供用户自己管理密码的功能。
图21:
销售员登陆后
如下,输入电脑序号03,查询出电脑的信息,序列号03,负责销售员01,品牌联想,型号T460,售价5999元,库存2台,备注:
有人预定了一台,只能再售一台。
图22:
查询电脑信息
4.3人事部身份模块
电脑销售系统中的人事部员工,登录是为了查询商场中员工的基本信息,在数据库中已经设计了相应的视图。
下图是人事部唐嫣以人事部身份登录的情况。
图23:
人事部唐嫣
人事部身份登录后也有信息查询和密码修改两个操作,信息查询以员工工号来查询对应员工的基本信息,其信息在数据库中已建立相应视图。
如下唐嫣输入员工号03,查询出结果:
员工号03,部门号01,姓名郭采,性别女,年龄42,职位采购部经理,部门采购部,家庭住址b区a街8号,联系电话
图24:
查询员工情况
4.4管理员身份模块
管理员在整个系统中具有最大的权限,此电脑销售系统中的管理员身份进入后将能够同时查询到所有电脑和所有员工的信息,同时也有管理个人密码的功能。
如下管理员001以管理员身份登录系统。
图25:
管理员001登录
管理员登录后的界面中有员工信息和电脑信息,还有密码修改。
图26:
管理员登录后界面
管理员查询员工信息的情况,所有员工的信息将以列表形式出现。
在信息框中,超出显示的部分需要滚动窗口观看。
图27:
管理员查询员工信息
管理员查询电脑信息的情况,所有电脑的详细信息将以列表的形式显示。
图28:
管理员查询电脑信息
4.5密码修改模块
密码修改应用于销售员、人事部和管理员中,可以支持他们登陆后管理自己各自的密码。
密码修改成功后会提示修改成功,下次登录需要输入新的密码。
图29:
修改密码
图30:
修改成功
结 论
这次课程设计是在数据库原理及应用教程的课程结课前大实验的基础上,更进一步地独立开发出更加完善的数据库系统。
而且在sqlserver之上,再做出前台界面。
使得用户可以在程序前台上操纵数据库。
经过这次开发设计,深切感受到一个软件的开发是需要做很多工作的。
第一次做这些工作,没有任何经验,甚至无从下手。
经过不断地测试,不断地改进,其中还是发下了不少问题,还是很谢谢老师和同学的帮忙,从中也学到了一些代码的写法,为什么要这样写。
总结这次数据库和前台的开发,基本是实现了所需功能。
不过,功能并不是很完善。
尽管经过许多次的测试盒修改,感觉每次都会找出一些不足。
这说明了这些工作还是需要经过多次锻炼和总结,才能做得更好。
总的来说,这次课设的收获是很大的,自己不断的尝试,锻炼了动手能力。
同时在不懂时和同学、老师交流、讨论,通过不同的途径查找资料。
使我对数据库的理解上升了一个新的层次,同时也全面地对数据库课本的知识进行了复习和巩固。
这对我的学习是有很大帮助的。
参考文献
[1]林卓然《VisualBasic程序设计基础》电子工业出版社出版2004年2月
[2]陈志泊《数据库原理及应用教程》人民邮电出版社2008年3月