当前位置:首页 > 常用文档 > 心得体会 > 正文
 

数据库实验报告一_数据库实验报告

发布时间:2019-12-03 09:43:44 影响了:

  最近发表了一篇名为《数据库实验报告》的范文,感觉写的不错,希望对您有帮助,重新编辑了一下发到。

数据库实验报告

课 程 实 验 报 告

课程名称:

学 号:

V201441129

姓 名:

吴光艺

指导老师:

胡 侃

专业班级:

计算机1402班

报告日期:

2016年4月22日

计算机科学与技术学院

一.实验目的

1.通过对某个数据库管理系统的安装使用,初步了解DBMS的工作环境和系统架构

2.熟悉通过SQL对数据库进行操作,完成下面的SQL语句

3.学习系统的备份功能,学习系统的身份、权限配置操作,了解系统的查询性能分析功能。

4.熟悉通过sql对数据进行完整性检查性控制

二.实验平台

操作系统:win7 数据库管理系统:

Server2008R2 交互式查询语言:sql语言

三.实验要求

1.在RDBMS中建立一个数据库,进行实验所要求的各种操作,所有的sql操作均在此建立的的新数据库进行

(转 载于:www.fwwang.cn )

2.根据一下要求认真进行实验,记录所有的实验用例 数据定义:基本表的创建,修改和删除,视图的创建和删除。

数据操作:完成各类查询操作(单表查询,连接查询,嵌套查询,集合查询);完成各类更新操作(插入数据,删除数据,思想汇报专题修改数据,增加数据)

视图的操作:视图的定义(创建和删除),查询,更新(注意更新的条件) 3.使用sql对数据进行完整性控制(触发器),用实例证实,当操作违反了完整性约束条件时,系统是如何处理的

四.实验内容

1.Sql练习部分:

创建三个关系:

商品表【商品名称、商品类型】

GOODS【GNAME char(20),GTYPE char(10)】

主关键字为(商品名称)。商品类型为(电器、文具、服装。。。)

商场【商场名称,所在地区】

PLAZA【PNAME char(20),PAREA char(20)】

主关键字为商场名称。所在地区为(洪山、汉口、汉阳、武昌。。。)

销售价格表【商品名称、商场名称、当前销售价格、目前举办活动类型】

SALE【GNAME

(10)】

主关键字为(商品名称、商场名称)。举办活动类型为(送券、打折),也可为空值,表示当前未举办任何活动。表中记录如(‘哈森皮靴’,‘亚贸广场’,200,‘打折’),同一商场针对不同的商品可能采取不同的促销活动。

CREATE TABLE GOODS

(

GNAME CHAR(20) PRIMARY KEY,GTYPE CHAR(10) char(20),PNAME char(20),PRICE FLOAT,ATYPE char

);

--主关键字为(商品名称)。商品类型为(电器、文具、服装。。。)

CREATE TABLE PLAZA

(

PNAME CHAR(20) PRIMARY KEY,PAREA CHAR(20)

);---- 商场【商场名称,所在地区】

CREATE TABLE SALE

(

GNAME CHAR(20),PNAME CHAR(20),

PRICE FLOAT,

ATYPE CHAR(10),

PRIMARY KEY(GNAME,PNAME),FOREIGN KEY(GNAME) REFERENCES GOODS(GNAME),FOREIGN KEY(PNAME) REFERENCES PLAZA(PNAME)

--销售价格表【商品名称、商场名称、当前销售价格、目前举办活动类型】 );

INSERT INTO GOODS VALUES ("电风扇","电器");

INSERT INTO GOODS VALUES("电脑","电器");

INSERT INTO GOODS VALUES("彩电","电器");

INSERT INTO GOODS VALUES("空调","电器");

INSERT INTO GOODS VALUES("热水器","电器");

INSERT INTO GOODS VALUES("钢笔","文具");

INSERT INTO GOODS VALUES("练习本","文具");

INSERT INTO GOODS VALUES("墨水","文具");

INSERT INTO GOODS VALUES("书包","文具");

INSERT INTO GOODS VALUES("橡皮","文具");

INSERT INTO GOODS VALUES("西装","服装");

INSERT INTO GOODS VALUES("衬衣","服装");

INSERT INTO GOODS VALUES("裙子","服装");

INSERT INTO GOODS VALUES("内裤","服装");

INSERT INTO PLAZA VALUES("苏宁","洪山");

INSERT INTO PLAZA VALUES("国美","洪山");

INSERT INTO PLAZA VALUES("最全面的范文参考写作网站中百","洪山");

INSERT INTO PLAZA VALUES("国泰","洪山");

INSERT INTO PLAZA VALUES("家乐福","汉口");

INSERT INTO PLAZA VALUES("大洋百货","武昌");

INSERT INTO PLAZA VALUES("武商","武昌");

INSERT INTO SALE VALUES("电风扇","苏宁",258,"打折");

INSERT INTO SALE VALUES("电风扇","国美",288,"送券");

INSERT INTO SALE VALUES("电风扇","中百",288,"");

INSERT INTO SALE VALUES("电风扇","国泰",275,"送券");

INSERT INTO SALE VALUES("电风扇","家乐福",188,"");

INSERT INTO SALE VALUES("电脑","苏宁",5000,"打折");

INSERT INTO SALE VALUES("电脑","国美",5200,"");

INSERT INTO SALE VALUES("电脑","中百",6400,"打折");

INSERT INTO SALE VALUES("电脑","国泰",5800,"送券");

INSERT INTO SALE VALUES("彩电","苏宁",2700,"打折");

INSERT INTO SALE VALUES("彩电","国美",2300,"送券");

INSERT INTO SALE VALUES("彩电","大洋百货",2900,"");

INSERT INTO SALE VALUES("热水器","苏宁",888,"打折");

INSERT INTO SALE VALUES("热水器","国美",488,"打折");

INSERT INTO SALE VALUES("热水器","中百",570,"");

INSERT INTO SALE VALUES("热水器","大洋百货",620,"送券");

INSERT INTO SALE VALUES("钢笔","中百",1,"打折");

INSERT INTO SALE VALUES("钢笔","大洋百货",5,"");

INSERT INTO SALE VALUES("钢笔","家乐福",3,"打折");

INSERT INTO SALE VALUES("练习本","中百",12,"送券");

INSERT INTO SALE VALUES("练习本","国泰",13,"");

INSERT INTO SALE VALUES("练习本","家乐福",6,"");

INSERT INTO SALE VALUES("墨水","中百",8,"送券");

INSERT INTO SALE VALUES("墨水","国泰",10,"打折");

INSERT INTO SALE VALUES("墨水","武商",15,"");

范文写作下页

数据库实验报告

INSERT INTO SALE VALUES("书包","中百",88,"打折");

INSERT INTO SALE VALUES("书包","家乐福",88,"");

INSERT INTO SALE VALUES("书包","武商",188,"打折");

INSERT INTO SALE VALUES("橡皮","中百",2,"打折");

INSERT INTO SALE VALUES("橡皮","家乐福",5,"");

INSERT INTO SALE VALUES("长裤","中百",188,"打折");

INSERT INTO SALE VALUES("长裤","家乐福",388,"打折");

INSERT INTO SALE VALUES("长裤","武商",590,"");

INSERT INTO SALE VALUES("长裤","国泰",288,"送券");

INSERT INTO SALE VALUES("短袖","中百",188,"");

INSERT INTO SALE VALUES("短袖","家乐福",459,"");

INSERT INTO SALE VALUES("短袖","武商",118,"");

INSERT INTO SALE VALUES("短袖","国泰",268,"");

INSERT INTO SALE VALUES("裙子","中百",288,"打折");

INSERT INTO SALE VALUES("裙子","家乐福",488,"");

INSERT INTO SALE VALUES("裙子","武商",588,"送券");

INSERT INTO SALE VALUES("裙子","国泰",128,"");

INSERT INTO SALE VALUES("短裤","中百",99,"");

INSERT INTO SALE VALUES("短裤","家乐福",118,"打折");

INSERT INTO SALE VALUES("短裤","武商",198,"");

INSERT INTO SALE VALUES("短裤","国泰",88,"");

update SALE11

SET ATYPE="NULL"

WHERE ATYPE="

";

6

Table goods

Table plaza

Table sale

7

(转载于:www.fwwang.cn 在点 网)

2.数据更新:范文TOP100

1)向上述表格中用sql语句完成增、删、改的操作;

2)编写一个触发器,并测试该触发器;

3)将SALE表中的打折记录插入到新表SALE_CHEAP中,并基于SALE_CHEAP表创建一个统计每个商场各自打折商品平均价格的视图。

CREATE TABLE SALE_CHEAP

8

(

GNAME CHAR(20),PNAME CHAR(20),

PRICE FLOAT,

)

INSERT INTO SALE_CHEAP(GNAME,PNAME,PRICE,ATYPE)

SELECT GNAME,PNAME,PRICE,ATYPE

FROM SALE

WHERE ATYPE="打折";

CREATE VIEW P_SALE(PNAME,AVG_PRICE)

AS

SELECT PNAME,AVG(PRICE)

FROM SALE_CHEAP

GROUP BY PNAME ATYPE CHAR(10),PRIMARY KEY(GNAME,PNAME),FOREIGN KEY(GNAME) REFERENCES GOODS(GNAME),FOREIGN KEY(PNAME) REFERENCES PLAZA(PNAME)

9

3.用SQL语句完成下述查询需求:

1)查询所有以“打折”方式销售的商品的当前销售情况,并按照价格的降序排列;SELECT GNAME,PRICE

FROM SALE

WHERE ATYPE="打折"

ORDER BY PRICE DESC;

2)查询所有没有任何活动的商品及其所在的商场,结果按照商品排序;

10

上页 下页

数据库实验报告

SELECT GNAME,PNAME

FROM SALE

WHERE ATYPE=NULL

ORDER BY GNAME;

3)查询价格在200~500元之间的商品名称、所在的商场名称、价格,结果按照商场名称排序;

SELECT GNAME,PNAME,PRICE

FROM SALE

WHERE PRICE BETWEEN 200 AND 500

ORDER BY PNAME;

4)查询每种商品的最低价格、商品名称;

SELECT GNAME,MIN(PRICE)

FROM SALE

GROUP BY GNAME;

5)查询以“送券”方式销售的商品总数超过30种的商场名称;

SELECT PNAME

FROM SALE

WHERE ATYPE="送券"

GROUP BY PNAME HAVING COUNT(*)>15

6)查询以“送券”方式销售的商品总数超过30种的商场所在地区;

SELECT PAREA

FROM PLAZA

WHERE PLAZA.PNAME IN

(

SELECT SALE.PNAME

FROM SALE

WHERE ATYPE="送券"

GROUP BY SALE.PNAME HAVING COUNT(*)>1

7)查询价格为下列取值之一的商品名称、所在商场名称、目前举办活动的类型,(88、188、288、388、488、588、888);

SELECT GNAME,PNAME,ATYPE

FROM SALE

WHERE PRICE IN(88,188,288,388,488,588,888)

8)查询以“老”字开头的所有商品的名称;(ps:由于三个关系设计的时候没有注意题目的要求,所以没有符合的选项,故自己有另外建了一个)

CREATE TABLE GOODS

(

GNAME CHAR(20) PRIMARY KEY,GTYPE CHAR(10)

);

--主关键字为(商品名称)。商品类型为(电器、文具、服装。。。)

INSERT INTO GOODS VALUES ("电风扇","电器");

INSERT INTO GOODS VALUES("电视","电器");

INSERT INTO GOODS VALUES("冰箱","电器");

INSERT INTO GOODS VALUES("老花镜","电器");

INSERT INTO GOODS VALUES("老干妈","电器");

SELECT *

FROM GOODS

WHERE GNAME LIKE "老

%";

9)查询同时销售“剃须刀”和“电池”的商场名称;

SELECT S1.PNAME

FROM SALE S1,SALE S2

WHERE S1.PNAME=S2.PNAME AND S1.GNAME="剃须刀"

AND S2.GNAME="电池"

10)查询不举办任何活动的商场;

SELECT DISTINCT PNAME

FROM SALE

EXCEPT

SELECT DISTINCT PNAME

FROM SALE

WHERE ATYPE IS NOT NULL;

11)查询所销售的商品包含了“校园超市”所销售的所有商品的商场名称。

SELECT DISTINCT PNAME

FROM SALE SX

WHERE NOT EXISTS

(SELECT * FROM SALE SY WHERE PNAME="校园超市"

AND NOT EXISTS ( SELECT * FROM SALE SZ WHERE SZ.PNAME=SX.PNAME AND SZ.GNAME=SY.GNAME));

2.软件功能学习部分

(1)学习系统的备份功能。

利用Sql Server本身带有的备份功能(DTS)把数据库全部或者差额定时备份到某个目录,一旦备份成功,这时候在指定的备份目录下有.bak文件存在,选择SQLServer 服务器的数据库,单击鼠标右键,选择“所有任务”选“备份数据库”即可

(2)学习系统的身份、权限配置操作。

打开“SSMS—SQL Server实例—安全性—登录名”,右键选择“新建登录名”,选择身份验证模式(身份验证模式不同,帐户类型也不一样,),输入名字,并为该用户选择一个默认数据库(比如默认为master数据库)。该账户建立好之后,建立数据库用户,以便用户可以访问数据库,对数据库进行操作。我们在建立数据库用户时,其实就是映射登录用户,所以在一般情况下,我们的登录名和数据库用户名是一致的。操作方法:打开“SSMS—SQL Server实例—具体的数据库—安全性—数据库用户”;最后是在具体的数据库对象(比如表)上授予具体的权限,三种权限:授予、回收、拒绝。

上页 下页

数据库实验报告

(3)了解系统的查询性能分析功能。

查询优化有下面3种方法:

A建立索引,建立“适当”的索引是实现查询优化的首要前提;

B重写sql语句(即重写查询语句),SQL SERVER中有一个“查询分析优化器”,它可以计算出where子句中的搜索条件并确定哪个索引能缩小表扫描的搜索空间,也就是说,它能实现自动优化;

C其他优化方法(调整参数,建立视图,临时表等)

五.实验体会 通过数据库的多次的上机实验,使我对数据库以及SQL语言有了一个更透彻的理解,对以前上课学习到的知识有了更深的认识,通过自己上机实验,对很多以前不是很清楚很明白的问题也有了更清醒的认识,在各种不同的环境中,也能够适时作出相应的调整,在某种程度上提高了自己对知识的领悟能力和学习能力。

通过这次设计,我受益非浅,亲身体验了数据库设计的全过程,在实践中了解了数据库系统设计的步骤、流程以及思路,增长了在数据库设计方面的见识,我深刻认识到以前所学的基础课程的重要性,也使我们掌握了很多新知识,特别是一些课本之外的知识,体会到了理论知识和实践相结合的重要性。

16

上页

  以上就是这篇范文的全部内容,讲的是关于打折、名称、商品、中百、实验、操作、商场、查询等方面的内容,觉得好就按(CTRL+D)收藏下。

相关热词搜索:实验 数据库 报告 数据库实验报告总结 数据库上机实验报告

相关文章
最新文章

Copyright © 2008 - 2020 版权所有 人事培训网

工业和信息化部 湘ICP备14009742号-22