实验2:库级约束和基本表的数据操作
一、目的和要求
1. 掌握规则的创建、使用和删除方法。 2. 掌握默认对象的创建、使用和删除方法。
3. 学会在图形用户界面中对表进行插入、修改和删除数据操作。 4. 学会使用T-SQL语句对表进行插入、修改和删除数据操作。 5. 掌握SELECT语句的各种查询语句。
二、 实验准备
1.了解规则/默认对象的创建和删除的方法。 2.了解绑定规则/默认对象的具体使用方法。 3.了解图形用户界面中对表的各种操作方法。
4.了解T-SQL中用于对表数据进行插入(INSERT)、修改(UPDATE)和删除(DELETE)命令的用法。
5.了解SELECT语句的各种查询语句。
三、 实验内容
1.利用SQL语言创建,验证和删除规则。(10分,每小题5分)
(1)创建一个ssex_rule规则(create rule),将其绑定(sp_bindrule)到S表的ssex性别字段上(请验证该规则生效,保证了输入的性别只能是“男”或者“女”)。
(2)删除ssex_rule规则(注意:规则已绑定到ssex表的性别字段上,需要先解除原有的绑定sp_unbindrule, drop rule)。
2.利用SQL语言创建,验证和删除默认值。(10分,每小题5分)
(1)创建一个ssex_def默认对象(create default),将其绑定
(sp_bindefault)到S表的ssex性别字段上,使其默认值为“男”(请验证该默认值生效)。
(2)删除ssex_def(注意:默认对象已绑定到S表的ssex性别字段上,需要先解除原有的绑定sp_unbindefault, drop default)。
3.在图形用户界面中对表中的数据进行更新操作。(6分,每小题2分)
(1)按照P75页所示数据,输入四张表中的数据。 (2)修改S表的任意一条数据 (3)删除S表的任意一条数据。
4.用T-SQL语句对表中的数据进行更新操作。(12分,每小题3分)
(1)P127页 5题的8-11小题。
5.用T-SQL语句完成下面的数据查询(52分,每小题4分)
(1)P127页 第4题。(5道小题)
(2)P127页 第5题的1-7小题。(7道小题)
(3)查询这样的工程:供给该工程的零件P1的平均供应量大于供给工程J1的任何一种零件的最大供应量。
6.针对实验一创建的Student数据库进行下面的数据查询(10分,每小题5分)
(1)求不选修C语言课程的学生学号。
(2)求这样的学生姓名:该学生选修了全部课程并且其中一门课在90分以上。
四、 实验帮助
1、
规则
规则的含义
a) 规则是绑定到列上的数据库对象,用来指定列可以接受哪些数据值。
b) 规则是实现域完整性的方法之一。 规则与check约束的区别
c) check约束是用create table语句在建表时指定的,而规则是要用create rule语句创建,且可作为单独的数据库对象来使用。
d) 在一列上只能使用一个规则,但可以使用多个check约束
e) 一个规则可以应用于多个列,而check约束只能应用于它所定义的列。
2、
默认值对象
定义
a) 默认值就是当用户向表中添加数据时,没有明确地给出,而由SQL Server自动指派的值。
b) 默认值可以定义为数据库对象,使用时需将其绑定到特
定的列上。
默认值约束与默认值对象的区别
c) 默认值约束是用create table语句创建表时,使用default子句为表中的列提供默认值。
d) 默认值对象是用create default语句来创建的,使用时须将它绑定到列上。
3、
表的数据操作 修改数据
? 语法(课本P117): UPDATA <表名>
SET <列名>=<表达式>[,<列名>=<表达式>… [WHERE <条件>]; 删除数据 ? 语法: DELETE FROM <表名> [WHERE <条件>]
插入数据 ? 语法: INSERT
INTO <表名> [ ( <属性列1>[,<属性列2>…] VALUS (<常量1> [ , <常量2>]…);
4、
查询
语法:
SELECT [ALL|DISTINCT]<目标列表达式>[别名][,<目标列表达
式>[别名]…
FROM <表名或视图名>[别名][,<表名或视名>[别名]…
[WHERE <条件表达式>]
[GROUP BY <列名1> [HANING <条件表达式>] ]
[ORDER BY <列名2> [ASC|DESC] ]