《SQL Server 2012宝典》PDF下载

  • 购买积分:18 如何计算积分?
  • 作  者:廖梦怡,王金柱等编著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2014
  • ISBN:9787121220135
  • 页数:614 页
图书介绍:本书全面介绍SQL Server 2012各方面的知识,全书由5部分组成:第1部分为数据库的基础篇;第2部分为SQL Server 2012的准备篇,介绍SQL Server 2012的功能、特性、各版本的比较、安装方法等;第3部分为SQL Server 2012的基本操作篇,介绍如何管理与配置SQL Server 2012服务器;第4部分为数据库管理篇,介绍如何使用T—SQL程序对数据进行复杂的运算;第5部分为SQL Server高级技术和SQL Server 2012的主要新增功能。

第1部分 基础篇 2

第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约束 4

1.3.5视图 5

1.3.6关系图 5

1.3.7默认值 5

1.3.8规则 5

1.3.9存储过程 5

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 2012简介及安装 9

2.1 SQL Server 2012简介 9

2.1.1 SQL Server 2012数据平台 9

2.1.2使用SQL Server 2012的优势 10

2.2 SQL Server 2012的新功能 10

2.2.1可信任性 11

2.2.2开发和管理生产效率 11

2.2.3商业智能 12

2.3 SQL Server 2012各版本介绍及对比 14

2.4安装SQL Server 2012的系统要求 14

2.4.1 CPU与内存要求 14

2.4.2硬盘空间要求 15

2.5安装SQL Server 2012 15

2.6升级到SQL Server 2012 26

2.6.1升级之前要考虑的问题 26

2.6.2升级注意事项 27

2.6.3升级到SQL Server 2012 28

2.7小结 29

第2部分 准备篇 32

第3章 初识SQL Server 2012 32

3.1服务器上的后台服务 32

3.1.1 SQL Server服务 33

3.1.2 SQL Server Active Directory Helper服务 33

3.1.3 SQL Server Agent服务 33

3.1.4 SQL Server Analysis Services服务 33

3.1.5 SQL Server Browser服务 34

3.1.6 SQL Server FullText Search服务 34

3.1.7 SQL Server IntegrationServices服务 34

3.1.8 SQL Server Reporting Services服务 34

3.1.9 SQL Server VSS Writer服务 35

3.2客户端管理工具 35

3.2.1 SQL Server Management Studio企业管理器 35

3.2.2 Reporting Services配置 35

3.2.3 SQL Server Configuration Manager配置管理器 37

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

3.2.5 SQL Server Profiler探查器 39

3.2.6数据库引擎优化顾问 41

3.2.7 Visual Studio 2012 42

3.2.8 SQL Server Business Intelligence Development Studio工具 43

3.3 SQL Server Management Studio 43

3.3.1认识SQL Server Management Studio的界面 43

3.3.2更改SQL Server Magement Studio的界面布局 43

3.3.3使用查询编辑器 44

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

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

3.3.6全屏显示查询编辑器 46

3.3.7使用模板编写SQL语句 46

3.3.8创建自定义模板 48

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

3.4小结 50

第3部分 基础操作篇 52

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

4.1连接与断开数据库服务器 52

4.1.1用SQL Server Management Studio连接服务器 52

4.1.2断开与数据库服务器的连接 54

4.2使用配置管理器配置SQL Server服务 54

4.2.1启动/停止/暂停/重新启动服务 54

4.2.2配置服务的启动模式 57

4.2.3更改登录身份 58

4.2.4 SQL Server 2012使用的网络协议 59

4.2.5为SQL Server 2012配置共享内存协议 59

4.2.6为SQL Server 2012配置TCP/IP协议 61

4.2.7配置客户端网络协议的使用顺序 64

4.2.8隐藏实例 65

4.3配置SQL Server 2012服务器 65

4.3.1服务器属性的常规设置 66

4.3.2服务器属性的内存设置 66

4.3.3服务器属性的处理器设置 68

4.3.4服务器属性的安全性设置 69

4.3.5服务器属性的连接设置 70

4.3.6服务器属性的数据库设置 71

4.3.7服务器属性的高级选项设置 72

4.3.8服务器属性的权限设置 74

4.4小结 74

第5章 数据库管理 75

5.1创建数据库前的准备 75

5.1.1数据库命名规则 75

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

5.1.3数据库的所有者 76

5.1.4数据库的上限 76

5.1.5数据库文件和文件组 76

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

5.1.7数据库状态 77

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

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

5.3.1基本语法 83

5.3.2T-SQL中的语法约定 84

5.3.3参数讲解 85

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

5.3.5举例说明 86

5.3.6使用模板 89

5.4修改数据库设置 92

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

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

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

5.4.4修改数据库的所有者 95

5.4.5设置全文索引 96

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

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

5.4.8修改数据库的兼容性 98

5.4.9限制用户的访问 98

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

5.4.11修改数据库名称 100

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

5.5.1基本语法 101

5.5.2参数说明 101

5.5.3 Alter database语句的注意事项 104

5.5.4典型案例 104

5.6分离与附加数据库 106

5.6.1分离数据库 106

5.6.2附加数据库 109

5.7脱机和联机数据库 113

5.7.1脱机数据库 113

5.7.2联机数据库 114

5.8删除数据库 115

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

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

5.9收缩数据库 116

5.9.1自动收缩数据库 117

5.9.2手动收缩数据库 117

5.9.3手动收缩数据库文件 119

5.10编写数据库脚本 121

5.11小结 123

第6章 数据表管理 124

6.1数据表简介 124

6.1.1数据表的分类 125

6.1.2认识列 125

6.2数据类型 125

6.2.1精确数字型 126

6.2.2近似数字型 127

6.2.3日期和时间型 127

6.2.4字符串型 128

6.2.5 Unicode字符串型 128

6.2.6二进制字符串型 128

6.2.7其他数据类型 129

6.2.8用户自定义型 129

6.3在SQL Server Management Studio中创建表 130

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

6.3.2设置默认值 132

6.3.3设置标识列 132

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

6.3.5创建索引 136

6.3.6创建约束 137

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

6.4用T-SQL语言创建表 140

6.4.1基本语法 140

6.4.2参数说明 140

6.4.3创建新表 145

6.4.4创建标识字段 146

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

6.4.6创建非Null字段 146

6.4.7字段的默认值 147

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

6.4.9使用Check约束 147

6.4.10设置字段的排序规则 148

6.4.11创建外键 148

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

6.4.13创建Unique约束 149

6.4.14创建计算列 149

6.4.15设置数据表的约束 150

6.4.16 Create table语句的注意事项 150

6.5在SQL Server Management Studio中修改表 150

6.5.1修改数据表名 150

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

6.5.3修改字段数据类型 152

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

6.5.5修改数据表属性 152

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

6.6.1基本语法 154

6.6.2参数说明 154

6.6.3修改字段属性 158

6.6.4添加字段 159

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

6.6.6删除字段 159

6.6.7添加约束 159

6.6.8禁用约束 159

6.6.9启用约束 160

6.6.10删除约束 160

6.6.11设置主键 160

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

6.6.13 Alter table语句的注意事项 161

6.7在SQL Server Management Studio中删除表 161

6.8用Drop table删除数据表 164

6.9编写表脚本 164

6.10数据库关系图的使用 165

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

6.10.2添加相关联的数据表 167

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

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

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

6.11临时表简介 169

6.12已分区表简介 170

6.13小结 170

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

7.1在SQL Server Management Studio中查看记录 172

7.1.1选择前1000行 172

7.1.2返回前几条记录 173

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

7.3用Insert语句插入记录 175

7.3.1基本语法 175

7.3.2参数说明 175

7.3.3简单地插入语句 176

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

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

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

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

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

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

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

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

7.4插入记录的注意事项 179

7.5用Update语句更新记录 180

7.5.1基本语法 180

7.5.2参数说明 180

7.5.3简单的更新语句 182

7.5.4使用计算值更新记录 182

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

7.5.6使用top子句更新记录 182

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

7.7用Delete语句删除记录 183

7.7.1基本语法 183

7.7.2参数说明 184

7.7.3简单的删除语句 184

7.7.4删除多条记录 185

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

7.8用Truncate table语句删除记录 185

7.9用Select语句进行查询 186

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

7.10.1基本语法 186

7.10.2参数说明 187

7.10.3查询表中所有列 187

7.10.4查询表中某几列 188

7.10.5为查询添加计算列 188

7.10.6查看最前记录 189

7.10.7查看不重复记录 190

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

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

7.11.1基本语法 191

7.11.2参数说明 192

7.11.3简单的From子句 193

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

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

7.11.6 Join的其他类型 195

7.11.7使用表别名 197

7.11.8表Join自身 198

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

7.12.1基本语法 198

7.12.2参数说明 199

7.12.3单个查询条件 200

7.12.4设置多个查询条件 200

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

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

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

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

7.12.9模糊查询 202

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

7.12.11使用EXISTS关键字 204

7.12.12使用ALL、ANY和SOME关键字 205

7.13使用Order by子句排序 206

7.13.1基本语法 206

7.13.2参数说明 206

7.13.3按一个字段排序 207

7.13.4按多个字段排序 207

7.14使用Group by子句分组 207

7.14.1基本语法 207

7.14.2参数说明 207

7.14.3 Group by的基本用法 208

7.14.4在Group by中使用表达式 208

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

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

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

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

7.15.1基本语法 211

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

7.16使用Compute子句归类 212

7.16.1基本语法 212

7.16.2参数说明 213

7.16.3使用Compute归类 213

7.16.4使用Compute by归类 214

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

7.17.1基本语法 215

7.17.2参数说明 215

7.17.3使用Union All合并两个查询结果集 215

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

7.17.5使用Union加入临时数据 216

7.17.6在Union的结果集里排序 216

7.17.7在Union的结果集里分组 217

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

7.18.1基本语法 217

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

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

7.18.4使用Select into复制表结构 218

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

7.20 Null字段的处理方法 219

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

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

7.20.3使用ISNULL函数替换Null值 220

7.21 OUTPUT和WRITE子句 220

7.21.1 OUTPUT子句 220

7.21.2 WRITE子句 221

7.22小结 222

第4部分 数据库管理篇 224

第8章 T-SQL程序 224

8.1 T-SQL概述 224

8.1.1什么是T-SQL 224

8.1.2 T-SQL的语法约定 224

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

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

8.2.2架构 226

8.2.3创建自定义架构 227

8.3 T-SQL中的批处理 227

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

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

8.4 T-SQL中的注释 229

8.4.1--注释 229

8.4.2/*……*/注释 229

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

8.5.1使用Cast转换数据类型 230

8.5.2使用Convert转换数据类型 231

8.5.3隐式数据类型转换 232

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

8.6兼容级别设置 233

8.6.1语法 233

8.6.2使用SQL Server Management Studio更改兼容级别 234

8.6.3数据库兼容的注意事项 235

8.6.4兼容级别导致的影响 235

8.6.5兼容级别示例 237

8.6.6兼容级别对ORDER BY的影响示例 237

8.7 T-SQL运算符 240

8.7.1算术运算符 240

8.7.2赋值运算符 240

8.7.3位运算符 240

8.7.4比较运算符 240

8.7.5逻辑运算符 241

8.7.6字符串串联运算符 241

8.7.7一元运算符 241

8.7.8复合运算符 242

8.7.9运算符的优先级 243

8.8 T-SQL中的常量 243

8.8.1字符串常量 243

8.8.2 Unicode常量 243

8.8.3二进制常量 244

8.8.4 bit常量 244

8.8.5 datetime常量 244

8.8.6 integer常量 244

8.8.7 decimal常量 245

8.8.8 float和real常量 245

8.8.9 money常量 245

8.8.10 uniqueidentifier常量 245

8.8.11在T-SQL中使用常量 245

8.9 T-SQL中的变量 246

8.9.1局部变量 246

8.9.2全局变量 248

8.10 T-SQL的流程控制 250

8.10.1 Begin…End语句 250

8.10.2 If…Else语句 251

8.10.3 While语句 252

8.10.4 Case语句 254

8.10.5 Goto语句 256

8.10.6 Waitfor语句 257

8.10.7 Return语句 258

8.10.8 Try…Catch语句 258

8.10.9 Execute语句 259

8.11 Convert函数 260

8.11.1语法 261

8.11.2二进制与字符十六进制转换示例 261

8.12日期和时间功能 262

8.12.1语法 262

8.12.2 ISO周-日示例 263

8.12.3日期功能的注意事项 263

8.13 Grouping Sets分组 264

8.13.1语法 264

8.13.2注意事项 264

8.13.3 Grouping Sets分组示例 265

8.14 T-SQL的常用函数 265

8.14.1聚合函数 265

8.14.2日期和时间函数 266

8.14.3数学函数 266

8.14.4字符串函数 267

8.14.5文本和图像函数 268

8.14.6配置函数 268

8.14.7游标函数 268

8.14.8元数据函数 268

8.14.9行集函数 269

8.14.10安全函数 269

8.14.11系统统计函数 270

8.14.12其他函数 270

8.15不应使用的关键字 272

8.16小结 273

第9章 视图 274

9.1视图简介 274

9.2创建视图 275

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

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

9.3查看与修改视图 280

9.3.1查看视图 280

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

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

9.4加密视图 282

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

9.6检查视图的数据变动 285

9.7编辑视图中的记录 285

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

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

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

9.8删除视图 287

9.8.1在Management Studio中删除视图 287

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

9.9为视图重命名 287

9.10小结 288

第10章 存储过程 289

10.1存储过程简介 289

10.1.1存储过程的概念 289

10.1.2使用存储过程的优点 289

10.1.3存储过程的分类 290

10.2创建存储过程 290

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

10.2.2在SQL Server ManagementStudio中建立存储过程 292

10.3修改存储过程 293

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

10.3.2在SQL Server ManagementStudio中修改存储过程 294

10.3.3修改存储过程名 295

10.4执行存储过程 295

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

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

10.5.2参数传递的方式 299

10.5.3存储过程的返回值 300

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

10.5.5临时存储过程 303

10.5.6嵌套调用存储过程 303

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

10.5.8加密存储过程 305

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

10.5.10设计存储过程组 306

10.6删除存储过程 307

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

10.6.2在SQL Server ManagementStudio中删除存储过程 307

10.7常用的系统存储过程 308

10.7.1 sp_help:查看对象信息 308

10.7.2 sp_helpdb:查看数据库信息 309

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

10.7.4 sp_helpfilegroup:查看文件组信息 309

10.7.5 sp_helpindex:查看索引信息 309

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

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

10.7.8 sp_helptext:查看对象内容 310

10.7.9 sp_helptrigger:查看触发器信息 310

10.7.10 sp_lock查看锁信息 310

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

10.7.12 sp_rename:修改对象名 310

10.7.13 sp_renamedb:修改数据库名 311

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

10.7.15 sp_columns:查看列信息 311

10.7.16 sp_databases:查看数据库信息 311

10.7.17 sp_fkeys:查看外键信息 311

10.7.18 sp_pkeys:查看主键信息 312

10.7.19 sp_server_info:查看SQL Server信息 312

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

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

10.8 CLR存储过程 313

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

10.8.2开启CLR支持 313

10.8.3编写CLR存储过程内容 313

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

10.8.5注册程序集 316

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

10.8.7执行CLR存储过程 317

10.9小结 318

第11章 触发器 319

11.1触发器简介 319

11.1.1触发器的概念和作用 319

11.1.2触发器的种类 320

11.2 DML触发器的分类 320

11.3 DML触发器的工作原理 320

11.3.1 After触发器的工作原理 321

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

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

11.4.1设计触发器的限制 321

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

11.4.3使用DMVML触发器的注意事项 322

11.5设计After触发器 323

11.5.1设计简单的After触发器 323

11.5.2测试触发器功能 325

11.5.3建立触发器的SQL语句 326

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

11.7触发器的嵌套 330

11.8触发器的递归 333

11.9设计Instead Of触发器 333

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

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

11.10查看DML触发器 335

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

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

11.11修改DML触发器 337

11.12删除DML触发器 338

11.13禁用与启用DML触发器 338

11.14 DDL触发器 339

11.15设计DDL触发器 339

11.15.1建立DDL触发器的语句 339

11.15.2测试触发器功能 342

11.16查看与修改DDL触发器 344

11.17触发器的应用技巧 345

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

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

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

11.17.4如何返回错误信息 348

11.18小结 349

第12章 索引 350

12.1索引简介 350

12.2索引的结构 350

12.3索引的分类 351

12.3.1聚集索引与非聚集索引 351

12.3.2唯一索引 351

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

12.3.4视图索引 352

12.3.5全文索引 352

12.3.6 XML索引 352

12.4系统自动建立的索引 353

12.4.1主键字段 353

12.4.2 Unique字段 353

12.5建立索引的注意事项 354

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

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

12.7.1基本语法 357

12.7.2参数说明 358

12.7.3创建简单的索引 358

12.7.4创建简单的复合索引 359

12.7.5创建唯一索引 359

12.7.6创建聚集索引 359

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

12.7.8创建包含性列索引 360

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

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

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

12.7.12创建复杂的索引 361

12.8查看与修改索引 361

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

12.8.2使用sp_helpindex查看索引 363

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

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

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

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

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

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

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

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

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

12.10禁用索引 370

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

12.10.2使用 DISABLE参数禁用索引 371

12.11重命名索引 371

12.12删除索引 371

12.12.1删除索引的注意事项 371

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

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

12.13索引视图 372

12.13.1索引视图简介 372

12.13.2创建索引视图 372

12.14小结 373

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

13.1用户定义数据类型 374

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

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

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

13.2用户定义函数 378

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

13.2.2用户定义函数类型 379

13.2.3创建标量值函数 379

13.2.4创建内联表值函数 381

13.2.5创建多语句表值函数 382

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

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

13.2.8使用用户定义函数 385

13.2.9删除用户定义函数 387

13.3小结 387

第14章 全文索引 388

14.1全文索引简介 388

14.2全文索引常用术语 388

14.3全文索引的体系结构 389

14.4全文目录管理 390

14.4.1创建全文目录 390

14.4.2查看与修改全文目录 391

14.4.3删除全文目录 392

14.5全文索引管理 392

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

14.5.2创建全文索引 392

14.5.3查看与修改全文索引 396

14.5.4启用和禁用全文索引 397

14.5.5删除全文索引 397

14.6填充全文索引 397

14.6.1填充全文索引的方式 398

14.6.2填充全文索引 398

14.6.3定时填充全文索引 398

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

14.7.1使用CONTAINS搜索 401

14.7.2使用FREETEXT搜索 405

14.7.3使用CONTAINSTABLE搜索 406

14.7.4使用FREETEXTTABLE搜索 408

14.7.5搜索image字段 408

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

14.8.1创建全文目录 409

14.8.2更改全文目录属性 410

14.8.3创建全文索引 410

14.8.4更改全文索引属性 411

14.8.5删除全文索引 412

14.8.6删除全文目录 412

14.9小结 413

第15章 游标 414

15.1游标简介 414

15.2游标的基本操作 415

15.2.1定义游标 415

15.2.2打开游标 416

15.2.3读取游标 417

15.2.4关闭和删除游标 417

15.3游标的运用 418

15.3.1用游标处理数据 418

15.3.2全局游标与本地游标 421

15.3.3游标的嵌套 422

15.3.4使用游标变量 423

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

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

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

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

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

15.5小结 434

第16章 事务与锁 436

16.1事务简介 436

16.1.1事务的特性 436

16.1.2事务的工作流程 437

16.1.3执行事务的注意事项 438

16.1.4事务的工作原理 438

16.1.5事务执行的模式 439

16.2编写事务 439

16.2.1编写事务的原则 439

16.2.2编写事务 440

16.3嵌套事务 442

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

16.3.2嵌套事务示例 443

16.3.3获取嵌套的层次 445

16.4事务保存点 447

16.5事务的隔离级别 449

16.6锁简介 449

16.7锁的对象和模式 450

16.8死锁 451

16.9小结 452

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

第17章 数据库备份与恢复 454

17.1备份与恢复介绍 454

17.1.1备份类型 454

17.1.2恢复模式 455

17.1.3如何备份数据库 456

17.1.4数据库备份到哪里 457

17.2在SQL Server Management Studio中备份数据库 458

17.3使用T-SQL语言备份数据库 461

17.3.1完整备份与差异备份 461

17.3.2备份文件和文件组 464

17.3.3事务日志备份 465

17.4备份设备管理 466

17.4.1查看备份设备的内容 466

17.4.2通过备份设备来备份数据库 467

17.4.3验证备份的内容 468

17.4.4删除备份设备 469

17.5在SQL Server Management Studio中还原数据库 469

17.5.1还原数据库的方式 470

17.5.2还原数据库前要注意的事项 470

17.5.3还原数据库备份 470

17.5.4还原文件和文件组备份 472

17.5.5使用现有的备份创建新的数据库 473

17.6用T-SQL语言还原数据库 474

17.6.1还原完整备份 474

17.6.2还原差异备份 476

17.6.3还原事务日志备份 477

17.6.4还原文件和文件组备份 477

17.6.5将数据库还原到某个时间点 478

17.6.6将文件还原到新位置上 478

17.7建立自动备份的维护计划 479

17.8小结 481

第18章 系统数据库与用户数据库 483

18.1 SQL Server 2012系统数据库介绍 483

18.1.1 master系统数据库 483

18.1.2 tempdb临时数据库 483

18.1.3 model模板数据库 484

18.1.4 msdb系统数据库 484

18.1.5 resource系统数据库 485

18.2系统表与视图介绍 485

18.2.1 msdb数据库里的表 486

18.2.2系统视图 488

18.2.3系统函数 489

18.3规划数据库 489

18.3.1数据库文件 489

18.3.2文件组 490

18.3.3计算数据库文件的大小 491

18.4小结 492

第19章 SQL Server 2012的安全 493

19.1 SQL Server 2012的身份验证模式 493

19.2访问权限 495

19.3用户 495

19.3.1添加用户 495

19.3.2使用用户登录 496

19.3.3为用户设置权限 497

19.4角色 501

19.4.1角色简介 501

19.4.2服务器角色 501

19.4.3将用户设为服务器角色成员 502

19.4.4数据库角色 502

19.4.5将用户设为数据库角色成员 503

19.4.6创建用户自定义数据库角色 504

19.4.7应用程序角色 504

19.4.8创建应用程序角色 504

19.4.9使用应用程序角色 505

19.5架构 506

19.6确保数据库服务器的安全 507

19.7小结 509

第20章 SQL Server的自动化管理 510

20.1 SQL Server代理 510

20.1.1 SQL Server代理简介 510

20.1.2启动和停止SQL Server代理 511

20.1.3 SQL Server代理的设置 511

20.1.4指定SQL Server代理的登录账户 514

20.2操作员 515

20.3作业 516

20.3.1新建作业 516

20.3.2手动执行作业 519

20.3.3调度作业 520

20.3.4查看历史记录 521

20.3.5删除、禁用与启用作业 521

20.4警报与通知 522

20.4.1新建警报 522

20.4.2修改警报 524

20.4.3启动、禁用与删除警报 524

20.4.4通知 524

20.5维护计划 525

20.6错误日志 527

20.7小结 528

第21章 SQL Server的性能工具 529

21.1 SQL Server Profiler 529

21.1.1 SQL Server Profiler简介 529

21.1.2新建跟踪 530

21.1.3存储事件记录 531

21.1.4载入事件记录 531

21.1.5新建跟踪模板 531

21.1.6值得注意的功能 532

21.2数据库引擎优化顾问 533

21.2.1数据库引擎优化顾问介绍 533

21.2.2使用数据库引擎优化顾问 533

21.3小结 534

第22章 数据导入与导出 535

22.1 SQL Server导入/导出向导 535

22.2数据导入/导出 535

22.3数据导入/导出时的数据类型转换 538

22.4在不同数据源与目标之间传输数据 538

22.5小结 540

第23章 Analysis Services 541

23.1 Analysis Services简介 541

23.1.1数据仓库 541

23.1.2数据仓库的结构 542

23.1.3创建数据仓库的步骤 543

23.1.4联机分析处理(OLAP) 543

23.1.5数据挖掘 544

23.2定义数据源 544

23.3定义数据源视图 546

23.4定义多维数据集 548

23.5部署Analysis Services项目 551

23.6查看多维数据集 553

23.7使用客户端软件查看多维数据 554

23.8小结 557

第24章 Reporting Services 558

24.1创建报表服务器项目 558

24.2创建数据源 559

24.3创建报表 560

24.4发布报表 563

24.5自定义报表信息 564

24.6小结 568

第25章 SQL Server Integration Service 569

25.1 SSIS简介 569

25.1.1 SSIS概述 569

25.1.2 SQL Server 2012中SSIS的改进 570

25.2 SSIS结构 571

25.2.1 SSIS的用途 571

25.2.2 SSIS包的组成 572

25.3 SSIS的开发 577

25.3.1设计和实现包 577

25.3.2部署包 582

25.4小结 587

第26章 SQL Server 2012安全新特性——包含数据库 588

26.1部分包含数据库的概念及术语 588

26.1.1 SQL Server 2012使其数据库独立于实例的方法 588

26.1.2部分包含数据库的概念 588

26.1.3部分包含数据库的术语 588

26.1.4包含 589

26.1.5部分包含数据库 590

26.1.6用户使用部分包含数据库的好处 590

26.1.7数据库移动 590

26.1.8初始数据库开发 590

26.1.9数据库管理 591

26.1.10限制 591

26.1.11标识数据库包含关系 591

26.2 SQL Server 2012部分包含数据库应用实例 591

26.2.1启用功能 591

26.2.2新增用户 593

26.2.3登录 594

26.3小结 595

第27章 SQL Server 2012开发新特性——文件表(FileTable) 596

27.1文件表的概述与定义 596

27.2文件表的功能优点 596

27.2.1文件表功能 596

27.2.2文件表特性 597

27.2.3文件表优点 597

27.3使用文件表的注意事项 598

27.3.1管理注意事项 598

27.3.2 FileTable不支持内存映射文件 598

27.4启用文件表的先决条件 598

27.4.1在实例级别启用FILESTREAM 598

27.4.2在数据库级别进行的准备 598

27.5创建、更改和删除文件表 601

27.5.1创建文件表 601

27.5.2更改文件表 602

27.5.3删除文件表 603

27.6将文件加载到文件表中 603

27.6.1将文件加载到文件表中的方法 603

27.6.2大容量加载文件表 604

27.7在文件表中使用目录和路径 604

27.7.1在T-SQL中使用文件表目录 604

27.7.2使用相对路径编写可移植代码 605

27.7.3文件表中存储项的完整路径 605

27.8使用文件I/O API访问文件表 605

27.8.1开始使用文件I/O API访问文件表 605

27.8.2在文件表中创建文件和目录 606

27.8.3在文件表中读取、写入、更新和删除目录 606

27.9文件表应用实例 607

27.9.1启用文件表 607

27.9.2配置文件组 608

27.9.3创建文件表 611

27.9.4操作文件表 612

27.9.5备份文件表(FileTable) 613

27.10小结 614