第1章 关系型数据库简介 1
目录 1
SQL Server概述 2
SQL Server的特性 2
客户/服务器体系结构 2
结构化查询语言 3
SQL Server中的数据类型 4
SQL Server企业版安装 4
SQL Server常见的版本 4
操作系统要求 5
安装、运行SQL Server的硬件需求 5
详细安装过程 6
SQL Server系统数据库与系统表 9
SQL Server系统数据库 9
SQL Server系统表 9
运行脚本文件安装数据库和表 10
小结 11
第2章 查询数据库 13
案例2.1 14
显示表的特定属性 14
知识点1:SELECT语句 16
知识点2:选择指定列 17
知识点3:选择所有列 17
知识点4:使用文字 17
显示带用户友好的列标题 18
案例2.2 18
知识点:显示带用户定义标题的列 19
案例2.3 20
显示表的所选行 20
知识点:SELECT…WHERE语句 21
算术运算符 21
显示满足多条件的行 22
案例2.4 22
知识点:逻辑运算符 24
基于条件的查找 25
比较运算符 25
范围运算符 26
列表运算符 27
独立实践 29
小结 29
第3章 检索结果集 31
基于模式匹配检索行 32
案例3.1 32
知识点:串运算符LIKE与通配符 33
显示带下落不明值的行 34
案例3.2 34
知识点:ISNULL和ISNOTNULL关键字 35
以特定次序显示数据 36
案例3.3 36
知识点:ORDER BY子句 37
显示顶部几行 38
案例3.4 38
知识点:TOP关键字 39
DISTINCT关键字 39
使用DISTINCT消除重复项 39
在聚合函数中使用DISTINCT 40
显示聚合函数 40
案例3.5 40
知识点:聚合函数 41
案例3.6 43
GROUP BY分组结果集 43
知识点1:GROUPBY子句 44
知识点2:CUBE运算符 46
知识点3:GROUP BYALL 48
COMPUTE汇总行 48
小结 53
独立实践 54
第4章 函数与连接 55
使用串函数以大写形式显示数据 56
案例4.1 56
知识点:串函数 57
使用Date函数加入日期 58
案例4.2 58
知识点:日期函数 59
使用数学函数舍入值 62
案例4.3 62
知识点:数学函数 63
转换数据类型 66
CAST和CONVERT函数 66
连接 67
案例4.4 68
使用内连接显示两个表中的数据 68
知识点:内连接 69
使用外连接显示两个表中的数据 71
案例4.5 71
知识点:外连接 72
进一步介绍连接 73
交叉连接 73
等值连接 73
自连接 74
自然连接 74
小结 75
独立实践 75
第5章 使用子查询和管理数据库 77
子查询 78
使用另一个查询中的查询 78
案例5.1 78
进一步关于子查询 80
带有IN子句的子查询 80
带有EXIST子句的子查询 81
嵌套子查询 82
带有聚集函数的子查询 82
子查询限制 82
关联子查询 83
带修改后的比较运算符的查询 84
抽取数据到另一个表 85
案例5.2 85
知识点:SELECT INTO语句 86
合并两张表中的数据 87
案例5.3 87
知识点:合并运算符UNION 89
系统数据库 91
数据库 91
系统表 92
文件 92
文件组 93
创建数据库 93
修改数据库 97
查看数据库 100
重命名数据库 100
删除数据库 100
小结 101
修改和显示数据库选项 101
独立实践 102
第6章 创建表和实施数据完整性 103
创建数据库 104
创建表 105
案例6.1 105
知识点1:CREATETABLE语句创建表 110
删除表 112
案例6.2 112
知识点2:INSERT语句插入行 112
知识点:DROPTABLE语句抹去表 113
用户定义的数据类型 114
创建用户定义的数据类型 114
撤销用户定义的数据类型 115
创建用户定义的数据类型 116
案例6.3 116
数据完整性 118
数据完整性 118
创建约束 119
创建约束 119
撤销约束 120
约束的类型 121
PRIMARY KEY(主键)约束 121
UNIQUE(惟一性)约束 123
FOREIGN KEY(外键)约束 125
CHECK(核查)约束 126
DEFAULT(默认)约束 127
使用约束 128
案例6.4 128
小结 131
独立实践 132
第7章 管理表中的数据 135
创建表 136
创建规则来实现约束 137
案例7.1 137
知识点1:CREATE RULE语句创建规则 139
知识点2:DROP RULE语句删除规则 140
知识点3:将规则约束到列 141
知识点4:取消约束规则 142
创建默认 142
案例7.2 142
知识点3:将默认约束到列 144
知识点2:DROPDEFAULT语句删除默认 144
知识点1:CREATE DEFAULT语句创建默认 144
知识点4:取消约束默认 145
维护表中的数据 146
数据操纵语言 146
在表中插入行 146
案例7.3 146
知识点:INSERT语句插入行 148
在表中更新行 149
案例7.4 149
知识点:UPDATE语句更新行 150
在表中删除行 152
案例7.5 152
知识点1:DELETE语句删除行 152
知识点2:TRUNCATETABLE语句删除所有行 153
把现有表中的数据存储到新表 153
案例7.6 153
知识点1:SELECTINTO语句产生新表 154
知识点2:INSERT INTO语句插入行 155
小结 155
独立实践 156
第8章 实现索引 159
索引概述 160
使用索引的优点 160
使用索引的缺点 160
索引的种类 160
优化查询执行 163
案例8.1 163
知识点:CREATEINDEX语句创建索引 165
索引调节向导 166
案例8.2 167
使用索引调节向导 167
索引放大器(Enhancements) 170
填充因子(Fill Factor) 170
Pad_Index 171
Unique索引中NULL的含义 171
DBCC SHOWCONTIG 172
DBCC INDEXDEFRAG 172
索引的选择 173
索引使用准则 173
小结 174
独立实践 175
第9章 实现视图和SQL编程 177
视图概述 178
视图的优点 179
创建视图 180
案例9.1 180
知识点:CREATE VIEW语句创建视图 182
撤销、改变和重命名视图 183
撤销视图 183
改变视图 183
重命名视图 184
案例9.2 185
使用视图修改数据 185
SQL Server编程 186
批量 187
变量 187
打印消息 188
注解 189
控制流语句 189
使用IF…ELSE语句 190
案例9.3 190
知识点1:IF…ELSE语句 191
知识点2:BEGIN…END语句 192
使用CASE…END语句 193
使用WHILE语句 196
BREAK和CONTINUE语句 197
小结 197
独立实践 198
第10章 实现存储过程 201
存储过程概述 202
存储过程的好处 202
过程的类型 202
案例10.1 203
提高批量语句的执行速度 203
知识点1:CREATE PROCEDURE语句 205
知识点2:EXECUTE语句 205
创建类属存储过程 206
案例10.2 206
知识点:创建带输入参数的存储过程 207
修改存储过程 208
案例10.3 208
知识点:ALTER PROCEDURE语句 210
案例10.4 211
通知客户执行成功 211
知识点:RETURN关键字 213
一个过程调用另一个过程 213
案例10.5 213
返回多个输出参数值 214
案例10.6 214
知识点1:OUTPUT关键字 216
知识点2:RECOMPILE和ENCRYPTION选项 217
知识点3:DROP PROCEDURE语句 217
小结 217
独立实践 218
第11章 实现触发器 221
使用INSERT触发器 222
案例11.1 222
知识点:INSERT触发器 224
使用DELETE触发器 225
案例11.2 225
知识点:DELETE触发器 227
使用UPDATE触发器 227
案例11.3 227
知识点:UPDATE触发器 229
案例11.4 230
修改触发器 230
知识点1:ALTER TRIGGER命令 232
知识点2:RAISERROR命令 232
撤销触发器 233
案例11.5 233
知识点:DROP TRIGGER 234
通过触发器加强数据的完整性 235
触发器和数据完整性 235
AFTER触发器 236
多触发器 236
INSTEAD OF触发器 237
小结 237
独立实践 238
第12章 实现事务处理和游标 239
使用事务确保数据的一致性 240
案例12.1 240
知识点:事务 241
回滚事务撤销改变 242
案例12.2 242
知识点:ROLLBACKTRANSACTION语句回滚事务 244
回滚事务的一部分 245
案例12.3 245
知识点:SAVE TRANSACTION语句保存事务 247
体验上锁的用法 247
案例12.4 248
知识点1:上锁 250
知识点2:事务的并发性 250
知识点3:并发性问题 250
知识点4:理解SQLServer中的上锁 251
死锁 254
设置死锁优选级 254
设置DEADLOCK_PRIORITY 254
定制LOCK_TIMEOUT 255
使用游标把指定属性作为变量显示 255
案例12.5 255
知识点1:游标 257
知识点2:游标的结构 257
知识点3:声明游标 257
知识点5:取数据 258
知识点4:打开游标 258
知识点6:关闭游标 259
知识点7:解除分配的游标 259
小结 260
独立实践 261
第13章 企业管理器和复制策略 263
企业管理器 264
定义运行SQL Server的服务器组 264
注册服务器 265
使用Enterprise Manager中提供的不同工具 267
管理SQL Server数据库 267
使用SQL Server企业管理器 268
案例13.1 268
复制策略 271
复制的类型 272
复制模型的成分 272
复制中服务器的角色 272
复制模型 273
数据复制的要诀 275
小结 275
独立实践 276