数据库商品销售管理系统课程设计.doc_第1页
数据库商品销售管理系统课程设计.doc_第2页
数据库商品销售管理系统课程设计.doc_第3页
数据库商品销售管理系统课程设计.doc_第4页
数据库商品销售管理系统课程设计.doc_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

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

文档简介

sql server数据库 课 程 设 计设计题目 商品销售管理系统组长姓名 李慧组长学号 1332103115专业班级 计算机网络技术一班 指导教师 李红梅信息工程学 院 计科 系 年 月 日数据库课程设计任务及成绩院(系):信息工程学院 教研室:软件教研室课程设计题目商品销售管理系统课 程 设 计 任 务 分 配 康文鑫:数据库的创建以及表的创建及操作和触发器 黄焱:数据的录入以及视图的创建查询 李慧:画er图及功能模块图和存储过程 李国路:简单查询和嵌套查询 江林峰:模糊查询及连接查询小组成员姓名学号组长否李慧1142155121是黄焱1142155124否康文鑫1142155125否李国路1142155119否江林峰1142155122否 指导老师: 年 月 日 目 录第一章 需求分析11.1 应用背景11.2 系统可行性分析11.2.1 技术可行性11.2.2 经济可行性1第二章 概念结构设计32.1 商品销售管理系统实体集的子e-r图32.1.1 仓库e-r图32.1.2 供应商e-r图42.1.3 顾客e-r图42.1.4 商品e-r图42.1.5 产品销售e-r图42.1.6 员工e-r图52.2 商品销售管理系统总e-r图6第三章 逻辑结构及物理结构设计73.1 将er图转化为关系模式73.2 物理结构设计8第四章 数据库的实现94.1 表对象的操作94.1.1 员工表94.1.2 供应商表94.1.3 商品信息表104.1.4 仓库信息表104.1.5 顾客信息表114.1.6 采购信息表114.2 相关操作114.2.1 员工表的操作114.2.2 供应商表的操作134.2.3 商品信息表的操作144.2.4 仓库信息表的操作154.2.5 顾客信息表的操作164.2.6 采购信息表的创建与操作184.3 表的t-sql语句194.3.1 简单查询:194.3.2 嵌套查询194.3.3 模糊查询194.3.4 连接查询204.4 视图204.4.1 视图的创建204.4.2 视图的t-sql语句224.5 存储过程234.6 触发器24第五章 总结26参考文献27第一章 需求分析1.1 应用背景随着商品因为生活,商业等方面的增多,商业的发展也日益的迅猛,由于顾客量的增多,商品出入时间的广泛,商场收益的日益增多,仅仅依靠手写的老式输入记账法,是无法满足商场的需求的,同时这也是浪费人力和时间的。开发这个数据库,目的就在于能够更好的对公司信息情况,商品信息情况,进货退货信息,商品的库存以及销售情况,销售结账的订单等进行精确的查询,以便更好的完善和更新商品销售信息系统。1.2 系统可行性分析可行性分析也称为可行性研究,是在系统调查的基础上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、社会的方面进行分析和研究,以避免投资失误,保证新系统的开发成功。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。该系统的可行性分析包括以下几个方面的内容。1.2.1 技术可行性商品销售管理系统是将销售管理信息化,实现了进货、退货、消费、结账等新的管理方式。 我们设计的这个系统采用了sql server2005与c#进行开发设计的sql server数据库能够处理大量的数据,还保持数据的完整行并提供了许多高级管理功能。它的灵活性、安全性和易用性为数据库编程提供了良好的条件。c#语言是我们系统开发的语言,该系统还为客户提供了有好的界面。1.2.2 经济可行性随着经济的快速发展,建立一个信息化的管理模式的经济代价不再是一个很大的负担了。而且,信息化以后所带来的经济效应也是可观的,是现在所要实现现代化的一个主要的目标。整体功能模块图如下:出库管理添加销售信息添加销售退货商品库存查询商品销售查询商品进货结账进货退货结账用户管理退出登录商品退货查询商品销售排行修改密码添加用户商品销售结账销售退货结账入库管理公司信息管理增加商品信息商品信息管理增加公司信息销 售 管 理 系 统基本信息进货管理销售管理查询统计商品销售系统设置图1.1 功能结构图第二章 概念结构设计通常,把每一类数据对象的个体称为实体,而每一类对象的集合称为“实体集”。而er模型的主要成分是实体、联系和属性。如果用矩形框表示实体集,用带半圆的矩形表示属性,用线段连接实体集与属性,当一个属性或属性组合指定为主码时,在属性后加#键加以区别,则可以表示实体集及每个实体集涉及的属性,实体集之间存在各种关系,通常把这种关系称为“联系”。联系有三类:一对一的联系(1:1);一对多的联系(1:n);多对多的联系(m:n)。所以,此商品销售管理系统中实体集与实体集的联系,er模型如下:2.1 商品销售管理系统实体集的子e-r图本系统所涉及学生实体有如下属性:仓库,供应商,顾客,商品,产品销售,员工。其所对应的e-r图如下:2.1.1 仓库e-r图图2.1 仓库e-r图2.1.2 供应商e-r图图2.2 供应商e-r图2.1.3 顾客e-r图图2.3 顾客e-r图2.1.4 商品e-r图 图2.4 商品e-r图2.1.5 产品销售e-r图图2.5 产品销售e-r图2.1.6 员工e-r图图2.6 员工e-r图2.2 商品销售管理系统总e-r图图2.7 商品销售管理系统总e-r图第三章 逻辑结构及物理结构设计3.1 将er图转化为关系模式1、员工信息管理:登记公司员工的信息,如员工姓名、性别、年龄、职位、权限、密码等2、商品信息管理:记录各种商品的信息,如商品名称、编号、价格、数量、仓库号、等3、供应商管理:记录进货的具体信息,如供应商姓名、编号、地址、联系电话等4、采购信息管理:记录采购的具体信息,如采购编号、员工号、顾客姓名、顾客性别、商品性质、购入单价等5、库存信息管理:记录库存商品的具体信息,如商品编号、库存编号、库存、库存量、库存盘点日期等6、顾客信息管理:记录顾客的具体信息,如顾客姓名、顾客姓名、顾客地址、顾客的联系电话等7、用户信息管理:管理用户信息,如添加用户、修改密码、用户管理等。逻辑设计员工(员工编号,姓名、性别、年龄、职位、权限、密码)主键员工编号。供应商(供应商姓名、编号、地址、联系电话)主键供应商编号。商品(商品名称、编号、价格、数量、仓库号)主键商品编号。仓库(商品编号、库存编号、库存量、库存盘点日期)主键库存编号。顾客(顾客编号、姓名、地址、联系电话)主键顾客编号。采购信息(采购编号、员工号、顾客姓名、顾客性别、商品性质、购入单价)主键采购编号。3.2 物理结构设计图3.1 物理结构图第四章 数据库的实现4.1 表对象的操作建立数据库最重要的一步就是创建其中的数据表,即决定数据库包括哪些表,每个表中的包含哪些字段,每个字段的数据类型等。创建表有二种途径,一是企业管理创建,二是查询语句,此设计用的是第二种。对表的插入、修改和删除可用查询语句或界面操作来操作,但通过用查询语句操作表数据更为灵活,功能更为强大。4.1.1 员工表属性名类型长度完整性约束备注编号char8主码姓名varchar10非空性别char2男或女,默认值男年龄varchar20非空职位char11非空权限char2非空密码char3非空表4.1 员工表设计4.1.2 供应商表主要记录供应商的基本信息。属性名类型长度完整性约束备注编号char8主码姓名varchar10非空地址char20非空联系电话char11非空表4.2 供应商表设计4.1.3 商品信息表属性名类型长度完整性约束备注编号char8主码名称varchar10非空价格char2非空数量varchar20非空仓库号char11非空表4.3 商品信息表设计4.1.4 仓库信息表属性名类型长度完整性约束备注商品编号char8主码库存编号char10非空库存量char2非空库存盘点日期datetime8非空图4.4 仓库信息表设计4.1.5 顾客信息表属性名类型长度完整性约束备注编号char8主码姓名varchar10非空地址char20非空联系电话char11非空表4.5 顾客信息表设计4.1.6 采购信息表属性名类型长度完整性约束备注编号char8主码员工号char10非空顾客姓名char10非空顾客性别char2非空商品性质int4非空购入单价char10非空表4.6 采购信息表设计4.2 相关操作4.2.1 员工表的操作(1)员工表的插入:代码如下:insert into 员工数据values(201008099,小花,女,18)结果如下:图4.1 员工表操作-插入(2)员工表信息的修改:代码如下:update 员工数据 set 年龄=18 where 姓名=李小璐and 编号=2010071245结果如下:图4.2 员工表操作-修改(3)员工表信息的删除:代码如下:delete员工数据 where 编号=2010071245and 年龄=18结果如下:图4.3 员工表操作-删除4.2.2 供应商表的操作(1)供应商表信息的插入:代码如下:insert into 供应商表 values(1005,小花,合肥)结果如下:图4.4 供应商表操作-插入(2)供应商表信息的修改:代码如下:update供应商表set 地址=北京 where 学号=1001结果如下:图4.5 供应商表操作-修改(4)供应商表信息的删除:代码如下:delete 供应商表 where 学号=1005结果如下:图4.6 供应商表操作-删除4.2.3 商品信息表的操作(1)商品信息表信息的插入:代码如下:insert into 商品数据 values(0004,牙膏,34,100,003)结果如下:图4.7 供应商表操作-插入(2)商品信息表信息的修改:代码入下:update 商品数据 set 数量=1000 where 编号=0003结果如下:图4.8 供应商表操作-修改(3)商品信息表信息的删除:代码如下:delete 商品数据 where 编号=0004结果如下:图4.9 供应商表操作-删除4.2.4 仓库信息表的操作(1)仓库信息表信息的插入:代码如下:insert into 库存盘点信息 values(2014121805,2014120805,50,20141218,100)结果如下:图4.10 供应商表操作-插入(2)仓库信息表信息的修改:代码如下:update库存盘点信息set 库存=100 where 编号=2014121804结果如下:图4.11 供应商表操作-修改(3)仓库信息表信息的删除:代码如下:delete库存盘点信息where 编号=2014121805结果如下:图4.12 供应商表操作-删除4.2.5 顾客信息表的操作(1)顾客信息表的信息插入:代码如下:insert into 顾客数据 values(0006,林峰,男,南京结果如下:图4.13 顾客信息表操作-插入(2)顾客信息表信息的修改:代码如下:update 顾客数据set 姓名=集合 where编号=0006and 性别=男结果如下:图4.14 顾客信息表操作-修改(3)顾客信息表信息的删除:代码如下:delete 顾客数据 where 编号=0006and 性别=男结果如下:图4.15 顾客信息表操作-删除4.2.6 采购信息表的创建与操作(1)采购信息表信息的插入:代码如下:insert into 采购 values(0006,2010072234,李辉,男,1,100)结果如下:图4.16 采购信息表操作-插入(2)采购信息表信息的修改:代码如下:update 采购 set 顾客性别=女 where 编号=0006and 员工号=2010072234结果如下图4.17 采购信息表操作-修改(3)采购信息表信息的删除:代码如下:delete 采购 where 编号=0006and 员工号=2010072234结果如下:图4.18 采购信息表操作-删除4.3 表的t-sql语句4.3.1 简单查询:查询采购表的基本信息select * from 采购图4.19 简单查询4.3.2 嵌套查询 查询地址为合肥,上海的顾客信息select * from 顾客数据 where 地址 in(合肥,上海)图4.20 嵌套查询4.3.3 模糊查询查询姓名姓李的员工信息select * from 员工数据where 姓名 like 李%图4.21 模糊查询4.3.4 连接查询查询编号相同的顾客为男的基本信息:select * from 顾客数据,采购where 性别=男and顾客数据.编号=采购.编号图4.22 连接查询4.4 视图4.4.1 视图的创建(1)创建视图vw1create view vw1(编号,姓名,性别,年龄,职位,权限,密码)asselect编号,姓名,性别,年龄,职位,权限,密码from员工数据图4.23 创建视图1(2)创建视图vw2create view vw2(编号,姓名,性别,地址,电话)asselect编号,姓名,性别,地址,电话from 顾客数据图4.24 创建视图2(3)创建视图vw3create view vw3asselect * from 员工数据图4.25 创建视图34.4.2 视图的t-sql语句(1)查询视图vw1select * from vw1结果如下:图4.26 查询视图1(2)查询视图vw2select * from vw2结果如下:图4.27 查询视图2(3)查询视图vw3select 编号,姓名,性别=case when 性别=男then1 when 性别=女 then 0 end , 年龄,职位,权限,密码from vw3结果如下:图4.28 查询视图34.5 存储过程在sql server中,存储过程是数据库对象之一,它有执行速度快、确保数据库的安全和自动完成需要预先执行的任务等优点,本设计创建一个存储过程,功能是由顾客数据的编号,查询与采购表的关系,显示编号,姓名,采购数据的顾客姓名,顾客性别购入单价。存储过程的创建和调用如下:if exists(select * from sysobjects where name = prosand type =p)create proc pros sno varchar(8)as beginif exists (select * from 顾客数据 where 顾客数据.编号=sno ) select 顾客数据.编号,顾客数据.姓名,采购.顾客姓名,采购.顾客性别,采购.购入单价 from 顾客数据,采购 where 顾客数据.编号 =采购.编号 and 顾客数据.编号=sno else print 查无此人 endexec pros 1003exec pros 1005exec pros 1111结果如下:图4.29 存储过程4.6 触发器触发器是一类特殊的存储过程。触发器与表的关系密切,可用于维护表中的数据。当有数据影响到触发器维护的数据时,触发器自动执行。如下是系统触发器的创建和执行:触发器:当顾客退房,即删除某一顾客时,这顾客所有信息也删除create trigger trigon顾客数据instead of deleteas begin declare sno char (8) select sno=编号 from deleted if exists(select *from 顾客数据 where 编号=sno) begin delete 采购 where 采购.

温馨提示

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

评论

0/150

提交评论