当前位置:文档之家› 实验五-复杂查询-实验报告

实验五-复杂查询-实验报告

实验五-复杂查询-实验报告
实验五-复杂查询-实验报告

实验五复杂查询

1 实验目的与要求

(1) 熟练掌握SQL语句的使用。

(2) 熟练使用SQL语句进行连接操作。

2 实验内容

(1)在订单明细表中查询订单金额最高的订单。

select a.*

from orderdetail a,ordermaster b

where a.orderno=b.orderno and ordersum=(select max(ordersum)

from ordermaster)

(2)找出至少被订购3次的商品编号、订单编号、订货数量和订货金额,并按订货数量

的降序排序输出。

select productno 商品编号,orderno 订单编号,quantity 订货数

量,quantity*price 订货金额

from orderdetail

where productno in

(select productno

from orderdetail

group by productno

having count(*)>=3)

order by quantity desc

(3)查找销售总额少于5000元的销售员编号、姓名和销售额。

select a.salerno 销售员编号,b.employeename 姓名,sum(ordersum)销售额from ordermaster a,employee b

where a.salerno=b.employeeno

group by a.salerno,b.employeename

having sum(ordersum)<5000

(4)找出目前业绩未超过5000元的员工,并按销售业绩的降序排序输出。

select salerno 销售员编号,sum(ordersum)销售业绩

from ordermaster

group by salerno

having sum(ordersum)<=5000

order by sum(ordersum)desc

(5)查询订购的商品数量没有超过10个的客户编号和客户名称。

select a.customerno 客户编号,customername 客户名称

from customer a,ordermaster b,orderdetail c

where a.customerno=b.customerno and b.orderno=c.orderno

group by a.customerno,customername

having sum(quantity)<=10

(6)查找订货金额最大的客户名称和总货款。

select customerno 客户名称,sum(ordersum)总货款

from ordermaster

group by customerno

having sum(ordersum)=(select max(sumorder)

from(select customerno,sum(ordersum)as sumorder

from ordermaster

group by customerno)b)

(7)查找至少订购了3种商品的客户编号、客户名称、商品编号、商品名称、数量和金

额。

select a.customerno 客户编号,customername 客户名称,b.productno 商品编号,productname 商品名称,quantity 数量,quantity*price 金额

from customer a,product b,ordermaster c,orderdetail d

where a.customerno=c.customerno and b.productno=d.productno and

c.orderno=

d.orderno

and d.orderno in(select orderno

from orderdetail

group by orderno

having count(productno)>=3)

order by a.customerno

(8)找出目前销售业绩超过4000元的业务员编号及销售业绩,并按销售业绩从大到小

排序。

select salerno 销售员编号,sum(ordersum)销售业绩

from ordermaster

group by salerno

having sum(ordersum)>4000

order by sum(ordersum)desc

(9)求每位客户订购的每种商品的总数量及平均单价,并按客户号、商品号从小到大排

列。

select customerno 客户编号,productno 商品编号,sum(quantity)总数量,avg(price)平均单价

from ordermaster a,orderdetail b

where a.orderno=b.orderno

group by customerno,productno

order by customerno,productno

(10)查询业绩最好的的业务员号、业务员名及其总销售金额。

select salerno 业务员号, employeename 业务员名,sum(ordersum)销售金额from ordermaster a,employee b

where a.salerno=b.employeeno

group by salerno,employeename

having sum(ordersum)=(select max(salesum)

from(select salerno,sum(ordersum)as salesum

from ordermaster

group by salerno)c)

(11)查询订购的商品至少包含了订单“200803010001”中所订购商品的订单。SELECT a.*

FROM OrderMaster a,OrderDetail b

WHERE a.orderNo =b.orderNo and productNo IN(SELECT productNo FROM OrderDetail

WHERE orderNo='200803010001')

(12)查询总订购金额超过“C20070002”客户的总订购金额的客户号、客户名及其住址。select a.customerNo,a.customerName,a.address

from customer a,(

select customerNo,sum(orderSum)sumorder from orderMaster group by customerNo) b

where a.customerNo=b.customerNo

and b.sumorder>(select sum(orderSum)sumorder

from orderMaster

where customerNo='C20070002'group by customerNo)

(13)查询总销售金额最高的销售员编号、订单编号、订单日期和订单金额。

select salerno,b.orderno,orderdate,ordersum

from employee a,ordermaster b

where a.employeeno=b.salerno

and ordersum=(select max(ordersum)

from ordermaster)

(14)用存在量词查找没有订货记录的客户名称。

select customername

from customer b

where not exists(select*

from ordermaster a

where a.customerno=b.customerno)

(15)查询既订购了“52倍速光驱”商品,又订购了“17寸显示器”商品的客户编

号、订单编号和订单金额。

select customerno,orderno,ordersum

from ordermaster

where customerno in(select customerno

from ordermaster a,orderdetail b,product c

where a.orderno=b.orderno and

b.productno=

c.productno and productname='52

倍速光驱')

and customerno in(select customerno

from ordermaster a,orderdetail

b,product c

where b.productno=c.productno and

productname='17寸显示器')

(16)求每位客户订购的每种商品的总数量及平均单价,并按客户号、商品号从小到大排

列。

select customerno,productno,sum(quantity)数

量,(sum(quantity*price)/sum(quantity))平均单价

from ordermaster a,orderdetail b

where a.orderno=b.orderno

group by customerno,productno

order by customerno,productno

(17) 实验问题:

①存在量词与集合运算IN、连接运算和全称量词之间的关系如何?它们可

以互相替换吗?给出你的理由。

答:存在量词EXISTS可以用连接运算或集合运算I N来实现,而SQL中没有全称量词,只能用存在量词和取非运算来实现;

②请写出例2.51的执行过程。

SELECT salerNo,employeeName,productName,quantity,price

FROM Employee a,OrderMaster b, OrderDetail c,Product d

WHERE a.employeeNo=salerNo AND b.orderNo=c.orderNo AND

c.productNo=

d.productNo

AND EXISTS(SELECT salerNo

FROM OrderMaster e,OrderDetail f

WHERE e.orderNo=f.orderNo AND a.employeeNo=salerNo

GROUP BY salerNo

HAVING count(distinct productNo)>=5)

ORDER BY salerNo

1. 首先将表Employee a, OrderMaster b, OrderDetail c, Product d进行连接

2. 对连接后的记录,取出员工编号,判断是否至少销售了5种商品

3. 如果是,将salerNo, employeeName, productName, quantity, price这五个值作为输出结果

4.如果不是,舍弃该连接记录

5. 取下一条连接记录,转2,直到所有的连接记录处理完毕

6. 最将结果输出

③存在量词一般用在相关子查询中,请分别给出存在量词用在相关子查询和非相关子查询的查询例子。

相关子查询:

SELECT studentName,classNo

FROM Student x

WHERE EXISTS(SELECT*

FROM Score a,Course b

WHERE a.courseNo=b.courseNo

AND a.studentNo=x.studentNo AND courseName='操作系统')

非相关子查询:

SELECT studentNo,classNo

FROM Student

WHERE NOT EXISTS(SELECT*

FROM Student

WHERE studentName='王红')

数据库原理实验报告(数据查询)

数据库原理实验报告 实验三数据查询 班级:××× 姓名:××× 学号:××× 数据查询 一、[实验目的] 1.掌握SQL的单表查询操作

2.掌握SQL的连接查询操作 3.掌握SQL的嵌套查询操作 4.掌握SQL的集合查询操作 二、[实验内容] 本实验的主要内容是: 1.简单查询操作。包括投影、选择条件表达,数据排序,使用临时表等。 2.连接查询操作。包括等值连接、自然连接、求笛卡儿积、一般连接、外连接、内连接、左连接、右连接和自连接等。 3.在SQL Server查询分析器中,使用IN、比较符、ANY或ALL和EXISTS操作符进行嵌套查询操作。 4.组合查询与统计查询。 (1)分组查询实验。该实验包括分组条件表达、选择组条件的表达方法。 (2)使用函数查询的实验。该实验包括统计函数和分组统计函数的使用方法。 (3)组合查询实验。 (4)计算和分组计算查询的实验。 三、[实验方法] 1.将查询需求用Transact-SQL语言表示。 2.在SQL Server查询分析器的输入区中输入Transact-SQL查询语句。 3.设置查询分析器结果区为Standard Execute(标准执行)或Execute to Grid方式。 4.发布执行命令,查看查询结果;如果结果不正确,进行修改,直到正确为止。 5 查询分析器的主要作用是编辑Transact-SQL,将其发送到服务器,并将执行结果及分析显示出来(或进行存储)。查询分析功能主要是通过测试查询成本,判断该查询是否需要增加索引以提高查询速度,并可以实现自动建立索引的功能。 图5- 错误!未定义书签。SQL Server 2000查询分析器 查询分析器的界面如图5- 错误!未定义书签。所示。在查询生成器中的左边窗口是对象浏览器,其中按树结构列出了数据库对象;右上方是SQL代码区域,用于输入SQL的查

三年级科学下册实验报告

三年级科学下册实验报告 实验名称: 探究小车运动的快慢与推力和拉力大小的关系实验材料: 小车、计时器、尺子、垫圈、棉线 实验过程 : 1、用1个垫圈的拉力~测试小车走过50厘米距离使用的时间。 2、用3个垫圈的拉力~测试小车走过50厘米距离使用的时间。 3、用5个垫圈的拉力~测试小车走过50厘米的距离使用的时间。实验现象: 1、1个垫圈的拉力用 ( ) 秒。 2、2个垫圈的拉力用, ,秒。 3、5个垫圈的拉力用, ,秒。 实验结论: 小车运动的快慢与推力和拉力的大小有关系~推力和拉力越大~小车运动的越快。 实验名称: 探究摩擦力的大小与什么因素有关系 实验材料: 斜面、木块、棉线、铅笔盒、书毛巾实验目的: 认识摩擦力的大小与什么因素有关系 实验过程 : 1、把木块先后放在粗糙和光滑的斜面上~观察下滑的快、慢。 2、用线拉铅笔盒~在铅笔盒上面放数量不同的书~体验一下手有什么感觉。 实验现象: 1、木块在光滑的木板上下滑的快~在粗糙的木板上下滑的慢。 2、铅笔盒上面放的书越多~手用得力越大。 实验结论:

1、摩擦力的大小与接触面的光滑程度有关系。物体表面越粗糙~摩擦就越大。物体表面光滑~摩擦力小。 2、摩擦力的大小与物体的轻重有关系。被拉物体重~摩擦力大。被拉物体轻~摩擦力小。 实验名称: 探究杠杆尺平衡的方法 实验材料: 杠杆尺及支架、钩码、 实验目的: 能通过观察、实验等方式知道杠杆尺的平衡方法实验过程 1、组装杠杆尺~在左边第二格挂2个钩码~然后在右边第二个格挂 几个钩码~杠杆尺能平衡吗, 2、在左边第二格挂2个钩码~然后在右边第一个格挂几个钩码~杠杆尺才能平衡, 3、在左边第二个格挂2个钩码~然后在右边第四个格可以挂几个钩码~杠杆尺才能平衡, 实验现象: 1、在右边第二格挂两个。 2、在右边第二格挂四个。 3、在右边第四格挂一个。 实验结论:杠杆尺平衡时不仅与所挂钩码的数量有关系~还与钩码到支点处的距离有关系。 实验名称: 探究弹簧的弹力 实验材料: 弹簧、橡皮筋、玻璃球、圆珠笔 实验目的: 能通过探究活动感知弹簧的弹性与弹力实验过程 : 1、两手握住弹簧用力向两边拉~慢慢减小拉力~观察看到的现象。 2、把圆珠笔的顶端按在桌面上松手看到什么现象,

数据库实验5实验报告

淮海工学院计算机工程学院实验报告书 课程名:《数据库原理及应用》 题目:数据库的完整性 班级:软件132 学号:2013122907 姓名:莹莹

一.目的与要求 1.掌握索引创建和删除的方法; 2.掌握创建视图和使用视图的方法; 3.掌握完整性约束的定义方法,包括primary key、foreign key等。 二.实验容 1.基于前面建立的factory数据库,使用T-SQL语句在worker表的“部门号”列上创建一个非聚集索引,若该索引已经存在,则删除后重建。 2.在salary表的“职工号”和“日期”列创建聚集索引,并且强制唯一性。 3.建立视图view1,查询所有职工的职工号、、部门名和2004年2月工资,并按部门名顺序排列。 4.建立视图view2,查询所有职工的职工号、和平均工资; 5.建立视图view3,查询各部门名和该部门的所有职工平均工资; 6.显示视图view3的定义; 7.实施worker表的“性别”列默认值为“男”的约束; 8.实施salary表的“工资”列值限定在0~9999的约束; 9.实施depart表的“部门号”列值唯一的非聚集索引的约束; 10.为worker表建立外键“部门号”,参考表depart的“部门号”列。 11.建立一个规则sex:性别=’男’ OR 性别=’女’,将其绑定到“性别”上; 12.删除上面第7、8、9和10建立的约束; 13.解除第11题所建立的绑定并删除规则sex。 三.实验步骤 1 USE factory GO --判断是否存在depno索引;若存在,则删除之 IF EXISTS(SELECT name FROM sysindexes WHERE name='depno') DROP INDEX worker.depno GO --创建depno索引 CREATE INDEX depno ON worker(部门号) GO EXEC sp_helpindex worker GO 2 USE factory GO --判断是否存在no_date索引;若存在,则删除之 IF EXISTS(SELECT name FROM sysindexes WHERE name='no_date') DROP INDEX salary.no_date GO --创建no_date索引

数据库数据查询实验报告

师学院数学与计算机科学学院 《数据库》实验报告 实验序号:07 实验项目名称:数据查询 学号2014210758 姓名邹业安专业、班级14信科 实验地点222 指导教师褚万军时间2017.6.07 一、实验目的及要求 ?掌握从简单到复杂的各种数据查询。包括:单表查询、多表连接查询、嵌套查询、集合查询。 ?掌握用条件表达式表示检索条件。 ?掌握用聚合函数计算统计检索结果。 二、实验设备(环境)及要求 1、环境要求: 硬件:PC(PII以上,128M以上存)、因特网接入; 软件:在SQL Server 2000中 三、实验容与步骤 1、一般简单查询 (1)不带条件的查询指定字段(考虑去掉和不去掉重复值两种情况)。select distinct 学号 from 选课 select 学号 from 选课

(2)查询某个表中的所有记录查询教师表中的所有记录 (3)使用单个条件的简单查询查询成绩大于50的学生的学号select 学号 from 选课where 成绩>50

(4)使用多个条件(AND关系)的查询 select工资 from教师 where工资>200 and工资<500 (5)使用多个条件(OR关系)的查询 select工资 from教师 where工资<200 or工资>500 (6)使用多个条件(混合AND和OR关系)的查询 select*from学生 where (院系='2'and生源='')or(院系='6'and生源='') (7)使用带NOT运算的查询

where not (生源='') (8)使用BETWEEN???AND???的查询 select * from 选课 where 成绩 between 86 and 93 (9)使用NOT???BETWEEN???AND???的查询select * from 选课 where 成绩 not between 76 and 93 (10)使用LIKE运算符的字符串匹配查询。

数据库实验报告五

数据库原理及应用实验报告(五) 实验题目:过程 专业:数字媒体技术 班级:1306班 姓名:***************

运城学院实验报告 专业:数字媒体技术系(班):计算机科学与技术系1306班姓名:************* 课程名称:数据库原理及应用 实验项目:过程实验类型:验证型指导老师:***** 实验地点:软件实验室一时间:2015年12月10日 一、实验目的: 掌握用户存储过程的创建,了解一些常用的系统存储过程,以及调用和删除过程,并熟悉使用存储过程来进行数据库应用程序的设计。 二、实验内容: (1)基于学生—课程数据库创建一存储过程,用于检索数据库中某个专业学生的人数,带有一个输入参数,用于指定专业。执行结果如图二所示: create procedure pro_s @stu_sdept varchar(5) //这是带参数的过程,参数不用()括 As select count(*) as 人数from student where sdept = @ stu_sdept 1、存储过程的执行 execute pro_s 实参//实参可以是变量,也可以是常量 (2)基于学生-课程数据库创建一存储过程,该过程带有一个输入参数,一个输出参数。其中输入参数用于指定学生的学号,输出参数用于返回学生的平均成绩。执行结果如图四所示: create procedure pro_stu @stu_sno char(6),@stu_avg float output //这个带output的是输出参数as select @stu_avg = avg(grade) //将平均值给了变量 from student,sc where student. sno = sc. sno and student.sno=@stu_sno 1.存储过程的执行 declare @stuavg float //用于存放输出变量内容的 execute pro_stu ‘1000’,@stuavg output// 输出参数必须是变量 select @stuavg //看结果 (3)在pubs数据库中建立一个存储过程,用于检索数据库中某一价位的图书信息。参数有两个,用

SQL查询—— 简单查询实验报告书

实验题目:SQL查询——简单查询 【实验目的与要求】 一、实验目的 1. 熟练掌握单表查询的SELECT语法结构; 2. 通过观察查询结果, 体会SELECT语句的实际应用。 二、实验要求 1.实验前做好上机实验的准备,针对实验内容,认真复习与本次实验有关的知识,完成实验 内容的预习准备工作。 2.能认真独立完成实验内容。 3.实验后做好实验总结,根据实验情况完成实验报告。 【实验环境】 PC机、Windows XP系统+SQL Server 2005 【实验内容】 基于实验一建立的EDUC 数据库,用Transact-SQL 语句实现如下查询: 1.选修了课程的学生学号; 2.计算机系的学生; 3.计算机系学生的学号和姓名; 4.计算机系和信息系的男生信息;(提示:逻辑运算符的优先级顺序) 5.选修上课编号为1且成绩在80-90 之间的学生学号和成绩,并将成绩乘以系数0.75 输出; (提示:新输出项要命名列标题) 6.没有成绩的学生的学号和上课编号; 7.选修上课编号为1或4的学生的学号和成绩,并要求对查询结果按成绩的降序 排列,如果成绩相同则按学号的升序排列;(提示:查询输出哪几项) 8.1995年1月1日(含)以后出生的学生信息,并按姓氏拼音字母顺序从前往后排列(注: 默认排序规则通常是Chinese_PRC_CI_AS,汉字按照汉语拼音的字典顺序来排序:首先按拼音,拼音相同按声调,声调相同按笔画数。)

9.姓李和刘的学生的信息; 10.不姓张王李刘的学生的学号、姓名和性别; 11.选修课程的学生人数; 12.选修上课编号为1的学生的最高分; 13.每位学生所修课程的平均分; 14.选修两门以上课程的学生; 15.总成绩大于200 分的学生的学号和总成绩。(提示:group by分组统计)【实验方法和步骤】 1.新建查询,在查询编辑器中依次按照如上实验内容编写SELECT语句完成查询。

五年级科学下册实验报告单.doc

科学实验报告单1 实验名称物体的沉浮 实验目的观察物体的沉浮 实验材料水槽、水、塑料、小刀、泡沫、橡皮、萝卜、曲别针等各种材料 实验过程实验一:取小石头、木块、橡皮、针等放入水中,观察它们的沉浮。 实验二:1、把水槽放在展台上,从袋中取出泡沫、回形针、萝卜等分别放入水中观察它们的沉浮 2、把小石块、橡皮、泡沫块、萝卜分别切成二分之一、四分之一、八分之一放入水中观察它们的沉浮 实验结论木块、塑料、泡沫在水中是浮的;小石头、回形针在水中是沉的。由同一种材料构成的物体改变它们的体积大小,在水中的沉浮是不会发生改变的。

科学实验报告单2 实验名称影响物体沉浮的因素 实验目的研究物体的沉浮与哪些因素有关 实验材料水槽、小石块、泡沫塑料块、回型针、蜡烛、带盖的空瓶、萝卜、橡皮、一套同体积不同重量的球、一套同重量不同体积的立方体、小瓶子、潜水艇 实验过程实验1.按体积大小顺序排列七种物体,再标出它们在水中是沉还是浮。想一想,物体的沉浮和它的体积大小有关系吗? 实验2、按轻重顺序排列七种物体,再标出它们在水中是沉还是浮。想一想,物体的沉浮和它的轻重有关系吗 实验结论不同材料构成的物体,如果体积相同,重的物体容易沉;如果质量相同,体积小的物体容易沉。

五年级科学下册实验报告单 科学实验报告单3 实验名称橡皮泥在水中的沉浮 实验目的橡皮泥排开水的体积 实验材料水槽、水、塑料、小刀、泡沫、橡皮、萝卜、曲别针等各种材料 实验过程实验一:找一块橡皮泥做成各种不同形状的实心物体放入水中,观察它们的沉浮。 实验二:1、让橡皮泥浮在水面上,用上面同样大小的橡皮泥,改变它的形状,即把橡皮泥做成船形或者空心的,橡皮泥就能浮在水面上。 2、取一个量杯,装入200毫升的水,记录橡皮泥在水中排开水的体积。 实验结论实心橡皮泥质量不变,形状改变,体积也不变,橡皮泥的沉浮不会发生改变。 橡皮泥在水中排开水的体积越大,浮力越大。

数据库实验报告1

1.使用系统存储过程(sp_rename)将视图“V_SPJ”更名为“V_SPJ_三建”。(5分) exec sp_rename v_spj, v_spj_三建; 2.针对SPJ数据库,创建并执行如下的存储过程:(共计35分) (1)创建一个带参数的存储过程—jsearch。该存储过程的作用是:当任意输入一个工 程代号时,将返回供应该工程零件的供应商的名称(SNAME)和零件的名称(PNAME) 以及工程的名称(JNAME)。执行jsearch存储过程,查询“J1”对应的信息。(10 分) create proc jsearch @jno char(2) as select sname, pname, jname from s,p,j,spj where s.sno=spj.sno and p.pno=spj.pno and j.jno=spj.jno and spj.jno=@jno; 执行: exec jsearch 'J1'

(2)使用S表,为其创建一个加密的存储过程—jmsearch。该存储过程的作用是:当执 行该存储过程时,将返回北京供应商的所有信息。(10分) 创建加密存储过程: create proc jmsearch with encryption as select * from s where s.city='北京'; sp_helptext jmsearch; (3)使用系统存储过程sp_helptext查看jsearch, jmsearch的文本信息。(5分) 用系统存储过程sp_helptext查看jsearch: exec sp_help jsearch; exec sp_helptext jsearch;

实验报告 数据库的基本查询'

一、实验目的: 通过该实验掌握应用SQL 查询数据库的基本方法,包括单表、多表查询。 二、实验原理 数据库查询是数据库的核心操作。SQL语言提供了SELECT语句进行数据库的查询。 SELECT[ALL|DISTINCT] <目标列表达式〉[,<目标列表达式〉]... FROM<表名或视图名〉[,<表名或视图名〉]... [WHERE<条件表达式>] [GROUP BY<列名1〉[HA VING<条件表达式>]] [ORDERBY<列名2〉[ASC|DESC]] 三、实验内容和方法 实验用的数据库:用实验二建立的数据库:School 1. 投影查询 (1) 查询SC表的sno的不重复记录。 使用SQL语句:“select distinct Sno from SC”,得出结果如下图所示: (2) 改变查询结果的标题名:sno为学号,sname为姓名,ssex 为性别,sdept 为系名。 使用SQL语句:“select Sno 学号,Sname 姓名,Ssex 性别,Sdept 系名from Student”,得出结果如下图所示:

(3) 查询STUDENT表的前3条记录(top 3)。 使用SQL语句:“select top 3 * from Student”,得出结果如下图所示: 3. 选择查询 (1) 查询成绩在60-80之间的姓名、系名和成绩。 使用SQL语句:“select Sname,Sdept,Grade from Student,SC where Grade>60 and Grade<80 and Student.Sno=SC.Sno”,结果如下图所示: 若使用SQL语句:“select Sname,Sdept,Grade from Student,SC where Grade between 60 and 80 and Student.Sno=SC.Sno”,则结果如下图所示: (2) 查询信息系和计算机系的姓名和成绩。 使用SQL语句:“select Sname,Grade from Student,SC where Sdept='IS' and Student.Sno=SC.Sno or Sdept='CS' and Student.Sno=SC.Sno”,结果如下图所示:

三年级科学下册实验报告单

实验一、温度和温度计 活动1:感受1号杯和2号杯里水的冷热 1号杯水() 2号杯水() 活动2:观察温度计 .观察常用液体温度计的主 要构造。 你观察温度计上有摄氏度 (℃)的标记吗? 你观察温度计上每一小格表 示多少? 你观察温度计的最高温度和 最高()最低() 最低温度是多少? 实验现象温度计里面的液柱热了就会上升,冷了就会下降。 活动3:下面的温度你会读和写吗? 28摄氏度写作: 20摄氏度写作: 零下5摄氏度写作: -21℃读作: 31℃读作:

实验要求:用温度计测量水的温度。 实验用品:400ml烧杯一个一支温度计适量冷水和一暖壶热水吸水纸废物瓶。 步骤操作要求评分标准满分得分1 清点仪器用品按材料清单清点材料用品是否齐全(5分)。 5 2 观察温度计的 零刻线、分度值 和量程。 A、观察温度计的零刻线。(10分) B、观察温度计的分度值和量程 。(10分) 20 3 用手感知水温。将手指伸入烧杯中(冷水)或将手放在烧杯 外壁(热水),手的感觉 (10分),估测水的温度(10分)。 20 4 将温度计测量 水的温度。 A、手拿温度计上端,将其竖直放入水中。(10 分) B、温度计的玻璃泡要完全浸没在水中,玻璃 泡不要碰烧杯的侧壁和底部。(10分) C、等示数稳定时再读数。读数时,要让玻璃 泡继续停留在水中。(10分) D、视线要和温度计的示数保持相平。连续三 次测水的温度分别为、、 ,平均水温为。(15分) 45 5 整理仪器,擦拭 桌面。 A、将温度计擦干放回原处。(5分) B、擦拭桌面。(5分) 10 实验三、水结冰了

一、实验名称:水结冰了 二、实验目的:观察水在不同温度下温度计的读数 三、实验步骤: 1、在试管里加入一半的纯净水,用温度计测量并记录试管里水的温度 2、拿一只保温杯(或在普通塑料杯外包裹一块干毛巾)在杯内装满碎冰, 把试管插入碎冰中,用温度计观测试管里水温的变化 3、在碎冰里加入较多的食盐,保持几分钟持续观测试管里的水温 4、观测试管里的水开始结冰时的温度 四、实验器材:试管、保温杯、温度计、碎冰块、食盐、纯净水。 水结冰了的实验记录表 1 在试管中加入一半纯净水的 温度___℃ 2 将试管插入碎冰中的温度 ___℃ 3 在碎冰里加入食盐时的温度 ___℃ 4 试管里的水开始结冰时的 温度___℃

数据库原理实验报告(5)

南京晓庄学院 《数据库原理与应用》课程实验报告 实验五嵌套子查询设计实验 所在院(系):数学与信息技术学院 班级: 学号: 姓名:

1.实验目的 (1)掌握多表查询和子查询的方法。 (2)熟练使用IN、比较符、ANY或ALL和EXISTS操作符进行嵌套查询操作。 (3)理解不相关子查询和相关子查询的实现方法和过程。 2.实验要求 (1)针对“TM”数据库,在SQL Server查询分析器中,用T-SQL语句实现以下查询操作: a)查询选修了数据结构与算法的学生学号和姓名。 b)查询07294002课程的成绩低于孙云禄的学生学号和成绩。 c)查询和孙云禄同年出生的学生的姓名和出生年份。 d)查询其他系中年龄小于数学与信息技术学院年龄最大者的学生。 e)查询其他系中比数学与信息技术学院学生年龄都小的学生。 f)查询同孙云禄数据库原理与应用课程分数相同的学生的学号和姓名。 g)查询选修了07294002课程的学生姓名。 h)查询没有选07294002课程的学生姓名。 i)查询同时选修了07295006和07295007课程的学生的学号。 j)查询所有未授课的教师的工号、姓名和院系,结果按院系升序排列。 扩展实验: a)查询和10060101选修的全部课程相同的学生的学号、课程号、期末考试 成绩。 b)查询至少选了10060101选修的全部课程的学生的学号。 c)查询年龄比所在院系平均年龄小的学生的学号、姓名、年龄、院系,按 院系和年龄升序排列。 d)查询每门课都在80分以上的学生的学号和姓名。 (2)在SQL Server Management Studio中新建查询,尽可能用多种形式表示实验中的查询语 句,并进行比较。 (3)按要求完成实验报告。 3.实验步骤、结果和总结实验步骤/结果 将调试成功的T-SQL语句写在下方(标明题号)。

北邮大三下数据库实验报告5

北京邮电大学 实验报告 课程名称数据库系统原理 实验内容实验5 数据库完整性与安全性实验 班级2013211***姓名 *** 指导老师成绩_________ 2016年05月20日

实验5 数据库完整性与安全性实验 实验目的: 1.通过对完整性规则的定义实现,熟悉了解SQL SERVER中完整性保证的规则和实现方 法,加深对数据完整性的理解。 2.通过对安全性相关内容的定义,熟悉了解SQL SERVER中安全性的内容和实现方法, 加深对数据库安全性的理解 实验内容 完整性实验与要求: 1.分别定义数据库中各基表的主键、外键,实现实体完整性约束和参照完整性约束; 定义主键: 方法一:使用Enterprise Manager设置主键(以book表为例) ①光标移到book表的位置,右键->设计 ②在你要选的属性列右键->设置主键,完成。

方法二:使用SQL语句。 ①右键数据库,新建查询 设置外键: 方法一:使用Enterprise Manager设置外键(以student表为例) ①单击student表,鼠标移到“键”文件夹,单击右键,选择“新建外键”。 ②选择“表和列规范”进行设置

③我们想在student表设置class_id属性为外键,按照下图选择,点击确定,保存即可。 方法二:SQL语句 新建查询,输入如图语句。

2.向学生表插入具有相同学号的数据,验证其实体完整性约束; Student表的主键是学号,所以不能插入有相同学号的学生。 3.向学生表中插入一条数据,班级号是学生表的外键,验证参照完整性约束; Class表中没有“2013211302”这个班级,所以无法插入。改变班级号为class表中存在的,则能够进行插入,结果如下: 4.删除教师表中的所有数据,验证参照完整性约束;

数据库系统原理实验报告_SQL查询语句

数据库系统原理 实验报告 :xxx 学号:xxxxxxxx 专业:xxxxx 日期:xxxxx

Lab2 一、实验目的 进一步熟悉关系数据库标准语言SQL。 二、实验环境 1)Windows 10 2)SQL Server 2017 三、实验容 给定如学生表、课程表和学生作业表所示的信息。 表1 学生表 表2 课程表 表3 学生作业表

K001 0433 60 75 75 K001 0529 70 70 60 K001 0531 70 80 80 K001 0591 80 90 90 K002 0496 80 80 90 K002 0529 70 70 85 K002 0531 80 80 80 K002 0538 65 75 85 K002 0592 75 85 85 K006 0531 80 80 90 K006 0591 80 80 80 M001 0496 70 70 80 M001 0591 65 75 75 S001 0531 80 80 80 S001 0538 60 80 写出如下SQL语句: 1.查询数据库中有哪些专业班级。(5分) Sql语句: SELECT专业班级 FROM学生表; 查询结果截图: 2.查询在1986年出生的学生的学号、和出生日期。(5分) Sql语句: SELECT学号,,出生日期 FROM学生表 WHERE出生日期LIKE'1986%'; 查询结果截图:

3.查询05级的男生信息。(5分) Sql语句: SELECT* FROM学生表 WHERE学号LIKE'05%'AND性别='男'; 查询结果截图: 4.查询没有作业成绩的学号和课程号。(5分) Sql语句: SELECT学号,课程号 FROM学生作业表 WHERE作业1成绩IS NULL OR作业2成绩IS NULL OR作业3成绩IS NULL; 查询结果截图: 5.查询选修了K001课程的学生人数。(5分) Sql语句: SELECT COUNT(DISTINCT学号) FROM学生作业表 WHERE课程号='K001'; 查询结果截图:

实验三--数据库中的数据查询及视图操作实验报告

实验三--数据库中的数据查询及视图操作实验报告

长春大学计算机学院科学与技术专业 数据库原理实验报告 实验 名称: 实验三数据库中的数据查询及视图操作(1) 班级: 姓 名: 学 号: 实验地点: 日期: 一、实验目的: 1.继续熟练SQL SERVER 2005/2008系统或KingBase ES V7.0的使用; 2.掌握SELECT语句的使用。 3.掌握单表查询,多表查询以及嵌套查询。 二、实验内容、要求和环境: 【实验要求】 注:将完成的实验报告重命名为:班级+学号+姓名+(实验三),(如:041540538张三(实验三)),提交到SPOC学堂。 1.实验课要携带教材、学习辅导、老师下发的实验报告文档等。 2.课前要对实验内容和步骤部分进行预习。 【实验环境】 1.SQL SERVER 2005/2008; 2.KingBase ES V7.0 ,人大金仓。 【实验内容和步骤】

针对实验一建立的数据库的表,用select语句完成如下查询操作,写出select语句,并给出操作结果。 1.针对SPJ数据库中的四个表,实现如下查询: (1)求供应工程J1零件的供应商号码SNO; (2)求供应工程J1零件P1的供应商号码SNO; (3)求供应工程J1零件的供应商名SNAME; (4)求供应工程J1零件P1的供应商名SNAME; (5)求供应工程J1零件为红色的供应商号码 SNO; (6)求没有使用天津供应商生产的红色零件的 工程号JNO; (7)求至少用了供应商S1所供应的全部零件的 工程号JNO; (8)找出使用上海产的零件的工程名称; 2.针对学生-课程数据库中的三个表,用嵌套方法查询实现如下查询: (1)查询选修了数据库的学生姓名。 (2)查询比计算机系CS所有学生年龄都大的学生信息。 (3)列出“李勇”选修的所有课程的课名和成绩。(4)查询数据库的先行课的课程名。 3.针对实验一建立的SPXS数据库中的三个表,实现如下查询: (1)查询与商品“电视”颜色相同的商品名; (2)查询不销售商品P2的商店名; (3)查询至少销售商品P1、P2两种商品的商店名; (4)所有商店都销售的商品号。 (5)只销售一种商品P4的商店名。 三、实验结果与分析: 写出操作语句,粘贴查询结果(粘贴结果要求粘贴SQL Server Managemet Studio整个窗口):

数据库SQL查询语句实验报告

实验一简单查询 在订单数据库中完成如下的查询 (1) 查询所有业务部门的员工姓名、职称、薪水 命令: select employeeName2612,headShip2612,salary2612 from Employee2612 where department2612='业务科' 结果: (2) 查询名字中含有“有限”的客户姓名和所在地。 命令: select CustomerName2612,address2612 from Customer2612 where CustomerName2612 like '%有限%' 结果: (3) 查询出姓“王”并且姓名的最后一个字为“成”的员工。 命令: select * from Employee2612 where employeeName2612 like '王%成' 结果: (4) 查询住址中含有上海或南昌的女员工,并显示其姓名、所属部门、职称、住址,其中性别用“男”和“女”显示。 命令:

select employeeName2612,department2612,headShip2612,address2612, case sex2612 when 'M' then '男' when 'F' then '女' end as 性别 from Employee2612 where address2612 like '%上海%' or address2612 like '%南昌%' and sex2612='F' 结果: (5) 在表sales中挑出销售金额大于等于10000元的订单。 命令: SELECT orderNo2612,sum(quantity2612*price2612) as total FROM OrderDetail2612 GROUP BY orderNo2612 HA VING sum(quantity2612*price2612)>10000 结果: (6) 选取订单金额最高的前10%的订单数据。 命令: select TOP 10 PERCENT orderNo2612, sum(quantity2612*price2612) as total from OrderDetail2612 group by orderNo2612 ORDER BY total desc 结果: (7) 查询出职务为“职员”或职务为“科长”的女员工的信息。 命令: select * from Employee2612 where headShip2612 in ('科长','职员') and sex2612='F' 结果:

三年级下册科学实验报告单

河北版三年级下册科学实验报告单 实验操作要求及评分标准 1. 清点器材(15分) (1)有清点实验器材的动作。(5分)(2)能准确说出器材名称。(10分) 2. 进行实验(50分) (1)正确使用仪器,合乎规范,注意安全。(10分) (2)按正确的实验步骤,通过观察、实验、制作等活动,进行操作。(30分)(3)实验过程中,集中精力,仔细观察,及时做好记录。(10分) 3. 填写实验报告(20分) (1)简要写出实验步骤。(10分) (2)记录实验现象,得出实验结论。(10分) 4. 整理仪器、收拾桌面(15分)(1)仪器归位、摆放整齐。(10分)(2)桌面整洁。(5分) (一)实验名称: 观察物体发生时的现象 实验器材:鼓和鼓槌、绿豆、钢锯条。实验步骤: 1.把绿豆放在鼓皮上,用鼓槌敲击鼓,观察绿豆。 2.把锯条放在课桌上,一半落空,一只手按住桌上一端,另一只手拨动锯条。 实验现象:1. 绿豆跳动 2. 锯条颤抖 实验结论:物体发声时振动。 (二)实验名称: 水能传声

实验器材:水槽、砂纸。 实验步骤: 1. 水槽中加满水。 2. 一个同学在水中磨砂纸,另一个同学将耳朵贴在水槽边听。 实验现象:听到了磨砂纸声音。实验结论:水能传声音。 (三)实验名称: 光的传播实验实验目的: 研究光是怎样传播的。 实验器材:手电筒一个、完全相同的中间带孔的硬纸片三张、纸屏一个。 实验步骤: 1. 将三张中间带孔的硬纸片、纸屏排在一条直线上(孔在一条直线上),用手电筒从一端向纸屏上照射,观察现象。 2. 将中间的硬纸片错开,用手电筒从一端向纸屏上照射,观察现象。实验现象:孔在一条直线上时,观察到纸屏上有光;将中间的硬纸片错开,孔不在一条直线上时,观察到纸屏上没有光。 实验结论:光是沿直线传播的。 (四)实验名称:光的反射实验 实验目的:光是否可以被反射。 实验器材:手电筒一个、中间带缝的硬纸片1张、平面镜一个、纸和尺子。 实验步骤:将中间带缝的硬纸片、平面镜放在纸上,排在一条直线上,用手电筒从硬纸片缝隙一端向平面镜上照射,改变平面镜摆放的角度观察现象,画出光的传播路线。

数据库上机实验报告(5)

《Access数据库技术及应用》 上机实验报告(4) 一、实验地点: E203 日期:2011-05-30 二、实验环境: 硬件系统: 电脑型号 联想 操作系统 Windows 7 旗舰版 32位 处理器 英特尔 core i5 650 内存 2 GB 软件系统: 操作系统:Windows 7 使用软件:Microsoft Office Access 2007三、实验内容: 查询练习(我们以“产品销售”数据库为例) 1、查找最贵的两种产品。 在查询对象里打开在设计视图中创建查询。把显示表里的产品标添加 到来源区。然后按 要求在字段内一步步按所要运用的函数公式输入进去,注意,因为是 最贵的两种产品,一定把产品表单价按照降序进行排列。所有的步骤 输入完成过后,点击运行按钮 就行了。运行结果:

2、显示2000年的总销售额 Select sum([单价]*[销售量]) as 总销售额 from 产品表 inner join 销售表on 产品表.产品编号=销售表.产品编号 where year([销售日期])=2000 步骤:在查询对象里打开在设计视图中创建查询。把显示表里的销售表和产品表添加到来源区。然后按要求在字段内一步步按所要运用的函数公式输入进去,注意,在这个题中,有一个牵涉条件的步骤就是年份的限定。所以,我们有必要在条件区加上年份函数Year()函数,同时,这是一个条件,需要在条件区中调出总计一栏才可以进行条件设置。如下图: 运行结果见下图: 同样,我们可以用SQL语句(此题的SQL语句见下:) SELECT Sum([单价]*[销售量]) AS 总销售额

数据库上机实验报告

实验一:建立数据库及基本表 一、实验目的 1、了解SQL Server数据库的逻辑结构和物理结构; 2、了解SQL Server的基本数据类型; 3、学会在企业管理器中创建数据库和表; 4、使用SQL查询分析器用CREATE、DROP、ALTER语句创建和删除数据库,创建、删除、更新基本表。 二、实验内容 1、创建数据库和查看数据库属性。 2、创建表。 3、查看和修改表结构。 4、熟悉企业管理器和查询分析器工具的使用方法 三、实验步骤 1、在企业管理器中创建数据库和数据表。 (1) 使用企业管理器建立图书管理数据库,数据库名为BM,初始大小为10MB,最大为50MB,数据库自动增长,增长方式是按5%比例增长;日志文件初始为2MB,最大可增长到5MB,按1MB增长。数据库的逻辑文件名和物理文件名均采用默认值。 详细步骤: (2) 在企业管理器中查看图书管理数据库的属性,并进行修改,使之符合要求。 (3) 通过企业管理器,在建好了图书管理数据库BM中建立图书(book)、读者(reader)和借阅(borrow)3个表,其结构为: 图书(书号,类别,出版社,作者,书名,定价);读者(编号,姓名,单位,性别,电话); 借阅(书号,读者编号,借阅日期)。 (4) 利用企业管理器向表中输入数据。 2、在查询分析器中创建数据库和数据表 (1) 创建数据库S-C 的sql语句: create database s_c (2) 在数据库S-C下,创建基本表学生表student(sno,sname,ssex,sage,sdept)的sql语句: create table student( sno c(8),sname c(10),ssex c(2),sage(4),sdept c(8) ) 创建基本表课程表course(cno,cname, ccredit)的sql语句: create table course( cno c(4),cname c(10),ccredit c(2) ) 创建基本表成绩表sc(sno,cno,grade)的sql语句: create table sc( sno c(8),cno c(4),grade n(4) )

数据库 实验报告5 ESQL

实验内容: 编写嵌入式C 程序,编程实现了对“学生课程数据库”的访问和操作:对Student 表中的年龄进行更新。系统每输出一个学生记录,询问用户是否更新。如果要更新,就输入新的年龄。 一. 实验环境介绍。 实验五是在之前完成的实验一的基础上进行的。 系统配置为:CPU: P3 800 内存:512MB 硬盘:30G 软件系统:WINDOWS 2000 ADV ANCED SERVER 。 在实验一中,我们已经成功安装了KingbaseES V4.1,形成本实验所需要的环境。其中安装路径为C:\Program Files 目录下。 二.编写含嵌入式C 程序test ,扩展名为.pc 。 EXEC SQL BEGIN DECLARE SECTION; /*说明主变量deptname ,HSno ,HSname , char deptname[20]; *HSsex ,HSage ,NEWAGE 。*/ char HSno[9]; char HSname[20]; char HSsex[2]; int HSage; int NEWAGE; EXEC SQL END DECLARE SECTION; /*声明部分结束*/ long SQLCODE; EXEC SQL INCLUDE sqlca; /*定义SQL 通信区*/ int main(void) { int count = 0; char yn; /*变量yn 代表yes 或者no*/ printf("Please choose the department name(CS/MA/IS): "); /*为主变量deptname 赋值*/ scanf("%s", &deptname); EXEC SQL CONNECT TO 学生课程数据库@localhost:54321 USER "SYSTEM"/"MANAGER"; /*连接数据库TEST*/ EXEC SQL DECLARE SX CURSOR FOR /*说明游标,为查询和更新做准备*/ SELECT Sno, Sname, Ssex, Sage FROM Student WHERE SDept = :deptname; EXEC SQL OPEN SX; /*打开游标。*/ for ( ; ; ) /*用循环结构逐条处理结果集的记录*/ { 《数据库系统概论》实验报告 题目:实验五 通过嵌入式SQL 访问数据库 姓名 Vivian 日期 2006-1-1

数据库实验(实验七数据查询)实验报告答案

实验7数据查询 【实验内容】 7.1单表查询 1、指定列或全部列查询 1) 查询S表中全体学生的详细记录 use jxsk select * from S 出言岂select - f Tdtt s| .1结杲 SEX AGE DEPT NATEVE J_a, i so i王青 山 19计算机NULL 2SI—赵亦17软件MULL 35218计算机NULL 4S3弓綽明胃IS信息NULL 554李四21包动ft NULL &S519软件NULL 756昊丽20计算机NULL 8S7范思明女ie NULL 9S820自动化NULL 10 S919枫牛NULL 2) 查询所有学生的姓名及其岀生年份。 use jxsk select SN, 2012 - AGEfrom S 1 「王 諭】 1&93 2赵亦1995 J钱尔1594 4號慣明隔 &李四1S51 6周展憫1553 7昊丽1382 8范思明1994 S??1S92 10张海涛 2、按条件查询及模糊查询 1)查询考试成绩有不及格的学生的学号。 use jxsk selectdistinct SNOfrom SCwhere SCORE<60 2)查询年龄在20 —23岁之间的学生的姓名、系名和年龄use jxsk select SN,

DEPT, AGEfrom S where AGE>=20 and AGE<= 30 □ us* select 5N, DEET, troni 5 L AGE>=20 ard AGE<-30 V结果J消息 | SH DEPT ,

相关主题
文本预览
相关文档 最新文档