《SQL Server 2008宝典 第2版》PDF下载

  • 购买积分:22 如何计算积分?
  • 作  者:刘智勇,刘径舟等编著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2011
  • ISBN:9787121129896
  • 页数:804 页
图书介绍:本书全面介绍了SQL Server 2008各方面的知识,全书由6部分组成:第1部分为数据库的基础篇,第2部分为SQL Server 2008的准备篇,第3部分为SQL Server 2008的基本操作篇,第4部分为数据库管理篇,第5部分为SQL Server高级技术,第6部分为SQL Server 2008改进篇。本书适合SQL Server 2008的初学者学习,也适合于数据库的管理人员与开发人员阅读和参考。

第1部分 基础篇 1

第1章 认识数据库 2

1.1数据库的类型 2

1.1.1结构型数据库 2

1.1.2网络型数据库 2

1.1.3关系型数据库 2

1.1.4面向对象型数据库 3

1.2数据库的基本概念 3

1.2.1数据 3

1.2.2数据库 3

1.2.3数据库管理系统 3

1.2.4数据库系统 3

1.3常见的数据库对象 3

1.3.1表与记录 4

1.3.2主键与外键 4

1.3.3索引 4

1.3.4约束 5

1.3.5视图 5

1.3.6关系图 5

1.3.7默认值 5

1.3.8规则 5

1.3.9存储过程 6

1.3.10触发器 6

1.3.11用户和角色 6

1.4数据库管理系统的基本功能 6

1.4.1定义数据 6

1.4.2处理数据 6

1.4.3保证数据安全 6

1.4.4备份和恢复数据 6

1.5 SQL语言简介 6

1.5.1 SQL语言的历史 7

1.5.2 SQL语言的优点 7

1.5.3 SQL语言分类 7

1.6数据库系统的用户 8

1.7小结 8

第2章 SQL Server 2008简介及安装 9

2.1 SQL Server 2008简介 9

2.1.1 SQL Server 2008数据平台 8

2.1.2使用SQL Server 2008的优势 10

2.2 SQL Server 2008的新特性 10

2.3 SQL Server 2008的新功能 11

2.3.1可信任性 11

2.3.2开发和管理生产效率 12

2.3.3商业智能 13

2.4 SQL Server 2008各版本比较 15

2.4.1可扩展性 15

2.4.2高可用性 15

2.4.3安全性 16

2.4.4复制 16

2.4.5可管理性 16

2.4.6管理工具 16

2.4.7开发工具 17

2.4.8可编程性 17

2.4.9空间和位置服务 17

2.4.10 IntegrationServices 18

2.4.11数据仓库创建 18

2.4.12数据仓库规模和性能 18

2.4.13多维分析 19

2.4.14数据挖掘 19

2.4.15报表 19

2.5安装SQL Server 2008的系统要求 20

2.5.1 CPU与内存要求 20

2.5.2硬盘空间要求 20

2.5.3操作系统要求 20

2.5.4其他要求 22

2.6安装SQL Server 2008 23

2.7升级到SQL Server 2008 33

2.7.1升级之前要考虑的问题 33

2.7.2升级注意事项 34

2.7.3使用SQL Server 2008升级顾问 35

2.7.4升级到SQL Server 2008 38

2.8小结 40

第2部分 准备篇 41

第3章 初识SQL Server 2008 42

3.1服务器上的后台服务 42

3.1.1 SQL Server服务 43

3.1.2 SQL Server Active Directory Helper服务 43

3.1.3 SQL Server Agent服务 43

3.1.4 SQL Server Analysis Services服务 43

3.1.5 SQL Server Browser服务 44

3.1.6 SQL Server FullText Search服务 44

3.1.7 SQL Server Integration Services服务 44

3.1.8 SQL Server Reporting Services服务 44

3.1.9 SQL Server VSS Writer服务 45

3.2客户端管理工具 45

3.2.1 SQL Server Management Studio企业管理器 45

3.2.2 Reporting Services配置 45

3.2.3 SQL Server Configuration Manager配置管理器 47

3.2.4 SQL Server错误和使用情况报告 48

3.2.5 SQL Server Profiler探查器 49

3.2.6数据库引擎优化顾问 50

3.2.7 Visual Studio 2008 52

3.2.8 SQL Server Business Intelligence Development Studio工具 52

3.3 SQL Server Management Studio 52

3.3.1认识SQL Server Management Studio的界面 53

3.3.2更改SQL Server Management Studio的界面布局 53

3.3.3使用查询编辑器 53

3.3.4利用编辑器自动生成查询语句 54

3.3.5脱机编写SQL语句后连接到服务器 55

3.3.6全屏显示查询编辑器 55

3.3.7使用模板编写SQL语句 56

3.3.8创建自定义模板 57

3.3.9使用项目脚本和解决方案 58

3.4示例数据库 59

3.4.1 SQL Server 2008示例数据库 59

3.4.2本书示例数据库 61

3.5小结 61

第3部分 基础操作篇 63

第4章 数据库服务器管理 64

4.1数据库服务器的工作模式 64

4.1.1 C/S模式 64

4.1.2 B/S模式 65

4.2连接与断开数据库服务器 65

4.2.1用SQL Server Management Studio连接服务器 65

4.2.2在已注册的服务器中添加服务器组与服务器 68

4.2.3使用对象资源管理器连接服务器 72

4.2.4通过服务器注册连接到服务器 73

4.2.5断开与数据库服务器的连接 73

4.3使用配置管理器配置SQL Server服务 74

4.3.1启动/停止/暂停/重新启动服务 74

4.3.2配置服务的启动模式 76

4.3.3更改登录身份 77

4.3.4 SQL Server 2008使用的网络协议 78

4.3.5为SQL Server 2008配置共享内存协议 79

4.3.6为SQL Server 2008配置管道协议 80

4.3.7为SQL Server 2008配置TCP/I P协议 84

4.3.8配置客户端网络协议的使用顺序 86

4.3.9隐藏实例 87

4.4配置远程SQL Server服务 88

4.4.1配置远程SQL Server服务的权限 89

4.4.2用SQL Server Management Studio停止和启动远程SQL Server服务 89

4.4.3通过已注册的服务器启动远程SQL Server服务 91

4.4.4使用SQL Server配置管理器远程管理SQL Server服务 91

4.5配置SQL Server 2008服务器 92

4.5.1服务器属性的常规设置 92

4.5.2服务器属性的内存设置 93

4.5.3服务器属性的处理器设置 94

4.5.4服务器属性的安全性设置 96

4.5.5服务器属性的连接设置 97

4.5.6服务器属性的数据库设置 98

4.5.7服务器属性的高级选项设置 99

4.5.8服务器属性的权限设置 100

4.6通过日志查看服务器的运行情况 101

4.6.1在事件查看器中查看服务器的运行情况 101

4.6.2通过日志查看器查看SQL Server日志 102

4.6.3在LOG文件夹中查看SQL Server错误日志 103

4.7小结 104

第5章 数据库管理 105

5.1创建数据库前的准备 105

5.1.1数据库命名规则 105

5.1.2创建数据库需要的权限 106

5.1.3数据库的所有者 106

5.1.4数据库的上限 106

5.1.5数据库文件和文件组 106

5.1.6记录数据库操作的事务日志 106

5.1.7数据库状态 107

5.2在SQL Server Management Studio中创建数据库 107

5.3使用Create database语句创建数据库 113

5.3.1基本语法 113

5.3.2 T -SQL中的语法约定 114

5.3.3参数讲解 115

5.3.4 Create database语句需要注意的功能 116

5.3.5举例说明 116

5.3.6使用模板 119

5.4修改数据库设置 122

5.4.1使用SQL Server Management Studio修改数据库设置 122

5.4.2查看数据库的基本信息 123

5.4.3增加、删除与修改数据库文件 123

5.4.4修改数据库的所有者 124

5.4.5设置全文索引 125

5.4.6增加、删除与修改文件组 126

5.4.7修改数据库的排序规则 127

5.4.8修改数据库的兼容性 128

5.4.9限制用户的访问 128

5.4.10设置用户及角色对数据库的使用权限 128

5.4.11修改数据库名称 130

5.5使用Alter database语句修改数据库 131

5.5.1基本语法 131

5.5.2参数说明 131

5.5.3 Alter database语句的注意事项 134

5.5.4典型案例 134

5.6分离与附加数据库 136

5.6.1分离数据库 136

5.6.2附加数据库 139

5.7脱机和联机数据库 143

5.7.1脱机数据库 143

5.7.2联机数据库 144

5.8删除数据库 145

5.8.1在SQL Server Management Studio中删除数据库 145

5.8.2用Drop database语句删除数据库 146

5.9收缩数据库 146

5.9.1自动收缩数据库 147

5.9.2手动收缩数据库 147

5.9.3手动收缩数据库文件 149

5.10编写数据库脚本 151

5.11小结 153

第6章 数据表管理 154

6.1数据表简介 154

6.1.1数据表的分类 155

6.1.2认识列 155

6.2数据类型 155

6.2.1精确数字型 156

6.2.2近似数字型 157

6.2.3日期和时间型 157

6.2.4字符串型 157

6.2.5 Unicode字符串型 158

6.2.6二进制字符串型 158

6.2.7其他数据类型 159

6.2.8用户自定义型 159

6.3在SQL Server Management Studio中创建表 160

6.3.1定义数据表的字段和主键 160

6.3.2设置默认值 162

6.3.3设置标识列 162

6.3.4建立表与表之间的关系 163

6.3.5创建索引 166

6.3.6创建约束 167

6.3.7设置数据表所在文件组 169

6.4用T-SQL语言创建表 170

6.4.1基本语法 170

6.4.2参数说明 170

6.4.3创建新表 175

6.4.4创建标识字段 176

6.4.5创建带标识种子和标识增量的标识字段 176

6.4.6创建非Null字段 176

6.4.7字段的默认值 177

6.4.8将创建的表放在文件组中 177

6.4.9使用Check约束 177

6.4.10设置字段的排序规则 178

6.4.11创建外键 178

6.4.12设置外键的更新规则和删除规则 178

6.4.13创建Unique约束 179

6.4.14创建计算列 179

6.4.15设置数据表的约束 180

6.4.16 Create table语句的注意事项 180

6.5在SQL Server Management Studio中修改表 180

6.5.1修改数据表名 180

6.5.2插入、移动和删除数据表的字段 181

6.5.3修改字段数据类型 182

6.5.4修改主键、外键、索引和约束 182

6.5.5修改数据表属性 182

6.6用T-SQL语言修改数据表结构 184

6.6.1基本语法 184

6.6.2参数说明 184

6.6.3修改字段属性 189

6.6.4添加字段 189

6.6.5添加字段并设置字段属性 189

6.6.6删除字段 189

6.6.7添加约束 189

6.6.8禁用约束 190

6.6.9启用约束 190

6.6.10删除约束 190

6.6.11设置主键 190

6.6.12修改字段名和数据表名 191

6.6.13 Create table语句的注意事项 191

6.7在SQL Server Management Studio中删除表 191

6.8用Drop table删除数据表 194

6.9编写表脚本 194

6.10数据库关系图的使用 195

6.10.1创建数据库关系图并添加数据表 195

6.10.2添加相关联的数据表 197

6.10.3更改数据表的显示模式 197

6.10.4在关系图中删除数据表 198

6.10.5建立和删除表与表之间的关联 198

6.10.6保存部分修改过的数据表 199

6.10.7在关系图中创建数据表 200

6.10.8在关系图中修改字段属性 201

6.10.9在关系图中设置或修改表的外键与约束 201

6.11临时表简介 202

6.12已分区表简介 203

6.13小结 203

第7章 数据(记录)操作 204

7.1在SQL Server Manaqement Studio中查看记录 204

7.1.1选择前1000行 204

7.1.2回前几条记录 204

7.2在SQL Server Management Studio中插入记录 205

7.3用Insert语句插入记录 207

7.3.1基本语法 207

7.3.2参数说明 207

7.3.3简单的插入语句 208

7.3.4按表中不同字段顺序插入记录 208

7.3.5插入值少于字段数的记录 209

7.3.6在标识列字段里插入字段内容 209

7.3.7从数据表中查询记录并插入到另一个表中 209

7.3.8从数据表中查询部分字段记录并插入到另一个表中 210

7.3.9从数据表中查询记录插入其他表并为字段添加固定内容 210

7.3.10在Insert语句中使用exec子句 211

7.3.11在数据中只插入默认值 211

7.4插入记录的注意事项 211

7.5用Update语句更新记录 212

7.5.1基本语法 212

7.5.2参数说明 213

7.5.3简单的更新语句 214

7.5.4使用计算值更新记录 214

7.5.5引用其他表里的字段值更新记录 214

7.5.6使用top子句更新记录 215

7.6在SQL Server Management Studio中删除记录 215

7.7用Delete语句删除记录 215

7.7.1基本语法 215

7.7.2参数说明 216

7.7.3简单的删除语句 217

7.7.4删除多条记录 217

7.7.5引用其他表里的字段值来删除记录 217

7.8用Truncate table语句删除记录 217

7.9用Select语句进行查询 218

7.10用Select子句设定查询内容 218

7.10.1基本语法 218

7.10.2参数说明 219

7.10.3查询表中所有列 219

7.10.4查询表中某几列 220

7.10.5为查询添加计算列 220

7.10.6查看最前记录 221

7.10.7查看不重复记录 222

7.10.8查询表中的标识列或GUID列 223

7.11用From子句指定查询哪些表 223

7.11.1基本语法 223

7.11.2参数说明 224

7.11.3简单的From子句 225

7.11.4从两个表中联合查询记录 225

7.11.5从多个表中联合查询记录 227

7.11.6 Join的其他类型 227

7.11.7使用表别名 229

7.11.8表Join自身 230

7.12用Where子句设定查询条件 230

7.12.1基本语法 230

7.12.2参数说明 231

7.12.3单个查询条件 232

7.12.4设置多个查询条件 232

7.12.5在查询条件里使用函数 233

7.12.6查询两个条件之间的记录 233

7.12.7查询字段内容为Null的记录 234

7.12.8将结果集作为查询条件 234

7.12.9模糊查询 235

7.12.10在模糊查询中查询含有通配符的文本 236

7.12.11使用EXISTS关键字 237

7.12.12使用ALL, ANY和SOME关键字 237

7.13使用Order by子句排序 238

7.13.1基本语法 238

7.13.2参数说明 239

7.13.3 按一个字段排序 239

7.13.4 按多个字段排序 239

7.14使用Group by子句分组 239

7.14.1基本语法 240

7.14.2参数说明 240

7.14.3 Group by的基本用法 240

7.14.4在 Group by中使用表达式 241

7.14.5使用with cube 对所有字段进行汇总 241

7.14.6使用with rollup对第一个字段进行汇总 242

7.14.7使用Group by all对所有数据分组 243

7.15使用Having子句在分组中设置查询条件 243

7.15.1基本语法 244

7.15.2使用Having对分组设置查询条件 244

7.16使用Compute子句归类 244

7.16.1基本语法 245

7.16.2参数说明 245

7.16.3使用Compute归类 245

7.16.4使用Compute by归类 246

7.17使用Union子句合并多个查询结果 246

7.17.1基本语法 247

7.17.2参数说明 247

7.17.3使用Union all合并两个查询结果集 248

7.17.4使用Union合并两个查询结果集 248

7.17.5使用Union加入临时数据 248

7.17.6在Union的结果集里排序 248

7.17.7在Union的结果集里分组 249

7.18使用Select into子句为查询结果建立新表 249

7.18.1基本语法 249

7.18.2使用Select into创建一个新表 249

7.18.3在Select into中设置复杂的查询条件 250

7.18.4使用Select into复制表结构 250

7.19在不同的数据库中查询记录 251

7.20 Null字段的处理方法 251

7.20.1使用Null时要注意的事项 251

7.20.2检查字段内容是否为Null 252

7.20.3使用Isnull函数替换Null值 252

7.21 SQL Server 2008语句新增功能 253

7.21.1 Select语句新增功能 253

7.21.2 Insert语句新增功能 253

7.21.3 Update语句新增功能 254

7.21.4 Delete语句新增功能 255

7.22小结 255

第4部分 数据库管理篇 257

第8章 T-SQL程序 258

8.1 T-SQL概述 258

8.1.1什么是T-SQL 258

8.1.2 T-SQL的语法约定 258

8.2数据库对象的引用方法 259

8.2.1引用数据库对象的方法 259

8.2.2架构 260

8.2.3创建自定义架构 261

8.3 T-SQL中的批处理 262

8.3.1一次执行多个T-SQL语句 262

8.3.2使用GO语句分隔多个批 262

8.4 T-SQL中的注释 263

8.4.1--注释 263

8.4.2 /*……*/注释 263

8.5 T-SQL数据类型及转换 264

8.5.1使用Cast转换数据类型 264

8.5.2使用Convert转换数据类型 265

8.5.3隐式数据类型转换 266

8.5.4数据类型转换时的注意事项 267

8.6 T-SQL运算符 267

8.6.1算术运算符 267

8.6.2肤质运算符 268

8.6.3位运算符 268

8.6.4比较运算符 268

8.6.5逻辑运算符 268

8.6.6字符串串联运算符 269

8.6.7一元运算符 269

8.7运算符的优先级 269

8.8 T-SQL中的常量 270

8.8.1字符串常量 270

8.8.2 Unicode常量 2700

8.8.3二进制常量 270

8.8.4 bit常量 271

8.8.5 datetime常量 271

8.8.6 integer常量 271

8.8.7 decimal常量 271

8.8.8 float和real常量 271

8.8.9 money常量 271

8.8.10 uniqueidentifier常量 272

8.8.11在T-SQL中使用常量 272

8.9 T-SQL中的变量 272

8.9.1局部变量 273

8.9.2全局变量 275

8.10 T-SQL的流程控制 277

8.10.1 Begin…End语句 277

8.10.2 If…Else语句 278

8.10.3 While语句 279

8.10.4 Case语句 280

8.10.5 Goto语句 282

8.10.6 Waitfor语句 283

8.10.7 Return语句 284

8.10.8 Try…Catch语句 284

8.10.9 Execute语句 285

8.11 T-SQL的常用函数 287

8.11.1聚合函数 287

8.11.2日期和时间函数 288

8.11.3数学函数 288

8.11.4字符串函数 289

8.11.5文本和图像函数 289

8.11.6配置函数 289

8.11.7游标函数 290

8.11.8元数据函数 290

8.11.9行集函数 291

8.11.10安全函数 291

8.11.11系统统计函数 291

8.11.12其他函数 292

8.12不应使用的关键字 293

8.13小结 295

第9章 视图 296

9.1视图简介 296

9.2创建视图 297

9.2.1在SQL Server Management Studio中创建视图 298

9.2.2使用Create view语句创建视图 299

9.3查看与修改视图 302

9.3.1查看视图 302

9.3.2在SQL Server Management Studio中修改视图 303

9.3.3使用Alter view语句修改视图 303

9.4加密视图 304

9.5限制视图所的表或视图不能更改设计和删除 305

9.6检查视图的数据变动 307

9.7编辑视图中的记录 307

9.7.1编辑视图中的记录的限制 307

9.7.2在SQL Server Management Studio中操作视图记录 308

9.7.3使用Insert,Update和Delete语句操作视图记录 308

9.8删除视图 309

9.8.1在Management Studio中删除视图 309

9.8.2使用Drop view语句删除视图 309

9.9为视图重命名 309

9.10小结 310

第10章 存储过程 311

10.1存储过程简介 311

10.1.1存储过程的概念 311

10.1.2使用存储过程的优点 311

10.1.3存储过程的分类 312

10.2创建存储过程 312

10.2.1使用Create procedure语句创建存储过程 312

10.2.2在SQL Server Management Studio中建立存储过程 314

10.3修改存储过程 316

10.3.1使用Alter procedure语句修改存储过程 316

10.3.2在SQL Server Management Studio中修改存储过程 316

10.3.3修改存储过程名 317

10.4执行存储过程 318

10.5设计存储过程的高级技巧 320

10.5.1设计存储过程时的注意事项 320

10.5.2参数传递的方式 321

10.5.3存储过程的返回值 322

10.5.4不显示影响行数的通知 324

10.5.5临时存储过程 325

10.5.6嵌套调用存储过程 325

10.5.7查看存储过程的依赖关系 326

10.5.8加密存储过程 327

10.5.9查看存储过程的源代码 327

10.5.10设计存储过程组 328

10.6删除存储过程 329

10.6.1使用Drop procedure语句删除存储过程 329

10.6.2在SQL Server Management Studio中删除存储过程 329

10.7常用的系统存储过程 330

10.7.1 sp_help:查看对象信息 330

10.7.2 sp_helpdb:查看数据库信息 330

10.7.3 sp_helpfile:查看数据库文件信息 331

10.7.4 sp_helpfilegroup:查看文件组信息 331

10.7.5 sp_helpindex:查看索引信息 331

10.7.6 sp_helpsort:查看排序及字符集信息 331

10.7.7 sp_helpstats:查看列和索引的统计信息 331

10.7.8 sp_helptext:查看对象内容 332

10.7.9 sp_helptrigger:查看触发器信息 332

10.7.10 sp_lock:查看锁信息 332

10.7.11 sp_monitor:查看系统统计信息 332

10.7.12 sp_rename:修改对象名 332

10.7.13 sp_renamedb:修改数据库名 332

10.7.14 sp_who:查看用户和进程信息 333

10.7.15 sp_columns:查看列信息 333

10.7.16 sp_databases:查看数据库信息 333

10.7.17 sp_fkeys:查看外键信息 333

10.7.18 sp_pkeys:查看主键信息 334

10.7.19 sp_server_info:查看SQL Server信息 334

10.7.20 sp_tables:查看表或视图信息 334

10.7.21 sp_stored_procedures:查看存储过程信息 334

10.8 CLR存储过程 335

10.8.1创建CLR存储过程的步骤 335

10.8.2开启CLR支持 335

10.8.3编写CLR存储过程内容 335

10.8.4将CLR存储过程编译成DLL文件 337

10.8.5注册程序集 337

10.8.6 创建引用程序集的存储过程 338

10.8.7执行CLR存储过程 339

10.9小结 339

第11章 触发器 340

11.1触发器简介 340

11.1.1触发器的概念和作用 340

11.1.2触发器的种类 341

11.2 DML触发器的分类 341

11.3 DML触发器的工作原理 341

11.3.1 After触发器的工作原理 342

11.3.2 Instead Of触发器的工作原理 342

11.4设计DML触发器的注意事项及技巧 342

11.4.1设计触发器的限制 342

11.4.2如何用触发器取得字段修改前和修改后的数据 343

11.4.3使用DML触发器的注意事项 343

11.5设计After触发器 344

11.5.1设计简单的After触发器 344

11.5.2测试触发器功能 346

11.5.3建立触发器的SQL语句 347

11.6设置After触发器的激活顺序 350

11.7触发器的嵌套 352

11.8触发器的递归 354

11.9设计Instead Of触发器 355

11.9.1 Instead Of触发器的使用范围 355

11.9.2设计简单的Instead Of触发器 355

11.10查看DML触发器 356

11.10.1在SQL Server Management Studio中查看触发器 356

11.10.2使用系统存储过程查看触发器 357

11.11修改DML触发器 359

11.12删除DML触发器 359

11.13禁用与启用DML触发器 359

11.14 DDL触发器 360

11.15设计DDL触发器 360

11.15.1建立DDL触发器的语句 360

11.15.2测试触发器功能 363

11.16查看与修改DDL触发器 365

11.17触发器的应用技巧 366

11.17.1如何知道触发器修改了多少条记录 366

11.17.2如何知道插入记录的自动编号是多少 367

11.17.3如何知道某个字段是否被修改 367

11.17.4如何返回错误信息 368

11.18小结 370

第12章 索引 371

12.1索引简介 371

12.2索引的结构 371

12.3索引的分类 371

12.3.1聚集索引与非聚集索引 372

12.3.2唯一索引 372

12.3.3复合索引与包含性列索引 373

12.3.4视图索引 373

12.3.5全文索引 373

12.3.6 XML索引 373

12.4系统自动建立的索引 374

12.4.1主键字段 374

12.4.2 Unique字段 374

12.5建立索引的注意事项 375

12.6在SQL Server Management Studio中创建索引 375

12.7使用Create index语句创建索引 379

12.7.1基本语法 379

12.7.2参数说明 380

12.7.3创建简单的索引 380

12.7.4创建简单的复合索引 381

12.7.5创建唯一索引 381

12.7.6创建聚集索引 381

12.7.7创建降序的非聚集索引 381

12.7.8创建包含性列索引 381

12.7.9创建索引并指定其所在的文件组 382

12.7.10创建索引并设置填充因子 382

12.7.11创建索引并设置填充索引 382

12.7.12创建复杂的索引 383

12.8查看与修改索引 383

12.8.1在SQL Server Management Studio中查看与修改索引 383

12.8.2使用sp_helpindex查看索引 385

12.8.3使用sys.indexes视图查看索引信息 385

12.8.4使用Alter index语句修改索引 386

12.9重新生成和重新组织索引 387

12.9.1在SQL Server Management Studio中重新生成索引 388

12.9.2在SQL Server Management Studio中重新组织索引 388

12.9.3使用REBUILD参数重新生成索引 389

12.9.4使用REORGANIZE参数重新组织索引 390

12.9.5使用SQL Server Management Studio查看索引碎片 390

12.9.6使用函数sys.dm_db_index_physical_stats查看索引碎片 391

12.10禁用索引 392

12.10.1在SQL Server Management Studio中禁用索引 392

12.10.2使用DISABLE参数禁用索引 392

12.11重命名索引 393

12.12删除索引 394

12.12.1删除索引的注意事项 394

12.12.2在SQL Server Management Studio中删除索引 394

12.12.3使用Drop index语句删除索引 394

12.13索引视图 394

12.13.1索引视图简介 395

12.13.2创建索引视图 395

12.14小结 395

第13章 用户定义数据类型和函数 396

13.1用户定义数据类型 396

13.1.1创建用户定义数据类型 396

13.1.2使用用户定义数据类型 398

13.1.3删除用户定义数据类型 399

13.2用户定义函数 400

13.2.1用户定义函数与存储过程的比较 401

13.2.2用户定义函数类型 401

13.2.3创建标量值函数 401

13.2.4创建内联表值函数 403

13.2.5创建多语句表值函数 404

13.2.6在SQL Server Management Studio里创建用户定义函数 406

13.2.7查看与修改用户定义函数 407

13.2.8使用用户定义函数 408

13.2.9删除用户定义函数 409

13.3小结 410

第14章 全文索引 411

14.1全文索引简介 411

14.2全文索引常用术语 411

14.3全文索引的体系结构 412

14.4全文目录管理 413

14.4.1创建全文目录 413

14.4.2查看与修改全文目录 414

14.4.3删除全文目录 415

14.5全文索引管理 415

14.5.1创建全文索引的注意事项 415

14.5.2创建全文索引 416

14.5.3查看与修改全文索引 419

14.5.4启用和禁用全文索引 420

14.5.5删除全文索引 420

14.6填充全文索引 420

14.6.1填充全文索引的方式 421

14.6.2填充全文索引 421

14.6.3定时填充全文索引 422

14.7使用全文搜索查询数据 424

14.7.1使用CONTAINS搜索 424

14.7.2使用FREETEXT搜索 428

14.7.3使用CONTAINSTABLE搜索 429

14.7.4使用FREETEXTTABLE搜索 432

14.7.5搜索image字段 432

14.8与全文索引相关的T-SQL语句 433

14.8.1创建全文目录 433

14.8.2更改全文目录属性 433

14.8.3创建全文索引 434

14.8.4更改全文索引属性 435

14.8.5删除全文索引 436

14.8.6删除全文目录 436

14.9小结 436

第15章 游标 438

15.1游标简介 438

15.2游标的基本操作 439

15.2.1定义游标 439

15.2.2打开游标 440

15.2.3读取游标 441

15.2.4关闭和删除游标 441

15.3游标的运用 442

15.3.1用游标处理数据 442

15.3.2全局游标与本地游标 445

15.3.3游标的嵌套 446

15.3.4使用游标变量 447

15.3.5在存储过程中使用游标参数 451

15.4在游标中常用的变量、函数和存储过程 452

15.4.1使用系统全局变量查看游标信息 452

15.4.2使用函数查看游标状态 453

15.4.3使用系统存储过程查看游标属性 454

15.5小结 458

第16章 事务与锁 460

16.1事务简介 460

16.1.1事务的特性 460

16.1.2事务的工作流程 461

16.1.3执行事务的注意事项 462

16.1.4事务的工作原理 462

16.1.5事务执行的模式 463

16.2编写事务 463

16.2.1编写事务的原则 464

16.2.2编写事务 464

16.3嵌套事务 466

16.3.1使用嵌套事务的注意事项 466

16.3.2嵌套事务示例 467

16.3.3获取嵌套的层次 469

16.4事务保存点 471

16.5事务的隔离级别 473

16.6锁简介 473

16.7锁的对象和模式 474

16.8死锁 475

16.9小结 476

第17章 其他数据对象 477

17.1统计信息 477

17.1.1统计信息简介 477

17.1.2查看统计信息 478

17.1.3创建统计信息 481

17.1.4更新统计信息 482

17.1.5删除统计信息 483

17.2同义词 484

17.2.1同义词简介 484

17.2.2创建同义词 484

17.2.3使用同义词与链接服务器 486

17.2.4查看同义词的信息与删除同义词 488

17.3小结 489

第5部分 SQL Server高级技术篇 491

第18章 数据库备份与恢复 492

18.1备份与恢复介绍 492

18.1.1备份类型 492

18.1.2恢复模式 493

18.1.3如何备份数据库 494

18.1.4数据库备份到哪里 495

18.2在SQL Server Management Studio中备份数据库 496

18.3使用T-SQL语言备份数据库 499

18.3.1完整备份与差异备份 499

18.3.2备份文件和文件组 502

18.3.3事务日志备份 503

18.4备份设备管理 504

18.4.1查看备份设备的内容 504

18.4.2通过备份设备来备份数据库 505

18.4.3验证备份的内容 506

18.4.4删除备份设备 507

18.5在SQL Server Management Studio中还原数据库 507

18.5.1还原数据库的方式 508

18.5.2还原数据库前要注意的事项 508

18.5.3还原数据库备份 508

18.5.4还原文件和文件组备份 510

18.5.5使用现有的备份创建新的数据库 511

18.6用T-SQL语言还原数据库 512

18.6.1还原完整备份 512

18.6.2还原差异备份 514

18.6.3还原事务日志备份 515

18.6.4还原文件和文件组备份 515

18.6.5将数据库还原到某个时间点 516

18.6.6将文件还原到新位置上 516

18.7建立自动备份的维护计划 517

18.8小结 519

第19章 系统数据库与用户数据库 520

19.1 SQL Server 2008系统数据库介绍 520

19.1.1 master系统数据库 520

19.1.2 tempdb临时数据库 520

19.1.3 model模板数据库 521

19.1.4 msdb系统数据库 521

19.1.5 resource系统数据库 522

19.2系统表与视图介绍 522

19.2.1 msdb数据库里的表 523

19.2.2系统视图 525

19.2.3系统函数 526

19.3 规划数据库 526

19.3.1数据库文件 526

19.3.2文件组 527

19.3.3计算数据库文件的大小 528

19.4小结 529

第20章 SQL Server 2008的安全 530

20.1 SQL Server 2008的身份验证模式 530

20.2访问权限 532

20.3用户 532

20.3.1添加用户 532

20.3.2使用用户登录 533

20.3.3为用户设置权限 534

20.4角色 538

20.4.1角色简介 538

20.4.2服务器角色 538

20.4.3将用户设为服务器角色成员 539

20.4.4数据库角色 539

20.4.5将用户设为数据库角色成员 540

20.4.6创建用户自定义数据库角色 541

20.4.7应用程序角色 541

20.4.8创建应用程序角色 541

20.4.9 使用应用程序角色 542

20.5架构 543

20.6确保数据库服务器的安全 544

20.7小结 546

第21章 复制与发布 547

21.1复制简介 547

21.1.1什么是复制 547

21.1.2复制的类型 548

21.1.3复制代理 549

21.2发布服务器与发布 550

21.2.1复制的步骤 550

21.2.2创建发布服务器与发布 550

21.2.3修改发布属性 554

21.2.4删除发布 557

21.3订阅服务器与订阅 557

21.3.1创建订阅服务器与订阅 557

21.3.2修改订阅属性 560

21.3.3删除订阅 560

21.4复制监视器 561

21.4.1启动复制监视器 561

21.4.2添加其他发布服务器 562

21.4.3查看发布服务器的信息 563

21.5小结 564

第22章 SQL Server的自动化管理 565

22.1 SQL Server代理 565

22.1.1 SQL Server代理简介 565

22.1.2启动和停止SQL Server代理 566

22.1.3 SQL Server代理的设置 566

22.1.4指定SQL Server代理的登录账户 569

22.2操作员 570

22.3作业 571

22.3.1新建作业 571

22.3.2手动执行作业 574

22.3.3调度作业 574

22.3.4查看历史记录 575

22.3.5 删除、禁用与启用作业 576

22.4警报与通知 576

22.4.1新建警报 576

22.4.2修改警报 579

22.4.3启动、禁用与删除警报 579

22.4.4通知 579

22.5维护计划 580

22.6错误日志 582

22.7小结 583

第23章 SQL Server的性能工具 584

23.1 SQL Server Profiler 584

23.1.1 SQL Server Profiler简介 584

23.1.2新建跟踪 585

23.1.3存储事件记录 586

23.1.4载入事件记录 586

23.1.5新建跟踪模板 586

23.1.6值得注意的功能 587

23.2数据库引擎优化顾问 588

23.2.1数据库引擎优化顾问介绍 588

23.2.2使用数据库引擎优化顾问 588

23.3小结 589

第24章 SQL Server邮件 590

24.1 SQL Mail 590

24.1.1配置SQL Mail 590

24.1.2使用SQL Mail发送电子邮件 593

24.2数据库邮件 594

24.2.1配置数据库邮件 594

24.2.2发送测试邮件 597

24.2.3配置SQL Server代理以使用数据库邮件 598

24.3小结 599

第25章 数据导入与导出 601

25.1 SQL Server导入导出向导 601

25.2数据导入导出 601

25.3数据导入导出时的数据类型转换 604

25.4在不同数据源与目标之间传输数据 604

25.5 小结 606

第26章 Analysis Services 607

26.1 Analysis Services简介 607

26.1.1数据仓库 607

26.1.2数据仓库的结构 608

26.1.3创建数据仓库的步骤 609

26.1.4联机分析处理(OLAP) 609

26.1.5数据挖掘 610

26.2定义数据源 610

26.3定义数据源视图 612

26.4定义多维数据集 614

26.5部署Analysis Services项目 618

26.6查看多维数据集 619

26.7使用客户端软件查看多维数据 620

26.8小结 623

第27章 Reporting Services 624

27.1创建报表服务器项目 624

27.2 创建数据源 625

27.3创建报表 626

27.4发布报表 628

27.5自定义报表信息 629

27.6小结 632

第28章 SQL Server与XML 634

28.1 XML简介 634

28.1.1什么是XML 634

28.1.2使用XML的好处 635

28.1.3 XML的语法 636

28.2 SQL Server中的XML语句 638

28.2.1 FOR XML的Select语句 638

28.2.2简单输出XML 639

28.2.3输出XSD架构 643

28.2.4输出XDR架构 645

28.2.5按路径输出XML 646

28.2.6为输出的XML添加根元素 647

28.2.7 OpenXml函数 648

28.3 XML数据类型 650

28.3.1声明XML数据类型 651

28.3.2为XML类型的变量赋值 651

28.3.3将XML数据插入数据表 653

28.4 XML索引 653

28.4.1 XML索引类型 653

28.4.2使用SQL Server Management Studio创建XML索引 654

28.4.3使用T-SQL语句创建XML索引 656

28.5操作XML 657

28.5.1 Query方法 657

28.5.2 Value方法 658

28.5.3 Exist方法 659

28.5.4在XML实例中插入节点 660

28.5.5在XML实例中修改节点的值 661

28.5.6在XML实例中删除节点 664

28.6小结 664

第29章 客户端及应用程序访问SQL Server的方式 666

29.1客户端访问SQL Server的方式 666

29.1.1 ODBC接口 666

29.1.2 OLE DB接口 668

29.1.3 ADO组件 668

29.2从Access访问SQL Server 668

29.3使用ASP.NET程序访问SQL Server 669

29.3.1通过ODBC接口访问SQL Server 669

29.3.2通过OLE DB接口访问SQL Server 670

29.4小结 671

第6部分 SQL Server 2008改进篇 673

第30章 对T-SQL的改进 674

30.1兼容级别设置 674

30.1.1语法 674

30.1.2使用SQL Server Management Studio更改兼容级别 675

30.1.3数据库兼容的注意事项 676

30.1.4兼容级别导致的影响 677

30.1.5兼容级别示例 678

30.1.6兼容级别对ORDER BY的影响示例 679

30.2复合运算符 681

30.2.1+=运算符 681

30.2.2-=运算符 681

30.3 Convert函数 682

30.3.1语法 682

30.3.2二进制与字符十六进制转换示例 683

30.4日期和时间功能 683

30.4.1语法 683

30.4.2 ISO周-日示例 684

30.4.3日期功能的注意事项 684

30.5 Grouping Sets分组 685

30.5.1语法 685

30.5.2注意事项 686

30.5.3 Grouping Sets分组示例 686

30.6 MERGE语句 687

30.6.1语法 687

30.6.2 MERGE合并数据源示例 690

30.7 SQL依赖关系报告 691

30.8表值参数 692

30.8.1创建用户表类型 692

30.8.2使用表值参数示例 692

30.8.3使用表值参数进行数据传递的注意事项 692

30.9 T-SQL行构造函数 693

30.10小结 694

第31章 数据存储和数据类型 695

31.1数据存储的改进 695

31.1.1表和索引的压缩存储 695

31.1.2 FILESTREAM存储 701

31.1.3稀疏列和列集 705

31.1.4空间数据的存储、方法和索引 710

31.2新增的数据类型 710

31.2.1 HierarchylD层次化数据 711

31.2.2日期和时间类型 715

31.2.3空间数据类型 718

31.2.4用户定义表类型 723

31.2.5用户定义类型 727

31.3对非关系数据类型的支持 730

31.3.1非关系数据类型概述 731

31.3.2文档和多媒体 731

31.3.3地理信息数据 731

31.3.4 XML数据 732

31.4小结 734

第32章 安全性的增强 735

32.1数据加密 735

32.1.1新的加密辅助函数 735

32.1.2透明数据加密 736

32.1.3外部密钥管理 743

32.2数据审核 743

32.2.1数据审核概述 743

32.2.2进行数据审核 744

32.3身份验证的改进 752

32.3.1基本身份验证 752

32.3.2端点身份验证 752

32.4小结 753

第33章 SQL Server Integration Service 754

33.1 SSIS简介 754

33.1.1 SSIS的概述 754

33.1.2 SQL Server 2008中SSIS的改进 755

33.2 SSIS结构 756

33.2.1 SSIS的用途 756

33.2.2 SSIS包的组成 757

33.3 SSIS的开发 762

33.3.1设计和实现包 762

33.3.2部署包 767

33.4小结 772

第34章 分析服务的改进 773

34.1多维数据库解决方案设计的改进 773

34.1.1 AMO警示 773

34.1.2维度设计 775

34.1.3多维数据集 777

34.1.4聚合设计 780

34.2资源监控及管理的改进 783

34.2.1资源监控 783

34.2.2块计算 783

34.2.3回写性能 783

34.2.4备份可扩展性 784

34.3小结 784

第35章 报表服务的改进 785

35.1新增报表制作功能 785

35.1.1新增的数据源类型 785

35.1.2增强的图表数据区域 785

35.1.3仪表数据区域的使用 790

35.1.4 Tablix数据区域 792

35.1.5文本框增强功能 797

35.1.6报表设计器 798

35.2报表处理 799

35.2.1增强的报表导出格式 799

35.2.2报表的部署 799

35.3小结 802