《SQL Server 2012数据库设计与开发实务》PDF下载

  • 购买积分:15 如何计算积分?
  • 作  者:陈会安编
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2013
  • ISBN:9787302318989
  • 页数:479 页
图书介绍:本书讲述了SQL Server 2012 数据库设计。

第1章 数据库系统 1

1.1数据库系统基础 1

1.1.1数据库的定义 2

1.1.2数据建模 3

1.1.3数据库环境的组件 5

1.2三层数据库系统架构 7

1.2.1概念层 8

1.2.2外部层 9

1.2.3内部层 10

1.3数据库架构 10

1.3.1三层数据库架构 11

1.3.2数据库架构之间的映射 13

1.3.3实体与逻辑数据独立 14

1.4数据库管理系统 15

1.5数据库管理员 16

1.6数据库系统的处理架构 18

1.6.1集中式处理架构 18

1.6.2分布式处理架构 19

1.7习题 20

第2章 关系数据库模型 21

2.1数据库模型基础 21

2.1.1层级式数据库模型 22

2.1.2网络式数据库模型 23

2.1.3关系数据库模型 25

2.2数据结构 25

2.2.1关系表架构 25

2.2.2关系表实例 27

2.2.3定义域 28

2.2.4属性值 29

2.2.5空值 29

2.2.6关系表的特性 30

2.3数据操作或运算 30

2.3.1关系型算术 30

2.3.2关系型计算 31

2.3.3 SQL语言与关系型算术与计算 32

2.4完整性约束 32

2.4.1键约束 32

2.4.2定义域约束 36

2.4.3实体完整性 36

2.4.4引用完整性 37

2.4.5其他完整性约束 39

2.5习题 40

第3章 实体关系模型与规范化 41

3.1实体关系模型与实体关系图 41

3.1.1实体关系模型的基础 41

3.1.2实体关系图的基础 42

3.1.3实体类型 44

3.1.4关系类型 44

3.1.5关系约束 45

3.1.6属性 48

3.1.7弱实体类型 49

3.2将实体关系图转换成 50

关系表架构 50

3.2.1将强实体类型转换成关系表 50

3.2.2将关系类型转换成外键 50

3.2.3转换多关系类型 53

3.2.4多值属性转换成关系表 53

3.2.5弱实体类型转换成关系表 54

3.3关系表的规范化 55

3.3.1规范化的基础 55

3.3.2第一范式(1NF) 56

3.3.3第二范式(2NF) 58

3.3.4第三范式(3NF) 59

3.3.5 Boyce-Codd范式(BCNF) 61

3.4习题 62

第4章SQL Server数据库管理系统 63

4.1 SQL Server基础 63

4.1.1 SQL server的版本演进 64

4.1.2 SQL Server的组成元素 64

4.1.3 SQL Server2012的版本 66

4.2安装SQL Server2012 66

4.2.1 SQL Server2012的软硬件需求 67

4.2.2 SQL Server实例的安装 68

4.3 SQL Server管理工具的使用 72

4.3.1 SQL Server配置管理器 72

4.3.2启动Management Studio集成管理工具 76

4.3.3 M1anagement Studio的使用界面 77

4.4查看SQL Server数据库对象 78

4.4.1系统数据库 78

4.4.2数据库对象 79

4.5新增SQL Server用户账户 81

4.5.1 SQL Server用户管理的基础 81

4.5.2新增登录 82

4.5.3新增数据库用户 83

4.6 SQL Server联机丛书 84

4.7习题 86

第5章 数据库设计工具的使用 87

5.1数据库设计基础 87

5.1.1数据库系统开发的生命周期 87

5.1.2数据库设计方法论 88

5.1.3安装数据库设计工具 90

5.2启动设计工具与新增模型 91

5.2.1启动与结束 Toad Data Modeler 91

5.2.2新增模型 92

5.3新建实体 93

5.3.1实体的图形符号 93

5.3.2新建与删除实体 94

5.3.3新建属性和指定主键 96

5.3.4编辑属性 98

5.3.5创建索引 98

5.4创建关系性 99

5.4.1关系性的图形符号 100

5.4.2创建关系性 102

5.4.3编辑关系性 104

5.4.4设置引用完整性规则 105

5.4.5指定新的外键 106

5.5生成报告和SQL命令 106

5.5.1生成数据库设计文件 107

5.5.2生成SQL的DDL命令 109

5.6习题 110

第6章SQL语言与数据库创建 111

6.1 SQL语言基础 111

6.1.1 SQL结构化查询语言 111

6.1.2 SQL语言的基本语法 112

6.1.3 SQL语言的命令种类 113

6.1.4在Management Studio中执行SQL脚本文件 114

6.2 SQL Server的数据库结构 116

6.2.1数据库文件与文件组 116

6.2.2分页 118

6.2.3范围 118

6.3创建用户数据库 119

6.3.1在Management Studio中创建数据库 119

6.3.2使用T-SQL命令创建数据库 121

6.3.3创建多文件组的数据库 122

6.4修改用户数据库 124

6.4.1使用Management Studio修改用户数据库 125

6.4.2数据库选项 126

6.4.3使用T-SQL命令修改用户数据库 128

6.5删除用户数据库 130

6.6数据库的分离与附加 131

6.6.1分离数据库 131

6.6.2附加数据库 132

6.6.3使用T-SQL命令分离与附加数据库 134

6.7习题 135

第7章 创建数据表与完整性约束 137

7.1数据类型 137

7.1.1数值数据类型 137

7.1.2日期数据类型 139

7.1.3字符与位串流数据类型 140

7.1.4其他数据类型 142

7.1.5用户自定义数据类型 143

7.2数据表的创建 143

7.2.1使用Management Studio创建数据表 144

7.2.2使用T-SQL命令创建数据表 146

7.2.3创建计算列 148

7.2.4稀疏字段的使用 149

7.3创建完整性约束 149

7.3.1约束的基础 149

7.3.2创建PRIMARY KEY约束 150

7.3.3创建CHECK约束 151

7.3.4创建数据表的关系性 152

7.4修改与删除数据表 155

7.4.1修改数据表名称 156

7.4.2修改数据表字段 156

7.4.3修改约束 157

7.4.4删除数据表 158

7.5创建SQL Server数据库关系图 159

7.6临时表的创建 161

7.7习题 162

第8章SELECT语句的基本查询 163

8.1 SELECT查询命令 163

8.2 SELECT子句 164

8.2.1数据表的字段 164

8.2.2字段别名 166

8.2.3计算值字段 166

8.2.4删除重复记录 168

8.2.5查询前几笔记录 169

8.3 FROM子句 170

8.4 WHERE子句 170

8.4.1比较运算符 171

8.4.2逻辑运算符 172

8.4.3算术运算符 178

8.5聚合函数的摘要查询 179

8.5.1 CoUNT()函数 179

8.5.2 AVG()函数 180

8.5.3 MAX()函数 181

8.5.4 MIN()函数 181

8.5.5 SUM()函数 182

8.6分组查询GROUP BY子句 183

8.6.1 GROUP BY子句 183

8.6.2 HAVING子句 184

8.6.3 WITHROLLUP和WTTH CUBE 185

8.6.4 GROUPING SETS子句 187

8.7排序ORDER BY子句 187

8.8习题 189

第9章SELECT语句的高级查询 191

9.1 SQL的多数据表查询 191

9.2连接查询 192

9.2.1连接查询的种类 192

9.2.2内连接查询 194

9.2.3外连接查询 198

9.2.4交叉连接查询 201

9.3集合运算查询 202

9.3.1集合运算查询的种类 202

9.3.2 UNION并集查询 203

9.3.3 INTERSECT交集查询 204

9.3.4 EXCEPT差集查询 204

9.4子查询 205

9.4.1子查询的基础 205

9.4.2比较运算符的子查询 206

9.4.3逻辑运算符的子查询 206

9.5 T-SQL高级查询技巧 210

9.5.1 OFFSET和FETCH NEXT的分页查询 210

9.5.2 NULL空值的处理 212

9.5.3 CTE一般数据表表达式 213

9.6使用Management Studio设计SQL查询 216

9.6.1使用查询设计工具 216

9.6.2编写数据表的脚本 220

9.7习题 221

第10章 新增、更新和删除数据 223

10.1使用Management Studio编辑记录数据 223

10.2新增记录 225

10.2.1 INSERT命令 225

10.2.2行构造器 227

10.2.3 INSERT/SELECT 命令 227

10.2.4 SELECT INTO命令 228

10.3更新记录 229

10.3.1 UPDATE命令 229

10.3.2在UPDATE命令 使用子查询 230

10.3.3合并更新 231

10.4删除记录 232

10.4.1 DELETE命令 232

10.4.2子查询与合并删除 233

10.4.3 TRUNCATE TABLE 命令 234

10.5 MERGE命令 235

10.6 DML命令的OUTPUT子句 238

10.7习题 240

第11章 视图的创建 241

11.1视图基础 241

11.1.1 SQL Server视图 241

11.1.2视图的种类 242

11.1.3视图的优缺点 242

11.2创建视图 243

11.2.1使用Management Studio 创建视图 243

11.2.2使用T-SQL命令 创建视图 246

11.2.3从其他视图创建视图 251

11.3修改与删除视图 251

11.3.1修改视图 251

11.3.2删除视图 253

11.4编辑视图的内容 254

11.4.1在视图中添加记录 255

11.4.2在视图中更新记录 256

11.4.3在视图中删除记录 257

11.5习题 258

第12章 规划与创建索引 259

12.1索引基础 259

12.1.1索引简介 260

12.1.2索引的种类 260

12.1.3 M路搜索树与B树 261

12.1.4 SQL Server的索引结构 262

12.2数据表的索引规划 263

12.2.1索引的优缺点 264

12.2.2创建索引的注意事项 264

12.2.3选择索引字段 265

12.3 SQL Server自动创建的索引 265

12.3.1 PRIMARY KEY字段的索引 265

12.3.2 UNIQUE字段的索引 267

12.4创建数据表的索引 267

12.4.1使用Management Studio创建索引 268

12.4.2使用T-SQL命令创建索引 271

12.5修改、重新生成与删除索引 272

12.5.1使用Management Studio修改与重新生成数据表的索引 272

12.5.2使用T-SQL命令修改与重新生成索引 274

12.5.3删除数据表的索引 275

12.6查看SQL Server的执行计划 275

12.7创建视图与计算列的索引 276

12.7.1创建计算列的索引 276

12.7.2创建视图索引 278

12.8筛选索引与列存放区索引 281

12.8.1筛选索引 281

12.8.2列存放区索引 282

12.9习题 284

第13章Transact-SQL程序设计 285

13.1 Transact-SQL语言基础 285

13.1.1 Transact-SQL 数据库语言 286

13.1.2 Transact-SQL 脚本文件 286

13.2批处理的使用 287

13.2.1批处理的基础 287

13.2.2使用GO命令 定义批处理 287

13.3批注与自定义信息 288

13.3.1批注 288

13.3.2 PRINT命令输出 自定义信息 289

13.3.3 USE命令转换数据库 289

13.4变量的声明与使用 290

13.4.1声明变量与变量初值 290

13.4.2指定变量值 291

13.4.3变量的范围 295

13.4.4 SQL Server的 系统函数 295

13.5表达式与运算符 296

13.5.1运算符的优先级 296

13.5.2 T-SQL的运算符 297

13.5.3简洁的T-SQL表达式 298

13.5.4类型转换运算符 299

13.6流程控制结构 299

13.6.1 BEGIN/END命令块 300

13.6.2 IF/ELSE条件 控制命令 300

13.6.3 RETURN中断 查询命令 302

13.6.4 CASE多条件函数 303

13.6.5 WHILE循环控制 305

13.6.6 GOTO跳转至指定标签 307

13.6.7 WAITFOR暂停执行 308

13.6.8 IIF与CHOOSE函数 309

13.7错误处理 311

13.7.1错误处理结构 311

13.7.2使用RAISERROR()函数产生错误信息 312

13.7.3 THROW命令语句 314

13.8生成SQL Server脚本 315

13.8.1编写数据库的脚本 315

13.8.2生成SQL Server脚本向导 317

13.9习题 320

第14章 存储过程与序列对象 321

14.1存储过程基础 321

14.1.1存储过程简介 321

14.1.2存储过程的优点 322

14.2创建与执行存储过程 323

14.2.1创建存储过程 323

14.2.2执行存储过程 325

14.2.3创建临时存储过程 327

14.3存储过程的参数传递 328

14.3.1创建拥有参数的存储过程 328

14.3.2默认值参数 330

14.3.3嵌套调用 331

14.4存储过程的返回值 332

14.4.1使用RETURN关键词 332

14.4.2使用OUTPUT关键词 334

14.5修改与删除存储过程 335

14.5.1修改存储过程 335

14.5.2删除存储过程 336

14.6系统存储过程 336

14.7创建与使用序列对象 338

14.7.1创建序列对象 338

14.7.2使用序列对象 341

14.7.3修改与删除序列对象 342

14.8习题 343

第15章 自定义函数与数据游标 345

15.1自定义函数基础 345

15.2创建自定义函数 346

15.2.1标量值函数 347

15.2.2内联表值函数 349

15.2.3多语句数据表值函数 351

15.3自定义函数的使用 352

15.3.1使用在条件约束或字段属性 352

15.3.2创建计算字段 354

15.3.3使用在流程控制与表达式 355

15.3.4替换视图和临时表 355

15.4修改与删除自定义函数 356

15.4.1修改自定义函数 356

15.4.2删除自定义函数 357

15.5使用数据游标 357

15.5.1数据游标的基础 357

15.5.2使用数据游标的步骤 358

15.5.3数据游标的系统函数 361

15.5.4使用数据游标更新与删除数据 363

15.5.5数据游标变量与参数 365

15.6习题 366

第16章 触发器 367

16.1触发器基础 367

16.2 DML触发器 368

16.2.1创建DML触发器 369

16.2.2 DML触发器与约束 371

16.2.3创建AFTER触发器 372

16.2.4创建INSTEAD OF触发器 376

16.2.5使用UPDATE()函数 379

16.3修改、禁用与删除DML触发器 380

16.3.1修改触发器 381

16.3.2禁用触发器 382

16.3.3删除触发器 383

16.4 DDL触发器 383

16.5习题 384

第17章 事务处理与锁定 387

17.1事务基础 387

17.1.1事务简介 387

17.1.2事务状态 388

17.1.3事务停止执行的原因 389

17.1.4事务的四大特性 390

17.2事务处理 390

17.2.1 SQL Server的事务模式 390

17.2.2 T-SQL语言的事务处理 391

17.2.3嵌套事务 393

17.2.4事务储存点 394

17.3并发控制 395

17.3.1并发控制的三种问题 395

17.3.2并发控制机制 396

17.3.3事务的隔离性等级 397

17.4数据锁定 398

17.4.1锁定层级 399

17.4.2锁定模式 399

17.4.3锁定模式兼容性 400

17.5死锁问题 401

17.5.1死锁的基础 401

17.5.2指定死锁的优先级 401

17.5.3预防死锁的程序技巧 401

17.6习题 402

第18章SQL Server客户端程序开发与LINQ 403

18.1数据库程序设计基础 403

18.1.1数据库程序设计的程序语言 403

18.1.2数据库程序设计的操作 404

18.2中间件与ADO.NET组件 404

18.2.1微软的中间件 404

18.2.2 ADO.NET的基础 405

18.3 Visual Basic创建客户端程序 407

18.3.1 DataSet对象与数据绑定 407

18.3.2事务处理 411

18.4 LINQ基础 416

18.5使用LINQ to SQL 417

18.5.1创建LINQ to SQL项目 417

18.5.2实现LINQ to SQL 419

18.6 LINQ查询字句 421

18.6.1 Select子句 422

18.6.2 Where子句 422

18.6.3 Order By子句 423

18.6.4 Join子句 423

18.7习题 424

第19章FILESTREAM、 FileTable与XML 425

19.1 FILESTREAM文件数据流 425

19.1.1 FILESTREAM文件数据流的基础 425

19.1.2启用FILESTREAM文件数据流的支持 426

19.1.3创建FILESTREAM文件组 427

19.1.4创建FILESTREAM数据表 428

19.1.5访问FILESTREAM数据 429

19.2 FileTable文件数据表 430

19.2.1 FileTable文件数据表的基础 430

19.2.2创建FileTable文件数据表 431

19.2.3在FileTable文件数据表新增数据 433

19.3使用XNML数据类型 435

19.3.1创建拥有XML字段的数据表 436

19.3.2 XML对象的相关方法 438

19.4 XML查询语言 439

19.4.1 XPath语言 439

19.4.2 XQuery语言 445

19.4.3 XQuery基本语法 447

19.4.4 XQuery的FLWOR表达式 448

19.4.5 XQuery的条件表达式 450

19.4.6 XQuery函数 451

19.5 XL-DML操作语言 452

19.5.1插入XML元素 452

19.5.2更新XML元素 453

19.5.3删除XML元素 453

19.6习题 454

第20章SQL Seryer全文搜索 455

20.1 SQL Server全文搜索概述 455

20.1.1全文搜索的基础 456

20.1.2 SQL Server整合全文搜索架构 456

20.1.3启用SQL Server的全文搜索 457

20.2全文目录的创建 458

20.2.1使用Management Studio创建全文目录 458

20.2.2使用T-SQL命令创建全文目录 460

20.3创建全文索引 460

20.3.1使用Management Studio创建全文索引 460

20.3.2使用T-SQL命令创建全文索引 464

20.4修改与删除全文目录与 465

索引 465

20.4.1修改全文目录 466

20.4.2修改与禁用全文索引 467

20.4.3删除全文索引 468

20.4.4删除全文目录 469

20.5填充的使用 469

20.5.1在SQL Server中执行填充 469

20.5.2创建填充计划 471

20.6使用全文搜索 473

20.6.1使用FREETEXT执行搜索 473

20.6.2使用CONTAINS执行单词搜索 474

20.6.3全文检索的符合程度搜索 477

20.7习题 479