数据库实验指导—SQL Server 2000(7)

2018-12-17 10:58

图3-9

提示命令成功完成,或者报告出错信息。 3.查询分析器中向表添加数据:

在查询分析器的查询窗口中输入SQL语句,如图3-10所示。

图3-10

点击按钮,执行该SQL语句,在查询窗口下部出现一个输出窗口,如图3-11所示。

图3-11

从表中查询数据:

在查询分析器的查询窗口中输入SQL语句,如图3-12所示。

图3-12

点击按钮,执行该SQL语句,在查询窗口下部出现一个输出窗口,如图3-13所示。

图3-13

四、实验任务

1.打开数据库SQL Server 2000的查询分析器,用SQL语言建立实验二中给出的三张表,要求建表时给出主外键约束、唯一约束、取空值约束、用户自定义的约束等。 2.练习使用SQL语句向三张表中插入部分数据。 3.练习下面简单的查询语句:

a) 查询每个雇员的所有信息 b) 查询每个雇员的地址和电话

c) 查询EmployeeID为000001的雇员的地址和电话。 d) 查询女雇员地址和电话,并用AS子句将结果中各列的标题分别指定为“地址”和“电话”。

e) 计算每个雇员的实际收入。 f) 找出所有姓王的雇员的部门号。

思考:找出所有地址中含有“中山”的雇员的号码和部门号。

五、实验报告要求

1、写出建表的SQL语句(包含各种约束);

2、从实验任务3中规定的六条查询里任选三条,写出其SQL语句; 3、并记录在使用SQL语句过程中遇到的问题及解决办法。

任务2.2 DML的数据查询

一、实验目的

DML的数据查询指对数据库中的数据查询、统计、分组、排序等操作。查询语句可以分为简单查询、连接查询、嵌套查询和组合查询。

本次实验了解DML语言的SELECT语句对数据的查询,学会SQL Server 2000的查询分析器中用DML语言对表中的数据进行连接查询和嵌套查询。

二、预计实验时间:一~二次上机

三、实验内容

1.启动数据库服务软件SQL Server 2000的查询分析器,用SELECT语句对表进行简单查询操作,整个查询过程只涉及到一个表,是最基本的查询语句。 语法格式如下:

Select <目标列组> From <数据源> [Where <元组选择条件>] [Group by <分组列> [Having <组选择条件>]] [Order by <排序列1> <排序要求> [, …n]]

2.用SELECT语句对表进行连接查询操作,连接查询涉及被连接和连接两个表,所以数据源一般为多个表。用来连接两个表的条件称为连接条件,一般格式为: [<表名1>.]<列名1> <比较运算符> [<表名2>.]<列名2> 其中比较运算符主要有:=、>、<、>=、<=、!=。

3.用SELECT语句对表进行嵌套查询操作,一个Select…From…Where语句称为一个查询块,将一个查询块嵌套在另一个查询块的Where子句或Having短语的条件中的查询,就是嵌套查询。主要有使用In操作符、使用比较运算符的嵌套查询方式。

四、实验任务 Departments表: DepartmentID 1 2 3 Employee表 EmployeeID Name Birthday Sex Address Zip 1001 1002 1003 2001 2002 2003 3001 3002 Salary表

DepartmentName 财务部 研发部 人力资源部 Note 财务部 研发部 人力资源部 PhoneNumber EmailAddress ly@henu.edu.cn lc@henu.edu.cn zl@henu.edu.cn ly@henu.edu.cn zm@henu.edu.cn xj@henu.edu.cn zj@henu.edu.cn DepartmentID 1 1 2 2 2 3 3 李勇 王敏 刘晨 张立 刘毅 张玫 徐静 赵军 78-3-12 80-11-2 78-6-22 78-8-1 82-1-23 81-3-15 76-8-12 79-2-19 0 1 0 0 0 1 1 0 河南 河南 河南 河南 河南 河南 河南 河南 475001 3880378 475002 0378311 475003 0378322 475004 0378333 475005 0378344 475006 0378355 475007 0378366 475008 0378377 wm@henu.edu.cn 1

EmployeeID 1001 1002 1003 2001 2002 2003 3001 3002 Income 3600 3300 3700 4000 3800 3800 4200 4100 OutCome 1500 1000 1200 1600 1800 1500 2000 1800 1.下列查询任务用来练习多表连接查询。

a) 查询每个雇员的情况及工资情况(工资=Income - Outcome) b) 查询财务部工资在2200元以上的雇员姓名及工资情况 c) 查询研发部在1966年以前出生的雇员姓名及其工资详情 d) 查询人力资源部雇员的最高和最低工资 e) 将各雇员的情况按工资由低到高排列 f) 求各部门的雇员数 Select count(*)

From Employee E, Department D

Where E. DepartmentId =D. DepartmentId Group by E. DepartmentId

g) 找出所有在财务部和人力资源部工作的雇员的编号

2.下列查询任务用来练习嵌套查询。

h) 统计人力资源部工资在2500以上雇员的人数 Select count(*) From Employee

Where DepartmentId in (select ) i) 求财务部雇员的总人数 j) 求财务部雇员的平均工资

k) 查找比所有财务部的雇员工资都高的雇员的姓名

l) 查找财务部年龄不低于研发部所有雇员年龄的雇员的姓名 m) 查找在财务部工作的雇员的情况

3.将课本P104-108 [例38]~~[例43]用带EXISTS谓词的子查询来做等价替换,写出相应的查询语句。

五、实验报告要求 写出与上述查询任务相对应的SQL查询语句,并记录在实验过程中遇到的问题、解决办法及心得体会。


数据库实验指导—SQL Server 2000(7).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:水龙头英语专业术语

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: