A.聚集索引B.非聚集索引C.主键索引D.唯一索引 二、填空题
1.SQL Server 提供了主键约束和外键约束共同维护( )完整性。 2.SQL Server 提供了( )约束和唯一性约束共同维护实体完整性。 3.在一个表上,最多可以定义( )个聚集索引。 4.在数据库标准语言SQL 中,空值是用( )表示。
5.为了使索引键的值在基本表中唯一,在创建索引的语句中应使用保留字( )。 6.SQL Server 中,表分为临时表和永久表,通常数据存储在( )表中。 7.永久表存储在用户数据库中,而临时表存储在( )数据库中。 8.索引是在列上定义的数据库对象,索引最多包含有( )个列。 9.创建主键约束自动创建( )索引。
10.使用( )命令可以将规则绑定到指定的表的列。
11.( )是对数据库中一列或多列的值进行排序的一种逻辑结构。 12.与check 约束基本功能相同的数据库对象是( )。
13.索引是在基本表的列上建立的一种数据库对象,使用它能够加快数据的( )速度。
14.表是由行和列组成的,行有时也称为记录或元组,列有时也称为( )或属性。
15.限制输入到列的值的范围,应使用( )约束。 三、实践题
1.利用企业管理器在library 数据库中创建“图书”表和“出版社”表,两表的表结构分
别定义如表5-16 和表5-17 所示。
表5-16 “图书”表结构表5-17 “出版社”表结构 列名数据类型是否为空列名数据类型是否为空 书号char(6) 否出版社编号char(6) 否
书名varchar(20) 否出版社名称varchar(30) 否 数量int 电话char(13) 位置varchar(20) 邮编char(6) 第7 章Transact-SQL 程序设计 第14 页共30 页 14
出版社编号char(6) 地址varchar(30)
2.利用T-SQL 语句在library 数据库中创建“学生”表和“借阅”表,两表的结构分别定
义如表5-18 和表5-19 所示。
表5-18 “学生”表结构表5-19 “借阅”表结构 列名数据类型是否为空列名数据类型是否为空 学号char(8) 否学号char(8) 否 姓名varchar(20) 否书号char(6) 否 性别char(2) 借书日期datetime 院系varchar(20) 还书日期datetime
(1)利用T-SQL 语句在“学生”表中增加列民族,数据类型为varchar(6),默认值为汉。
(2)利用T-SQL 语句在“学生”表中修改列姓名,数据类型为char(6),学号为主键。
(3)利用T-SQL 语句在“借阅”表中增加列“到期日期”,数据类型为datetime。 (4)利用T-SQL 语句在“借阅”表中添加一默认约束,借书日期默认值为getdate()。
(5)利用T-SQL 语句为“借阅”表的列“学号”增加一外键约束于“学生”表的列“学 号”。
(6)在“学生”表中输入表5-20 中的数据。 表5-20 要插入的数据 学号姓名性别院系
08010110 张三男计算机系 08021102 李四女管理系 08032306 王五男电子系 08043008 钱六女机械系
(7)删除(1)和(4)的默认约束。
(8)创建一个规则,限定长度为13,并且以“0551-2159”开头的电话号码,规则对象
名为phone_rule。
(9)将规则对象phone_rule 绑定到表“出版社”的列“电话”上。 (10)创建一个用户自定义数据类型“编号”,来源于varchar(20),且属性不能为空。
习题六 一、选择题
1.指定当前数据库的操作有多种,下列不能确定mydb 为当前数据库的操作是( )。
A.在查询窗口输入use mydb/go 后执行 B.打开工具栏中数据库下拉列表选择mydb C.单击菜单栏“文件/打开” 第7 章Transact-SQL 程序设计 第15 页共30 页 15
D.单击菜单栏“查询/更改数据库”
2.delect 语句中的where 子句的基本功能是( )。 A.指定需查询的表的存储位置B.指定输出列的位置 C.指定行的筛选条件D.指定列的筛选条件
3.当使用模式查找like '_a%'时,则可能的结果是( )。 A.aili B.bai C.bba D.cca
4.select 语句中“where 成绩between 80 and 90”表示成绩在80~90 之间,且( )。
A.包括80 岁和90 岁B.不包括80 岁和90 岁
C.包括80 岁但不包括90 岁D.包括90 岁但不包括80 岁 5.以下能够进行模糊查询的关键字为( )。 A.order by B.like C.and D.escape