实验五 SQL语言的DML初步
一、实验目的
SQL的数据操纵功能通过DML(数据库操作语言)实现。DML包括数据查询和数据更新两种数据操作语句。其中,数据查询指对数据库中的数据查询、统计、分组、排序等操作;数据更新指数据的插入、删除和修改等数据维护操作。
本次实验了解DML语言的INSERT、UPDATE、DELETE对数据的操作,学会SQL Server 2000的查询分析器中用DML语言对表中的数据进行插入、删除和修改。
二、实验内容
1.启动数据库服务软件SQL Server 2000的查询分析器,用INSERT语句对表进行插入操作,语法格式如下:
Insert Into <表名> [(<属性列1>[,<属性列2>]?)] Values (<常量1>[,<常量2>]?);
2.用UPDATE语句对表中已有的记录进行修改,语法格式如下: Update <表名> Set <列名>=<表达式>[,<列名>= <表达式>][,?n] [Where <条件>];
3.用DELETE语句对表中已有的记录进行删除,语法格式如下: Delete From <表名> [Where <条件>];
三、实验任务
1.打开数据库SQL Server 2000的查询分析器,用Create Table
36
建表cc,表结构如下所示: 字段名 类型 长度 Cc1 Cc2 Cc3 Cc4 Varchar Int Dec Varchar 20 10,2 60 含义 字段1 字段2 字段3 字段4 2.用INSERT语句对表cc插入6条记录
Cc1 赵一 钱二 孙三 李四 周五 吴六
3.用UPDATE语句,将表cc中cc2小于等于20的记录,把cc3字段加5。
4.用DELETE语句将表cc中cc2大于等于20和cc3大于等于500的记录删除。
5.将以上的SQL语言存盘,以备老师检查。
Cc2 20 19 21 22 20 19 Cc3 580.00 540.00 555.50 480.00 495.50 435.00 Cc4 重邮宿舍12-3-5 南福苑5-2-9 学生新区21-5-15 重邮宿舍8-2-22 学生新区23-4-8 南福苑2-5-12 37
实验六 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语句对表进行嵌套查询操作,一个
38
Select?From?Where语句称为一个查询块,将一个查询块嵌套在另一个查询块的Where子句或Having短语的条件中的查询,就是嵌套查询。主要有使用In操作符、使用比较运算符的嵌套查询方式。
4.用SELECT语句对表进行组合查询操作,将SELECT语句的查询结果集再进行集合运算就构成了SQL的组合查询。组合查询操作符有Union(并操作)、Intersect(交操作)和Minus(差操作)。
三、实验任务
1.打开数据库SQL Server 2000的查询分析器,用Create Table建表Student,表结构如下所示: 字段名 类型 长度 含义 ID Name Age Department Varchar Varchar Int Varchar 20 10 30 学号 姓名 年龄 所在系 2.用Create Table建表Course,表结构如下所示: 字段名 类型 长度 CourseID CourseName CourseBefore Varchar Varchar Varchar 15 30 15 含义 课程号 课程名 先行课 3.用Create Table建表Choose,表结构如下所示: 字段名 类型 长度 ID CourseID Score
含义 学号 课程号 成绩 Varchar Varchar Dec 39
20 30 5,2
4.用INSERT语句向表Student中插入3条记录:
ID 00001 00002 00003
5.INSERT语句向表Course中插入3条记录:
CourseID C1 C2 C3
6.用INSERT语句向表Choose中插入7条记录:
ID 00001 00001 00001 00002 00002 00003 00003
7.用SELECT语句求计算机系学生的学号和姓名。
8.用SELECT语句求学生的学号、姓名、选的课程名及成绩。
40
Name 张三 李四 王五 Age 20 19 21 Department 计算机系 计算机系 计算机系 CourseName 计算机引论 PASCAL语言 数据结构 CourseBefore - C1 C2 CourseID C1 C2 C3 C1 C2 C1 C3 Score 95 80 84 80 85 78 70