数据库原理及应用报告.docx

上传人:b****4 文档编号:4059692 上传时间:2022-11-27 格式:DOCX 页数:16 大小:451.97KB
下载 相关 举报
数据库原理及应用报告.docx_第1页
第1页 / 共16页
数据库原理及应用报告.docx_第2页
第2页 / 共16页
数据库原理及应用报告.docx_第3页
第3页 / 共16页
数据库原理及应用报告.docx_第4页
第4页 / 共16页
数据库原理及应用报告.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

数据库原理及应用报告.docx

《数据库原理及应用报告.docx》由会员分享,可在线阅读,更多相关《数据库原理及应用报告.docx(16页珍藏版)》请在冰豆网上搜索。

数据库原理及应用报告.docx

数据库原理及应用报告

实验报告

 

实验课程:

数据库原理及应用课程设计

实验内容:

汽车销售管理系统

 

院系:

专业:

班级:

学生姓名:

学号:

指导教师:

 

2019年1月3日

一、实验目的和要求

1)及格标准:

根据课题指定的内容分析提炼出实体和联系及其属

性,画出实体联系图,实体数量不能少于5个,将优化后的实

体联系图转化为关系模式,给出验证和说明数据库范式满足

3NF,在SQLServer2008上创建数据库,定义各个表的主键和

外键,自行定义一些索引,自行录入部分合理数据,创建一个

登录名和数据库账号,并赋予相应的数据库操作权限。

2)良好标准:

满足及格标准,在此基础上,给出三个以上查询,

一个触发器设计并验证。

3)优秀标准:

在良好标准基础上,自行设计一个简单的T-SQL程

序,并运行执行。

4)可选标准(可代替优秀标准):

在及格标准基础上,应用背景

知识,构建web数据库的体系架构,包括:

tomcatweb服务

器,java的开发平台eclipse;在eclipse平台上创建基于JSP的

数据系统前端程序,应用JDBC连接后台数据库,在浏览器页

面上显示连接数据库成功。

二、实验内容

1、总体介绍

汽车销售管理系统共分五大功能。

基础信息管理用于对车辆、厂

商及客户信息的管理;采购信息管理用于对于车辆的采购、入库和维

护;销售信息管理用于车辆的销售和维护;信息查询统计用于对采购

单、销售单、库存信息等的查询和一定时间内收益、销售、库存的情

况的统计;系统维护用于用户的维护及用户权限的设置等。

2、相关功能模块的数据流图如下,学生可合理扩展功能。

图4汽车销售管理的总体数据流图

图5基本信息管理数据流图

图6车辆销售数据流图

其它模块数据流图需要的话,请同学们自行添加。

3、同学们可由子功能模块出发,也可由总体功能出发,设计相应

的数据格式,给出ER图,转换为关系,优化后,设计数据库

三、ER图

用户信息(用户编号,年龄,姓名,性别,联系方式)

车辆信息表(车辆类型,生产日期,颜色,单价)

销售单(销售单号,销售数量,总金额,销售日期,经办人)

销售信息(销售编号,销售单号,车辆类型,数量,售价,销售总金额)

库存信息(车辆类型,库存信息编号,车辆数量)

采购单(采购编号,车辆类型,入库单号,数量,进价,采购总金额)

厂商(厂商编号,生产型号,厂商名,地址)

用户编号→(年龄,姓名,性别,联系方式)

车辆类型→(生产日期,颜色,单价)

销售单号→(销售数量,总金额,销售日期,经办人)

销售编号→(销售单号,车辆类型,数量,售价,销售总金额)

库存信息编号→(车辆类型,车辆数量)

采购编号→(车辆类型,入库单号,数量,进价,采购总金额)

厂商编号→(生产型号,厂商名,地址)

四、实验过程和结果截图

createtable销售单/***********销售单表************/

(销售单号varchar(20)primarykeynotnull,

销售数量intnotnull,

总金额numeric(10,2)notnull,

销售日期datetimenotnull,

经办人varchar(20)notnull

insert销售单/**********插入数据**********/

values('2016004068','1','1546545','2018/8/21','张扬')

insert销售单

values('201600406','2','943545','2018/9/22','张飒')

insert销售单

values('2016015118','1','446545','2018/11/11','李虹')

insert销售单

values('2016145108','3','1548565','2018/12/21','李丽')

/**********************************************************************************/

createtable车辆信息表/***********车辆信息表************/

(车辆类型varchar(20)primarykeynotnull,

颜色varchar(20)notnull,

单价numeric(10,2)notnull,

生产日期datetime

insert车辆信息表/**********插入数据**********/

values('宝马X1','红','265456','2016/07/28')

insert车辆信息表

values('宝马X3','黑','285456','2016/08/28')

insert车辆信息表

values('宝马X5','黑','378456','2016/09/28')

insert车辆信息表

values('奔驰S320','红','375456','2016/06/28')

insert车辆信息表

values('奔驰S330','黑','395456','2016/09/28')

/********************************************************************************/

createtable销售信息/***********销售信息表************/

(销售编号varchar(20)primarykeynotnull,

销售单号varchar(20)notnull,

车辆类型varchar(20)notnull,

数量intnotnull,

售价numeric(10,2)notnull,

销售总金额numeric(10,2)notnull

insert销售信息/**********插入数据**********/

values('516515','2016004068','宝马X1','1','265456','265456')

insert销售信息

values('516516','201600406','宝马X3','2','285456','570912')

insert销售信息

values('516517','2016015118','宝马X5','1','378456','378456')

insert销售信息

values('516518','2016145108','奔驰S320','3','375456','1126368')

/********************************************************************************/

createtable采购单/***********采购单************/

(采购编号varchar(20)primarykeynotnull,

车辆类型varchar(20)notnull,

/*入库单号varchar(20)notnull,*/

数量intnotnull,

进价numeric(10,2)notnull,

采购总金额numeric(15,2)notnull

insert采购单/**********插入数据**********/

values('54651','宝马X1','4','205456','8021824')

insert采购单

values('54652','宝马X3','2','215456','430912')

insert采购单

values('54653','宝马X5','1','278456','278456')

insert采购单

values('54654','奔驰S320','3','280000','840000')

/********************************************************************************/

createtable厂商/***********厂商************/

(厂商编号varchar(20)primarykeynotnull,

生产型号varchar(20)notnull,

厂商名varchar(20)notnull,

地址varchar(20)notnull

insert厂商/**********插入数据**********/

values('54161','宝马X1','afuha','广西')

insert厂商

values('156561','宝马X3','asda','广东')

insert厂商

values('54611','宝马X5','sdads','珠海')

insert厂商

values('489414','奔驰S320','sadsad','杭州')

insert厂商

values('1614151','奔驰S330','gdfsd','株洲')

/********************************************************************************/

createtable库存信息/***********库存信息表************/

(库存信息编号varchar(20)primarykeynotnull,

车辆类型varchar(20)notnull,

库存数量intnotnull

insert库存信息/**********插入数据**********/

values('5161','宝马X1','3')

insert库存信息

values('16561','宝马X3','0')

insert库存信息

values('5611','宝马X5','1')

insert库存信息

values('48914','奔驰S320','2')

insert库存信息

values('16151','奔驰S330','2')

/********************************************************************************/

createtable用户信息/************用户信息表****************/

(用户编号varchar(20)primarykeynotnull,

姓名varchar(20)notnull,

年龄integercheck(年龄between1and130),

性别nchar

(2)check(性别in('男','女')),

联系方式varchar(20)notnull

insert用户信息/**********插入数据**********/

values('15525','张斌','29','男','1651561165')

insert用户信息

values('511221','赵虹','28','女','1849841165')

insert用户信息

values('12252','赵勇','34','男','1891561165')

insert用户信息

values('45621','李铭','35','男','1761561165')

/********************************************************************************/

createtrigger更新库存/***************触发器:

更新库存***************/

on采购单/*插入新的采购单后更新库存*/

forinsert

as

declare@amountvarchar(20)

select@amount=数量

frominserted

update库存信息

set库存数量=库存数量+@amount

where车辆类型=(select车辆类型frominserted)

/********************************************************************************/

createtrigger库存更新/**************触发器:

库存更新***************/

on销售信息/*插入新的销售信息后更新库存*/

forinsert

as

declare@amount2varchar(20)

select@amount2=数量

frominserted

update库存信息

set库存数量=库存数量-@amount2

where车辆类型=(select车辆类型frominserted)

/********************************************************************************/

insert/***********增添销售信息***************/

into销售信息

values('156151','154161511','奔驰S330','1','280000','280000')

delete/***********删除销售信息***************/

from销售信息

where销售编号='156151'

insert采购单/***********添加采购单**********/

values('54658','奔驰S320','2','280000','560000')

delete/***********删除采购单**********/

from采购单

where采购编号='54658'

/********************************************************************************/

select车辆信息表.车辆类型,颜色,单价,库存数量/***********查询价格大于且库存大于***************/

from库存信息,车辆信息表

where单价>280000and库存数量>2and车辆信息表.车辆类型=库存信息.车辆类型

orderby单价desc

select车辆信息表.车辆类型,颜色,单价,库存数量/***********查询宝马X5的信息**********/

from车辆信息表,库存信息

where车辆信息表.车辆类型='宝马X5'and车辆信息表.车辆类型=库存信息.车辆类型

and库存信息.车辆类型='宝马X5'

select车辆信息表.车辆类型,颜色,单价,库存数量/********查询价格比宝马X3贵的车辆信息**********/

from库存信息,车辆信息表

where单价>(select单价from车辆信息表where车辆类型='宝马X3')and

车辆信息表.车辆类型=库存信息.车辆类型

orderby单价desc

/********************************************************************************/

createview车辆信息视图/***********车辆管理视图**********/

as

select车辆信息表.车辆类型,单价,颜色,库存数量

from车辆信息表,库存信息

where车辆信息表.车辆类型=库存信息.车辆类型

createview销售信息视图/***********销售信息视图**********/

as

select*

from销售信息

createview库存信息视图/***********库存信息视图**********/

as

select*

from库存信息

createview采购单视图/***********采购单视图***********/

as

select*

from采购单

createview用户信息视图/***********用户信息视图**********/

as

select*

from用户信息

/********************************************************************************/

createprocedure用户信息查询/***********用户信息存储**********/

@姓名varchar(20)

as

select*

from用户信息视图

where@姓名=姓名

exec用户信息查询'赵虹'/******用存储过程查询赵虹的信息******/

createprocedure车辆信息查询/***********车辆信息查询存储**********/

@车辆类型varchar(20)

as

select*

from车辆信息表

where@车辆类型=车辆类型

exec车辆信息查询'宝马X3'/******用存储过程查询宝马X3的信息******/

createprocedure车辆信息增添/***********车辆信息增添存储**********/

(@车辆类型varchar(20),

@颜色varchar(20),

@单价numeric(10,2),

@生产日期datetime)

as

insertinto车辆信息表

(车辆类型,颜色,单价,生产日期)

values(@车辆类型,@颜色,@单价,@生产日期)

/********************************************************************************/

execsp_addlogin'zhaojun','123456','汽车销售系统'/******建立登录名zhaojun,密码为***/

execsp_grantdbaccess'zhaojun','zjx'/*******在登录名zhaojun中创建用户zjx*********/

grantselecton车辆信息表tozjx/*******授予用户zjx拥有车辆信息表的select权限*********/

execsp_addrole'ying'/*******添加数据库角色*********/

execsp_addrolemember'ying','zjx'/*******添加角色为ying的成员zjx****/

/********************************************************************************/

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

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1