收藏 分享(赏)

汽车销售信息管理系统.doc

上传人:scg750829 文档编号:6486442 上传时间:2019-04-14 格式:DOC 页数:31 大小:615.46KB
下载 相关 举报
汽车销售信息管理系统.doc_第1页
第1页 / 共31页
汽车销售信息管理系统.doc_第2页
第2页 / 共31页
汽车销售信息管理系统.doc_第3页
第3页 / 共31页
汽车销售信息管理系统.doc_第4页
第4页 / 共31页
汽车销售信息管理系统.doc_第5页
第5页 / 共31页
点击查看更多>>
资源描述

1、中北大学课程设计任务书2014-2015 学年第 二 学期学 院 : 软件学院专 业 : 软件工程学 生 班 级 :学 生 姓 名 : 学号:设 计 题 目 : 汽车销售信息管理系统数据库设计起 迄 日 期 : 6 月 8 日 6 月 19 日设 计 地 点 : 软件学院机房指 导 教 师 :下达任务书日期: 2015 年 6 月 8 日课 程 设 计 任 务 书11设计目的:按照关系型数据库的基本原理,根据数据库设计方法,综合运用所学的知识,设计开发一个小型的数据库-汽车销售信息管理系统数据库。熟练掌握相关数据库的分析、设计、实现过程,以及在此数据库基础之上对存储过程及触发器的设计及实现方法

2、。2设计内容和要求(包括原始数据、技术参数、条件、设计要求等):设计内容:主要功能:1. 轿车信息管理 2. 员工信息管理 3. 客户信息管理4. 轿车销售信息管理 5. 按条件查询 要求:1、项目背景及需求分析;2、E-R 图设计(局部与全局 ER 图) ;3、数据库表设计(包含 ER 图中的所有实体与联系所对应的关系表) ,如需要,还可以添加一些关键业务功能所需的视图、触发器、存储过程设计等;4、给出各 SQL 脚本程序的测试结果3设计工作任务及工作量的要求包括课程设计计算说明书(论文) 、图纸、实物样品等:(1) 根据设计内容和要求进行需求分析,分析出系统的主要功能和设计重点。(2) 根

3、据需求分析的内容在小组中合理划分模块。(3) 数据库实现正确,相关存储过程及触发器设计合理、正确,能实现预期功能。(4) 提交软件阶段文档齐全,思路正确。(5) 按格式要求,每人根据自己的工作写出课程设计说明书。23课 程 设 计 任 务 书4主要参考文献: 1 王珊、萨师煊. 数据库系统概论(第五版). 北京:高等教育出版社. 2014.9.2 闪四清. SQL Server 2008 基础教程.北京:清华大学出版社. 2010.8.3 潘永惠. 数据库系统设计与项目实践:基于 SQL Server 2008. 北京:科学出版社. 2011.4.4 刘金岭,冯万利,周泓. 数据库系统及应用实

4、验与课程设计指导:SQL Server 2008/21 世纪高等学校计算机教育实用规划教材. 北京:清华大学出版社. 2013.10.5设计成果形式及要求:课程设计说明书 数据库、存储过程、触发器6工作计划及进度:2015 年6.8-6.10 需求分析6.10-6.14 概念结构和逻辑结构设计6.14-6.18 数据库实现6.17-6.18 撰写课程设计说明书6.19 验收答辩、成绩考核 4中北大学数据库课程设计说 明 书学 院 、 系 : 软件学院专 业 : 软件工程学 生 班 级 :学 生 姓 名:学 号:设 计 题 目 : 轿车销售管理系统 起 迄 日 期 : 2015 年 6 月 8

5、日- 2015 年 6 月 19 日指 导 教 师 :2015 年 6 月 19 日5一、需求分析1.项目背景:管理信息系统在现代社会已深入到各行各业,由于计算机技术的迅速发展和普及,管理信息系统事实上已成为计算机管理信息系统。轿车信息管理系统是基于商品信息数据库,遵照商场实际管理流程,对商场商品的进、销、存的全过程进行全面管理的计算机应用系统。它将人工智能的理论引入商场,其目标是将商场人工操作的商品信息管理工作,转为有计算机网络系统自动操作完成。该系统实现了对整个商场商品信息资源的合理共享与分配,并进行科学有效的管理,在这个基础上谋求提高商品的信息管理效率。 在整个课程设计过程中,本设计具体

6、完成了对“基本资料” 、 “售后服务管理” 、 “销售管理” 、 “库存管理”和“系统管理”这 5 个功能模块的实现。所以本设计主要是对这 5 个模块的设计,以实用、标准、可靠、强扩展性的原则为出发点,能够为商品的进销存提供最简便、最科学、最优化的系统设计和服务。本系统结合实际的轿车销售服务管理制度。2.需求分析1.可行性分析可行性研究的目的是用最小的代价在尽可能短的时间内确定问题是否解决能够解决。也就是说可行性研究的目的不是解决问题,而是确定问题是否值得去解决,研究在当前的具体条件下,开发新系统是否具备必要资源和其他条件。一般来说,应从经济可行性,技术可行性,运行可行性,法律可行性,和开发方

7、案可行性等方面的研究可行性。1.1 经济可行性汽车销售管理系统的编写只需要一台 PC 机即可,目前 PC 机的配置均能满足汽车销售管理系统的编写和使用要求。而销售信息报表的打印则只需要增加一台打印机即可。因此,这是一般供词可以承担的。1.2 技术可行性作为软件工程的学生,经过一学期的学习对于数据库有了独立动手的操作能力,而对一个简单的汽车销售管理系统来说,以我们目前的技术水平是完全可以胜任的。1.3 使用可用性该系统只是一个小型的汽车销售管理系统,使用起来简单方便,另外,现在的许多汽6车销售公司都配有专门的计算机人才,只需要对该系统的使用者进行简单的培训即可投入使用。2.系统功能:1. 轿车信

8、息管理 2. 员工信息管理 3. 客户信息管理4. 轿车销售信息管理 5. 按条件查询 3.设计重点:经过实际的需求分析,确定需要包含以下数据库信息:【轿车库存信息】:轿车编号(标识列) ,轿车型号,轿车名称,颜色,库存量,生产厂家,出厂日期,出厂价格,备注;【员工信息】:员工编号,姓名,性别,年龄,籍贯,联系电话,地址,身份证号,岗位【客户信息】:客户编号,客户姓名,客户等级,联系电话,地址,业务记录【售后管理】:序号(标识列) ,客户编号,保养人编号,车辆牌照,保养日期,业务记录4.总体设计流程图汽车销售信息管理系统轿车信息管理模块客户信息管理模块员工信息管理模块销售信息管理模块7二、小组

9、成员分工编号 21 1314010640 杨皓 概要设计,触发器编号 22 1314010722 郭星东 需求分析,存储过程三、概要设计1)全局 E-R 图(粗略的)修改汽车信息删除汽车信息删除客户信息添加汽车信息添加客户信息修改客户信息修改销售信息添加销售信息删除销售信息修改员工信息添加员工信息删除员工信息8(详细的)三、逻辑结构设计1)根据ER图的描述转化为关系模型的:员工信息表:(员工编号,员工姓名,年龄,籍贯,学历,职位,工资) ;供应商信息表:(供应商编号,供应商名,供应商地址,供应商电话) ;轿车信息表:(轿车编号,型号,颜色,供应商名,出厂日期,出售价格,进价,仓库号,入库时间,

10、是否预定) ;仓库信息表:(仓库号,仓库容量,仓库地址,仓库管理员姓名,已存车辆) ;客户信息表:(客户编号,客户姓名,员工姓名,联系电话,地址,工作单位,业务状态) ;9订单信息表:(订单号,客户号,订货日期,交货日期,交货地址,轿车型号,轿车颜色,负责人编号,已付金额,还欠金额) ;2)数据字典:员工信息表字段名 类型 长度 是否可以为空 是否作为主键员工编号 char 8 N Primary key员工姓名 char 10 N年龄 int N性别 char 4籍贯 char 20 Y学历 char 8 Y职位 char 10 N工资 int N供应商信息表字段名 类型 长度 是否可以为空

11、 是否作为主键供应商编号 char 8 N Primary key供应商名 char 12 N供应商地址 char 20 N供应商电话 int N轿车信息表字段名 类型 长度 是否可以为空 是否作为主键轿车编号 char 8 N Primary key型号 char 20 N Primary key颜色 char 8 N供应商名 char 12 N10出厂日期 Int N出售价格 int N仓库号 char 10 N FK轿车型号 varchar 20 N成本价格 Int N是否预定 Int N仓库信息表字段名 类型 长度 是否可以为空 是否作为主键仓库号 char 10 N Primary

12、key仓库容量 int 10 N仓库地址 char 10 N仓库管理员姓名 char 20 N已存车辆数 char 10 N客户信息表字段名 类型 长度 是否可以为空 是否作为主键客户编号 char 8 N Primary key客户姓名 char 10 N员工姓名 char 10 N联系电话 int N地址 char 20 N工作单位 char 20 N业务状态 char 8 N订单信息表字段名 类型 长度 是否可以为空 是否作为主键11订单号 char 8 N Primary key客户号 char 8 N FK订货日期 int 10 N交货日期 int 10 N交货地址 char 10

13、N轿车编号 Int N FK员工编号 Int N FK已付金额 Int N轿车型号 Varchar 20 N颜色 Char 8 N.四、详细设计1)建表代码CREATE TABLE 员工信息表(员工编号 CHAR(8) PRIMARY KEY,员工姓名 CHAR(10) NOT NULL,年龄 INT NOT NULL,性别 CHAR(4) NOT NULL,籍贯 CHAR(20) NOT NULL,学历 CHAR(8) NOT NULL,职位 CHAR(10) NOT NULL,工资 INT NOT NULL)CREATE TABLE 供应商信息表(供应商编号 CHAR(8) PRIMARY

14、 KEY,供应商名 CHAR(12) NOT NULL,供应商地址 CHAR(20) NOT NULL,供应商电话 INT NOT NULL)12CREATE TABLE 轿车信息表(轿车编号 CHAR(8) PRIMARY KEY,轿车型号 CHAR(20),颜色 CHAR(8) NOT NULL,供应商名 CHAR(12) NOT NULL,出厂日期 int NOT NULL, 出售价格 INT NOT NULL,仓库号 CHAR(10) FOREIGN KEY REFERENCES 仓库信息表(仓库号)CREATE TABLE 仓库信息表(仓库号 CHAR(10)PRIMARY KEY,

15、仓库容量 INT NOT NULL,仓库地址 CHAR(20) NOT NULL,仓库管理员姓名 CHAR(8) NOT NULL,轿车型号 CHAR(8) FOREIGN KEY REFERENCES 轿车信息表(轿车型号)CREATE TABLE 客户信息表(客户编号 CHAR(8) PRIMARY KEY ,客户姓名 CHAR(10) NOT NULL,员工姓名 CHAR(10) NOT NULL,联系电话 INT NOT NULL,地址 CHAR(20) NOT NULL,工作单位 CHAR(20) NOT NULL,业务状态 CHAR(8) NOT NULL)CREATE TABLE

16、 订单信息表(订单号 CHAR(8) PRIMARY KEY,客户号 CHAR(8) FOREIGN KEY REFERENCES 客户信息表(客户号),订货日期 int NOT NULL, 交货日期 int NOT NULL, 13交货地址 CHAR(20) NOT NULL,轿车型号 CHAR(8) FOREIGN KEY REFERENCES 轿车信息表(轿车型号),颜色 CHAR(8) NOT NULL)2)录入数据代码insert into 员工信息表 VALUES (严峻,21,女,四川,本科,经理,5000)insert into 员工信息表 VALUES (李玲,23,男,云南

17、,大专,职员,2000)insert into 员工信息表 VALUES (宋瑞,26,男,山东,本科,组长,3500)insert into 员工信息表 VALUES (杨凯,29,女,四川,高中,职员,2000)insert into 员工信息表 VALUES (李杰,25,男,四川,本科,职员,1500)insert into 员工信息表 VALUES (黄陵,24,女,北京,大专,职员,1800)insert into 员工信息表 VALUES (徐英,22,女,山西,高中,职员,1980)insert into 员工信息表 VALUES (文俊,26,女,陕西,本科,职员,1900)

18、insert into 员工信息表 VALUES (秦旭,23,女,四川,大专,职员,2000)insert into 员工信息表 VALUES (杨曦,24,女,北京,高中,职员,1980)insert into 供应商信息表 VALUES (一汽,长春,1345566233)insert into 供应商信息表 VALUES (广本,广州,1345566233)insert into 供应商信息表 VALUES (大众,长春,1345566233)insert into 供应商信息表 VALUES (丰田,日本,13455662338)insert into 供应商信息表 VALUES (

19、福特,英国,1345566233)insert into 仓库信息表 VALUES (78,东区号,1,0)insert into 仓库信息表 VALUES (88,东区号,1,0)insert into 仓库信息表 VALUES (100,东区号,1,0)insert into 轿车信息表 VALUES (110,红色,一汽,20110203,98000,78000,1,20120203,0)insert into 轿车信息表 VALUES (111,蓝色,广本,20110203,98000,78000,2,20120203,0)insert into 轿车信息表 VALUES (112,银

20、色,丰田14,20110203,98000,78000,1,20120203,0)insert into 轿车信息表 VALUES (113,白色,福特,20110203,98000,78000,2,20120203,0)insert into 轿车信息表 VALUES (114,红色,大众,20110203,98000,78000,3,20120203,0) insert into 客户信息表 VALUES (刘梅,1,2109952,西一段,西华,订货)insert into 客户信息表 VALUES (宋云,15,2109952,东大街,数计,购车)insert into 客户信息表 V

21、ALUES (张玉,10,2109952,东二段,图书馆,订车)insert into 客户信息表 VALUES (李华,10,2109952,东三段,后勤,购车)insert into 客户信息表 VALUES (宋婷,5,2109952,东四段,人文,订车)insert into 客户信息表 VALUES (严苛,6,2109952,西二段,数计,订车)insert into 客户信息表 VALUES (何玲,5,2109952,西三段,教务处,购车)insert into 客户信息表 VALUES (宋辉,6,2109952,西四段,体育,购车)insert into 客户信息表 VAL

22、UES (李询,5,2109952,北一段,土木,订车)insert into 客户信息表 VALUES (李询,5,2109952,北一段,土木,订车)insert into 客户信息表 VALUES (严玉,5,2109952,北二段,机械,订车)insert into 订单信息表(客户号,订货日期,交货日期,交货地址,轿车编号,颜色,轿车型号,员工编号,已付金额) VALUES (11,20150906,20150907,东大街,1,110,红色,1,50000)insert into 订单信息表(客户号,订货日期,交货日期,交货地址,轿车编号,颜色,轿车型号,员工编号,已付金额) VA

23、LUES (12,20150906,20150907,东一段,2,111,蓝色,15,50000)insert into 订单信息表(客户号,订货日期,交货日期,交货地址,轿车编号,颜色,轿车型号,员工编号,已付金额) VALUES (13,20150906,20150907,西大街,3,112,银色,10,50000)insert into 订单信息表(客户号,订货日期,交货日期,交货地址,轿车编号,颜色,轿车型号,员工编号,已付金额) VALUES (14,20150906,20150907,古月街,4,113,白色,10,50000)insert into 订单信息表(客户号,订货日期,

24、交货日期,交货地址,轿车编号,颜色,轿车型号,员工编号,已付金额) VALUES (15,20150906,20150907,东二段,5,114,红色,5,50000) 155.存储过程USE 汽车销售管理系统GO/* Object: StoredProcedure dbo.addcar Script Date: 06/19/2015 00:27:46 */SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOcreate proc dbo.addcar轿车型号 char(20),颜色 char(8),供应商名 char(12),出厂日期 int,出售价格

25、int,成本价格 int,仓库号 int,入库时间 intasbegininsert into 轿车信息表(轿车型号,颜色,供应商名,出厂日期,出售价格,成本价格,仓库号,入库时间)values(轿车型号,颜色,供应商名,出厂日期,出售价格,成本价格,仓库号,入库时间)endGOUSE 汽车销售管理系统GO/* Object: StoredProcedure dbo.addclient Script Date: 06/19/2015 00:28:29 */16SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOCREATE proc dbo.addclie

26、nt客户姓名 char(10),员工编号 int,联系电话 int,地址 char(20),工作单位 char(20),业务状态 char(8)asdeclare 员工职位 char(10)if exists(select 员工职位 from 员工信息表 where 员工编号=员工编号)if 员工职位=经理 or 员工职位=销售员 or 员工职位=职员 begininsert into 客户信息表values(客户姓名,员工编号,联系电话,地址,工作单位,业务状态)endelsebeginROLLBACK TRANSACTION;print 该员工不具备该权限end elsebeginROLL

27、BACK TRANSACTION;print 该员工不存在end 17GOUSE 汽车销售管理系统GO/* Object: StoredProcedure dbo.addhouse Script Date: 06/19/2015 00:28:38 */SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOCREATE proc dbo.addhouse仓库容量 int,仓库地址 char(20),仓库管理员编号 int,已存车辆 intasbegininsert into 仓库信息表(仓库容量,仓库地址,仓库管理员编号,已存车辆)values(仓库容量,仓库

28、地址,仓库管理员编号,已存车辆)endGOUSE 汽车销售管理系统GO/* Object: StoredProcedure dbo.addident Script Date: 06/19/2015 00:28:48 */SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOCREATE proc dbo.addident客户号 int,18订货日期 int,交货日期 int,交货地址 char(20),轿车编号 int,员工编号 int,已付金额 intasbegindeclare 颜色 char(8),轿车型号 varchar(20);select 颜色=

29、颜色,轿车型号=轿车型号 from 轿车信息表 where 轿车编号=轿车编号;insert into 订单信息表(客户号,订货日期,交货日期,交货地址,轿车编号,颜色,轿车型号,员工编号,已付金额)values(客户号,订货日期,交货日期,交货地址,轿车编号,颜色,轿车型号,员工编号,已付金额)endGOUSE 汽车销售管理系统GO/* Object: StoredProcedure dbo.addstaff Script Date: 06/19/2015 00:29:00 */SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOcreate proc

30、dbo.addstaff员工姓名 char(10),年龄 int,性别 char(4),籍贯 char(20),学历 char(8),19职位 char(10),工资 intasbegininsert into 员工信息表values(员工姓名,年龄,性别,籍贯,学历,职位,工资)endGOUSE 汽车销售管理系统GO/* Object: StoredProcedure dbo.addstock Script Date: 06/19/2015 00:29:08 */SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOCREATE proc dbo.adds

31、tock轿车型号 varchar(50),颜色 char(8),供应商编号 int,进货日期 int,员工编号 int,进价 int,定价 int,数量 intasdeclare 供应商名 char(12),仓库容量 int,已用容量 int,仓库编号 int=1;select 供应商名=供应商名 from 供应商信息表 where 供应商编号=供应商编号;if exists(select 供应商名)begin20select 仓库容量=SUM(仓库容量),已用容量=SUM(已存车辆)from 仓库信息表;if 数量0)beginif exists(select * from 仓库信息表 wh

32、ere 仓库号=仓库编号)beginselect 仓库容量=仓库容量,已用容量 =已存车辆 from 仓库信息表 where 仓库号=仓库编号;update 仓库信息表 set 已存车辆=已存车辆+1 where 仓库号=仓库编号;insert into 轿车信息表(轿车型号,颜色,供应商名,出厂日期,出售价格,成本价格,仓库号,入库时间,是否预定)values(轿车型号,颜色,供应商名,进货日期,定价,进价,仓库编号,进货日期,0)set 数量=数量-1;endendendELSE begin print 仓库容量不足! endendelseprint 供应商未记录在案!GOUSE 汽车销售

33、管理系统GO/* Object: StoredProcedure dbo.addsupplier Script Date: 06/19/2015 00:29:15 */SET ANSI_NULLS ONGO21SET QUOTED_IDENTIFIER ONGOcreate proc dbo.addsupplier供应商名 char(10),供应商地址 char(20),供应商电话 intasbegininsert into 供应商信息表values(供应商名,供应商地址,供应商电话)endGOUSE 汽车销售管理系统GO/* Object: StoredProcedure dbo.check

34、car Script Date: 06/19/2015 00:29:24 */SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOCREATE proc dbo.checkcarasselect 轿车编号,轿车型号,颜色,出售价格,出厂日期,入库时间 from 轿车信息表where 是否预定=0GOUSE 汽车销售管理系统GO/* Object: StoredProcedure dbo.checkstaff Script Date: 06/19/2015 00:29:34 */SET ANSI_NULLS ON22GOSET QUOTED_IDENTIFI

35、ER ONGOcreate proc dbo.checkstaffasselect *from 员工信息表GO5、触发器的设计USE 汽车销售管理系统GO/* Object: Trigger dbo.t_addstock Script Date: 06/19/2015 01:12:40 */SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOCREATE trigger dbo.t_addstockon dbo.订单信息表after insertasdeclare 轿车编号 int;select 轿车编号=ltrim(轿车编号) from inserted

36、;begin update 轿车信息表 set 是否预定=1 where 轿车编号=轿车编号endGOUSE 汽车销售管理系统GO/* Object: Trigger dbo.carinsert Script Date: 06/19/2015 01:12:55 */23SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOCREATE trigger dbo.carinserton dbo.轿车信息表after insertasdeclare 仓库号 int;select 仓库号=ltrim(仓库号) from inserted; begin update

37、仓库信息表 set 已存车辆=已存车辆+1 where 仓库号=仓库号endGOUSE 汽车销售管理系统GO/* Object: Trigger dbo.upclient Script Date: 06/19/2015 01:13:06 */SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOCREATE trigger dbo.upclient on dbo.客户信息表after update,insertas declare 业务状态 varchar(8),客户编号 int,轿车编号 int,仓库号 int;select 业务状态=ltrim(业务状态

38、) from inserted;select 业务状态=ltrim(客户编号) from inserted;if(业务状态=购车)begin 24select 轿车编号= 轿车编号 from 订单信息表 where 客户号=客户编号;select 仓库号=仓库号 from 轿车信息表 where 轿车编号=轿车编号;delete from 轿车信息表 where 轿车编号=轿车编号;update 仓库信息表 set 已存车辆=已存车辆+1 where 仓库号=仓库号;endGO6、触发器截图进行轿车信息表的插入,会使仓库信息表的已存车辆数值发生变动通过轿车信息表的触发器,修改仓库信息表的内容25生成订单,会触发订单信息表的触发器,修改轿车信息表和仓库信息表的内容1.修改轿车信息表的内容,是否预定的属性由 0 变为 1262.仓库信息表中会对应的减少仓库已有车辆的数值7.存储过程截图1.存储过程概述:272.部分存储过程截图12批量插入及触发器作用在仓库信息表283实现对与不同权限的限定和一定程度的容错29实现了两个视图:

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 销售管理

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报