电脑销售系统课程设计SQL课程设计_第1页
电脑销售系统课程设计SQL课程设计_第2页
电脑销售系统课程设计SQL课程设计_第3页
电脑销售系统课程设计SQL课程设计_第4页
电脑销售系统课程设计SQL课程设计_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、数据库原理与应用课程设计报告 数据库系统课程设计说明书设计题目:_ 电脑销售系统课程设计_目录1 引 言11.1课程设计选题11.2课程设计的目的11.3本选题的设计背景12 系统分析与设计12.1 系统的需求分析12.1.1 功能需求12.1.2性能需求22.1.3操作要求22.1.4数据流图表示22.2 系统的开发运行环境32.3 系统总体设计33 数据库设计33.1 数据库概念结构33.1.1 局部e-r图43.1.2 实体间联系63.2 数据库逻辑结构63.2.1 关系模型63.2.2 关系模型的优化73.2.3 视图的设计73.3 数据库的实现83.3.1表83.3.2 视图93.3

2、.3 安全性设计93.3.4 完整性设计103.3.5 索引设计103.3.6 整个库的存储方式124 主要模块的详细设计与实现124.1 登录模块124.2 销售员身份模块134.3 人事部身份模块144.4 管理员身份模块164.5 密码修改模块17结论18参 考 文 献19iii数据库原理与应用课程设计报告1 引 言1.1课程设计选题电脑销售系统1.2课程设计的目的通过数据库系统课程设计,熟悉了sql server数据库管理系统的结构与组成;掌握了sql server数据库管理系统的应用技术和的使用;应用sql server2008开发工具实践了电脑销售系统的数据库应用系统的设计方法、开

3、发过程和sql server数据库的管理与维护。最终达到掌握数据库管理系统的使用和开发,提高分析问题、解决问题和实践应用能力。1.3本选题的设计背景现在笔记本电脑越来越普及,许多大学生、白领等都拥有笔记本或购买笔记本的打算。所以,笔记本的市场需求量是很大的。而对于一个电脑的大商场,会有多家电脑品牌的若干机型。售价、库存、进货、销售、员工和客户等这些信息量庞大而繁琐。如果单靠人工记录和管理这些信息,不仅工作量大,而且效率低下。利用dbms设计平台,设计出符合商场实际情况的电脑销售数据库系统,能够有效、快速、简单、准确的管理这些信息。2 系统分析与设计2.1 系统的需求分析需求分析是数据库的起点,

4、为以后的具体设计做准备。需求分析的结果是否准确地反映了用户的实际要求,将直接影响到后面各个阶段的设计,并影响到设计结果是否合理和实用。经验证明,由于设计要求的不正确或误解,知道系统测试阶段才能发现很多错误,则纠正起来要付出很大的代价。因此,必须高度重视系统的需求分析。2.1.1 功能需求作为一个电脑商场的电脑销售系统,必须对商场的库存、销售情况作出具体的统计,库房管理人员能够对仓库里的库存信息进行修改更新,销售人员能够查询电脑的库存、进价、售价,能够增添销售信息。2.1.2性能需求对库房的管理和对电脑信息的查询,不同的角色应该有不同的权限,数据库系统要设置不同的用户和角色并给予不同的权限。数据

5、库系统的数据要有一定的恢复功能,这可以通过日志文件来实现。2.1.3操作要求对于数据库中的数据信息,要有一定的约束,各数据表中的关联数据要相对一致,防止混乱不清的数据出现。信息修改要及时、准确。2.1.4数据流图表示当仓库新进入一批货物或出库一些货物时图1:数据流图1采购员审查核实新进电脑数据更新对应库存增加销售员审查核实卖掉电脑数据更新对应库存减少当售出电脑时,售货员需要填写销售信息并添加客户信息图2:数据流图2销售员整理分类填写销售信息增加销售、客户记录提交信息2.2 系统的开发运行环境本系统开发平台: vb6.0+ sql server 2008本系统采用架构: 主从式结构的数据库系统本

6、系统运行环境: windows xp 或以上版本,安装有sql sever2.3 系统总体设计数据库管理电脑信息管理部门管理员工信息管理顾客信息管理仓库管理图3:系统总体设计3 数据库设计3.1 数据库概念结构概念结构设计是把用户的信息要求统一到一个整体逻辑结构中,此结构能够表达用户的要求,是一个独立于任何dbms软件和硬件的概念模型。 数据库概念结构设计是在需求分析的基础上,设计出能够满足用户需求的各种实体以及它们之间的关系,为后面的逻辑结构设计打下基础。概念结构设计就是将需求分析得到的用户需求抽象为信息结构,即概念模型。3.1.1 局部e-r图部门:由部门号、部门名、负责人、备注组成部门部

7、门号部门名负责人备注图4:部门仓库:由仓库号、负责人、备注组成仓库仓库号负责人备注图5:仓库客户:由客户号、姓名、年龄、性别、住址、联系方式组成客户客户号姓名年龄性别住址联系方式图6:客户员工:由员工号、姓名、性别、年龄、职位、所属部门、家庭地址、联系电话组成员工姓名性别年龄职位所属部门员工号家庭地址联系电话图7:员工电脑:由序列号、品牌、型号、进价、售价、库存、备注组成电脑序列号品牌型号进价售价库存备注图8:电脑3.1.2 实体间联系 员工属于部门,有员工管理仓库库,电脑存放于仓库,销售需要联系客户、员工、电脑三个实体,同时销售还需要包含销售记录号、销售额、日期的属性。客户员工部门仓库电脑属

8、于存放销售管理销售记录号销售额日期图9:实体间联系3.2 数据库逻辑结构3.2.1 关系模型根据系统的概念结构分析,得出其关系模式如下:部门(部门号,部门名,负责人,备注)仓库(仓库号,负责人,备注)员工(员工号,姓名,性别,年龄,职位,所属部门,家庭住址,联系电话)客户(客户号,姓名,性别,年龄,住址,联系方式)电脑(序列号,品牌,型号,进价,售价,库存,备注)存放(序列号,仓库号)属于(员工号,部门号)管理(仓库号,员工号)销售(销售记录号,员工号,客户号,序列号,销售额,日期) 3.2.2 关系模型的优化由于上述关系模式有些有相同的码,可以进行合并,所以要进行优化,优化后结果如下:部门(

9、部门号,部门名,负责人,备注)仓库(仓库号,员工号,负责人,备注)员工(员工号,部门号,姓名,性别,年龄,职位,所属部门,家庭住址,联系电话)客户(客户号,姓名,性别,年龄,住址,联系方式)电脑(序列号,仓库号,品牌,型号,进价,售价,库存,备注)销售(销售记录号,员工号,客户号,序列号,销售额,日期)其中,部门号、仓库号、员工号、客户号、序列号分别为五个实体的主码,销售记录号是销售联系的主码。这些主码在表中具有唯一性,不可为空。部门的备注、仓库的备注有则写之,无则不写。对于客户的信息,客户号、姓名和联系方式不可少,以方便售后。但是性别、年龄和住址根据用户要求可为空。3.2.3 视图的设计角色

10、权限销售员 查询商品的情况 查询商品存储情况 对销售数据进行查询更新统计采购员 对供应商数据进行查询更新 对采购数据进行查询更新统计顾客 查询商品基本信息管理员 维护(插入,更新和删除)营业员,采购员数据 查询所有的数据表1:视图的设计视图并不是数据库中真是存在的表,是对数据库中基本表的查询、筛选所得,视图的建立是为了方便地满足不同用户,为不同用户创建不同的视图,可以根据他们不同的身份职责看到不同的信息。同时减少了数据库的数据冗余度。销售员可看到的视图中,要包含电脑的基本信息,包括序列号、仓库号、品牌、型号、售价、库存、备注;而且,而作为顾客,可以查询到电脑的序列号、品牌和型号,还有对应负责的

11、销售员的员工号,需要其他信息需要咨询销售员;作为采购人员,需要查询到电脑的品牌、型号和对应的库存、进价、售价;而作为管理层和人事管理可以查询到员工的基本信息,包括员工号、部门号、姓名、性别、年龄、职位、所属部门、家庭住址和联系电话。3.3 数据库的实现3.3.1表根据优化后的关系模式,创建数据库computer-sale,并以此创建出6个表,图10:创建表表中各数据项的定义要符合前面的需求分析,并根据实际情况建立约束,其中laptop表建立的效果如下图所示:图11:表laptop3.3.2 视图根据前面的视图设计,分别建立相应的视图,如下图所示共建立了4个视图:图12:建视图其中view_co

12、nsumer视图为顾客可见视图,效果如下图所示:图13:视图view_conxumer3.3.3 安全性设计根据应用的要求,对顾客、销售员、管理员等分别创建不同的用户和角色,并赋予它们不同的权限,以达到数据库的安全使用。同时,对于数据库中的数据,要设定约束,利用存储过程或触发器来进一步完善数据库的安全性。再有,数据库的存储文件可以存储在不同的存储设备上,从而保证数据库的安全性。使得数据库有一定的备份和恢复能力。3.3.4 完整性设计数据库的完整性包括实体完整性、参照完整性和用户自定义完整性。实体完整性,就是每一个实体都有它的唯一主键,这在逻辑结构设计中已经指出。参照完整性是指一个表中的一个属性

13、的值要参照另外一个表中的一个属性列的值,即设置外键,如下图: 图14:建外键trade中的cnum、lnum、wnum要分别参照consumer、laptop和worker表。用户自定义完整性是根据实际情况而设置约束,如职工的年龄在18到55之间,性别只能取难男和女两个值, 图15:建约束3.3.5 索引设计创建索引可以大大提高系统的性能。第一,通过创建唯一性索引,可以保证每一行数据的唯一性。第二,可以大大加快数据的检索速度,这也是所以的最主要原因。第三,可以加速表与表之间的连接,特别是实现数据的参考完整性方面特有意义。第四,在使用order by和group by子句进行数据检索时,同样可以

14、显著减少查询中分组和排序的时间。第五,通过使用索引,可以在查询过程中,使用优化隐藏器,提高系统性能。如图对laptop表依品牌做索引,对trade表依销售员员工号做索引: 图16:建索引3.3.5存储过程、触发器的设计存储过程是存储在sql server数据库中的一种变异对象。创建合理的存储过程能具有以下优点:模块化的程序设计、高效率的执行、减少网络流量、可以作为安全机制使用。而触发器是一种特殊的存储过程,当它,满足了一定的条件后会自动执行。如下图建立一个查询的存储过程并执行: 图17:存储过程的建立和执行创建触发器的代码如下所示:create trigger inserttradeon tr

15、adefor insertasprint(您新添加了一次新的销售记录!)3.3.6 整个库的存储方式整个数据库的数据文件有两部分组成,一个是这里有两个文件,computer-sale.mdf和computer-sale_log.ldf, computer-sale.mdf是数据库的数据文件,computer-sale_log.ldf是数据库的事务日志文件。数据库的存储方式和存储路径如图所示: 图18:存储方式和路径 根据数据库的存储路径,可以找出数据库的主要存储文件,从而可以对数据库进行备份和恢复。对于数据库的存储文件,可以分别存储在不同的存储设备上,从而加强数据库的安全性。4 主要模块的详细

16、设计与实现4.1 登录模块本系统的前台设计是在vb6.0下完成的,基本实现了前台与数据库的连接、登录、查询、修改功能。并且设计不同用户身份登录后的权限有所不同。设置有销售员、人事部、管理员三种用户身份登录,登录时用户需要在下拉菜单中进行选择,然后输入正确的用户名和密码,进行登录。如果密码或用户名不正确,将弹出警告框。登录系统的主界面如下图所示 图19:登录界面如果点击退出按钮将退出本系统。4.2 销售员身份模块电脑销售系统中的销售员,登录是为了查询所售电脑的信息,在数据库中已经设计了相应的视图。下图是销售员王红以销售员身份登录的情况。 图20:销售员登录销售员登录后看到的界面中有两个按钮,一个

17、是信息查询,可以输入电脑的序号,系统从数据库中提取相应的电脑信息反馈给销售员;另一个是密码修改,提供用户自己管理密码的功能。图21:销售员登陆后如下,输入电脑序号03,查询出电脑的信息,序列号03,负责销售员01,品牌联想,型号t460,售价5999元,库存2台,备注:有人预定了一台,只能再售一台。 图22:查询电脑信息4.3 人事部身份模块电脑销售系统中的人事部员工,登录是为了查询商场中员工的基本信息,在数据库中已经设计了相应的视图。下图是人事部唐嫣以人事部身份登录的情况。 图23:人事部唐嫣人事部身份登录后也有信息查询和密码修改两个操作,信息查询以员工工号来查询对应员工的基本信息,其信息在

18、数据库中已建立相应视图。如下唐嫣输入员工号03,查询出结果:员工号03,部门号01,姓名郭采,性别女,年龄42,职位采购部经理,部门采购部,家庭住址b区a街8号,联系电。 图24:查询员工情况4.4 管理员身份模块管理员在整个系统中具有最大的权限,此电脑销售系统中的管理员身份进入后将能够同时查询到所有电脑和所有员工的信息,同时也有管理个人密码的功能。如下管理员001以管理员身份登录系统。 图25:管理员001登录管理员登录后的界面中有员工信息和电脑信息,还有密码修改。 图26:管理员登录后界面管理员查询员工信息的情况,所有员工的信息将以列表形式出现。在信息框中,超出显示的部分需要滚动窗口观看。 图27:管理员查询员工信息管理员查询电脑信息的情况,所有电脑的详细信息将以列表的形式显示。 图28:管理员查询电脑信息

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论