编辑推荐
本书详细讲解了SQL Server 2016数据库的基本概念、安装和卸载、创建数据库、操作数据表和视图、T-SQL语言、数据查询、数据操作、存储过程、触发器、索引、游标、SQL函数、事务、性能优化等内容,还讲解了大数据功能和数据库性能提升问题。读者通过本书的学习可以较为全面地掌握SQL Server 2016数据库管理、开发的方法和技巧。 ;
内容简介
SQL Server数据库是Microsoft公司推出的数据库管理系统,2016版本在性能和人机交互等方面均有显著提高。 本书是一本帮助用户踏入数据库之门的教程。全书内容分为4部分。第1部分(第1~7章)是基础知识篇,包括数据库入门简介、SQL Server 2016的安装和卸载、创建数据库、操作数据表和视图,还有SQL Server 2016的管理以及数据维护。第2部分(第8~12章)是核心技术篇,包括T-SQL语言基本语法、SQL数据查询、SQL数据操作、存储过程以及触发器的使用。第3部分(第13~18章)是高级使用篇,包括索引、游标、SQL函数的使用,事务、性能优化以及云计算、大数据与云数据库。第4部分(第19和20章)是数据库实战篇,选取两个实际的商业化应用程序进行分析,使读者能够真正掌握商业化应用程序开发的精髓。 本书内容精练、重点突出、实例丰富,适合作为软件开发入门者的自学用书,也适合作为高等院校相关专业的教学参考书,还可供开发人员查阅、参考。
作者简介
孙亚南,多年数据库研发与教学经验。
目录
目 ; 录
第1章 ; 数据库入门 ; ; ; ; 1
1.1 ; 数据库系统概述 ; ; 1
1.1.1 ;数据库技术的发展 ; ; ; 1
1.1.2 ;数据库系统组成 ; ; ; ; ; ; ; ; 3
1.2 ; 数据库体系结构 ; ; 4
1.2.1 ;什么是模式 ; ; ; ; ; ; ; ; 4
1.2.2 ;三级模式结构 ; ; ; 5
1.3 ; 数据模型 ; ; ; ; ; ; ; 6
1.3.1 ;数据模型的分类 ; ; ; ; ; ; ; ; 6
1.3.2 ;E-R模型 ; ; ; ; ; 7
1.3.3 ;层次模型 ; ; ; 9
1.3.4 ;网状模型 ; ; ; 12
1.3.5 ;关系模型 ; ; ; 13
1.4 ; 常见数据库 ; ; 15
1.4.1 ;Access 15
1.4.2 ;SQL Server ; ; 16
1.4.3 ;Oracle 18
1.5 ; 小结 ; ; ; ; ; ; ; 19
1.6 ; 经典习题与面试题 ; ; ; ; ; ; ; 19
第2章 ; 走进SQL Server2016 ; 20
2.1 SQL Server 2016简介 20
2.2 SQL Server 2016的特点 21
2.2.1 SQL Server 2016中新的组件功能 21
2.2.2 SQL Server 2016混合云技术 22
2.3 安装SQL Server2016 23
2.3.1 SQL Server 2016安装必备 23
2.3.2 SQL Server 2016的安装 24
2.3.3 SQL Server 2016的卸载 33
2.4 使用SQL Server2016帮助 35
2.5 小结 36
2.6 经典习题与面试题 36
第3章 创建数据库 37
3.1 数据库简介 37
3.1.1 数据库基本概念 37
3.1.2 数据库常用对象 39
3.1.3 数据库的组成 41
3.1.4 系统数据库 42
3.2 SQL Server的命名规则 44
3.2.1 标识符 44
3.2.2 对象命名规则 45
3.2.3 实例命名规则 46
3.3 创建与管理数据库 47
3.3.1 使用管理器创建数据库 47
3.3.2 使用管理器修改数据库 49
3.3.3 使用管理器删除数据库 51
3.3.4 操作学生数据库 52
3.4 小结 54
3.5 经典习题与面试题 54
第4章 数 据 表 55
4.1 数据表概述 55
4.1.1 SQL Server 2016基本数据类型 56
4.1.2 用户自定义数据类型 60
4.2 使用管理器管理数据表 63
4.2.1 创建新数据表 63
4.2.2 添加数据表字段 64
4.2.3 修改字段数据类型 65
4.2.4 重命名数据表 65
4.2.5 删除数据表 66
4.3 操作数据约束 67
4.3.1 用主键约束防止无效数据 67
4.3.2 用唯一性约束防止重复数据 68
4.3.3 检查约束 69
4.3.4 默认约束 71
4.3.5 外键约束 71
4.4 小结 72
4.5 经典习题与面试题 72
第5章 视 图 74
5.1 视图概述 74
5.1.1 视图的类型 75
5.1.2 视图的优缺点 75
5.2 使用管理器管理视图 76
5.2.1 创建新视图 77
5.2.2 查看视图信息 79
5.2.3 创建基于视图的视图 85
5.2.4 删除视图 85
5.3 通过视图操作数据 86
5.3.1 在视图中插入数据记录 86
5.3.2 在视图中修改数据记录 87
5.3.3 在视图中删除数据记录 87
5.4 小结 88
5.5 经典习题与面试题 88
第6章 SQL Server 2016数据库管理 89
6.1 数据库联机 89
6.1.1 脱机数据库 90
6.1.2 联机数据库 91
6.2 分离和附加数据库 91
6.2.1 分离数据库 91
6.2.2 附加数据库 93
6.3 导入导出数据 94
6.3.1 导入SQL Server数据表 95
6.3.2 导入其他数据源的数据 97
6.3.3 导出SQL Server数据表 97
6.4 备份和恢复数据库 98
6.4.1 备份类型 99
6.4.2 恢复模式 99
6.4.3 备份数据库 100
6.4.4 恢复数据库 102
6.5 收缩数据库和文件 103
6.5.1 自动收缩数据库 103
6.5.2 手动收缩数据库 104
6.6 生成与执行SQL脚本 105
6.6.1 将数据库生成SQL脚本 105
6.6.2 将数据表生成SQL脚本 107
6.6.3 执行SQL脚本 107
6.7 小结 109
6.8 经典习题与面试题 109
第7章 SQL Server 2016系统维护 110
7.1 SQL Server 2016维护须知 110
7.2 启动SQL Server2016服务 111
7.2.1 后台启动SQL Server 2016 111
7.2.2 通过配置管理器启动SQL Server 2016 112
7.3 注册SQL Server2016 113
7.3.1 服务器组的创建与删除 113
7.3.2 服务器的注册与删除 114
7.4 SQL Server 2016数据库的安全设置 115
7.4.1 更改登录用户验证方式 115
7.4.2 创建与删除登录用户 116
7.4.3 创建与删除数据库用户 119
7.4.4 设置服务器角色权限 121
7.4.5 密码策略 125
7.5 小结 126
7.6 经典习题与面试题 126
第8章 T-SQL 语言 127
8.1 T-SQL概述 127
8.1.1 T-SQL语言的组成 128
8.1.2 T-SQL语句结构 128
8.1.3 T-SQL语句 129
8.2 常量 130
8.2.1 数字常量 130
8.2.2 字符串常量 131
8.2.3 日期和时间常量 131
8.2.4 符号常量 132
8.3 变量 132
8.3.1 局部变量 132
8.3.2 全局变量 135
8.3.3 注释符 135
8.3.4 运算符 136
8.3.5 通配符 139
8.4 流程控制 140
8.4.1 BEGIN…END块语句 140
8.4.2 IF单分支语句 141
8.4.3 IF…ELSE双分支语句 141
8.4.4 CASE多分支语句 142
8.4.5 WHILE循环语句 143
8.4.6 WHILE…CONTINUE…BREAK中断语句 144
8.4.7 RETURN返回语句 145
8.4.8 GOTO跳转语句 146
8.5 常用命令 147
8.5.1 DECLARE定义命令 147
8.5.2 PRINT输出命令 148
8.5.3 BACKUP备份数据库 149
8.5.4 RESTORE还原数据库 152
8.5.5 SELECT返回数据记录 155
8.5.6 SET设置命令 157
8.5.7 SHUTDOWN关闭数据库 159
8.5.8 USE打开数据库 160
8.6 小结 160
8.7 经典习题与面试题 161
第9章 SQL数据查询 162
9.1 SELECT语句 162
9.1.1 SELECT语句的基本结构 162
9.1.2 用WITH语句检查一致性 163
9.1.3 用SELECT…FROM子句返回记录 164
9.1.4 用INTO子句将记录写入指定文件 167
9.1.5 用WHERE子句筛选符合条件的记录 168
9.1.6 用GROUP BY子句记录分组 172
9.1.7 用HAVING子句对聚合指定条件 173
9.1.8 用ORDER BY子句排序 175
9.1.9 用Distinct关键字排除重复值 176
9.1.10 用Top关键字返回指定记录 176
9.2 Union合并多个查询结果 177
9.2.1 Union与连接之间的区别 177
9.2.2 使用Union All合并表 177
9.2.3 Union中的ORDER BY子句 178
9.2.4 Union中的自动数据类型转换 179
9.2.5 使用Union合并不同类型的数据 180
9.2.6 使用Union合并有不同列数的两个表 180
9.2.7 使用Union进行多表合并 181
9.3 子查询与嵌套查询 182
9.3.1 什么是子查询 182
9.3.2 什么是嵌套查询 182
9.3.3 简单嵌套查询 183
9.3.4 带IN的嵌套查询 183
9.3.5 带Not IN的嵌套查询 184
9.3.6 带Some的嵌套查询 184
9.3.7 带Any的嵌套查询 185
9.3.8 带All的嵌套查询 185
9.3.9 带Exists的嵌套查询 186
9.4 连接查询 187
9.4.1 内部连接 187
9.4.2 外部连接 187
9.4.3 交叉连接 191
9.4.4 连接多表的方法 191
9.5 使用Case函数进行查询 192
9.6 小结 193
9.7 经典习题与面试题 194
第10章 SQL数据操作 195
10.1 数据库操作 195
10.1.1 创建数据库 195
10.1.2 修改数据库 196
10.1.3 删除数据库 198
10.2 数据表操作 198
10.2.1 使用CREATE TABLE语句创建表 198
10.2.2 创建、修改和删除约束 200
10.2.3 使用ALTER TABLE语句修改表结构 201
10.2.4 使用DROP TABLE语句删除表 202
10.3 数据操作 202
10.3.1 使用SELECT语句浏览数据 203
10.3.2 使用INSERT 语句添加数据 208
10.3.3 使用UPDATE语句修改指定数据 209
10.3.4 使用DELETE语句删除指定数据 210
10.4 视图操作 212
10.4.1 使用CREATE VIEW语句创建视图 212
10.4.2 使用ALTER VIEW语句修改视图 214
10.4.3 使用DROP VIEW语句删除视图 215
10.5 视图中的数据操作 215
10.5.1 向视图中添加数据 215
10.5.2 修改视图中的数据 216
10.5.3 删除视图中的数据 216
10.6 小结 217
10.7 经典习题与面试题 217
第11章 存储过程 218
11.1 存储过程概述 218
11.1.1 什么是存储过程 219
11.1.2 存储过程的优点 219
11.2 创建存储过程 220
11.2.1 使用向导创建存储过程 220
11.2.2 使用CREATE PROCEDURE语句创建存储过程 221
11.3 管理存储过程 223
11.3.1 执行存储过程 223
11.3.2 查看存储过程 226
11.3.3 修改存储过程 228
11.3.4 重命名存储过程 230
11.3.5 删除存储过程 230
11.4 小结 231
11.5 经典习题与面试题 232
第12章 触发器 233
12.1 触发器概述 233
12.1.1 触发器的概念 234
12.1.2 触发器的优点 234
12.1.3 触发器的种类 235
12.2 创建触发器 235
12.2.1 创建DML触发器 236
12.2.2 创建DDL触发器 240
12.2.3 创建登录触发器 242
12.2.4 限制非工作时间操作数据 243
12.2.5 限制对保护数据的操作 243
12.2.6 实现级联操作 244
12.3 管理触发器 245
12.3.1 查看触发器 245
12.3.2 修改触发器 247
12.3.3 重命名触发器 248
12.3.4 禁用和启用触发器 248
12.3.5 删除触发器 250
12.4 小结 251
12.5 经典习题与面试题 251
第13章 索引 252
13.1 索引的概念 252
13.2 索引的优缺点 252
13.2.1 索引的优点 253
13.2.2 索引的缺点 253
13.3 索引的分类 253
13.3.1 聚集索引 253
13.3.2 非聚集索引 254
13.4 索引的操作 254
13.4.1 索引的创建 254
13.4.2 查看索引信息 259
13.4.3 索引的修改 260
13.4.4 索引的删除 262
13.4.5 设置索引选项 262
13.5 索引的分析与维护 264
13.5.1 索引的分析 264
13.5.2 索引的维护 265
13.6 全文索引 267
13.6.1 使用SSMS创建全文索引 267
13.6.2 使用T-SQL语句创建全文索引 270
13.6.3 使用T-SQL语句删除全文索引 271
13.6.4 全文目录 272
13.6.5 全文目录的维护 274
13.7 小结 275
13.8 经典习题与面试题 275
第14章 游 标 276
14.1 游标的概述 276
14.1.1 游标的优点 277
14.1.2 游标的类型 277
14.2 游标的基本操作 278
14.2.1 声明游标 279
14.2.2 打开游标 280
14.2.3 读取游标中的数据 280
14.2.4 关闭游标 285
14.2.5 释放游标 286
14.3 使用系统过程查看游标 286
14.3.1 用sp_cursor_list查看当前连接打开的游标特性 286
14.3.2 用sp_describe_cursor查看游标特性 288
14.4 小结 289
14.5 经典习题与面试题 290
第15章 SQL函数 291
15.1 聚合函数 291
15.1.1 聚合函数概述 291
15.1.2 用Sum函数求和 292
15.1.3 用Avg函数求平均值 292
15.1.4 用Min函数返回最小值 293
15.1.5 用Max函数返回最大值 294
15.1.6 用Count函数统计表记录数 294
15.1.7 用Distinct函数取不重复记录 295
15.1.8 查询重复记录 296
15.2 数学函数 297
15.2.1 数学函数概述 297
15.2.2 用Abs函数求绝对值 298
15.2.3 用Pi函数求圆周率 298
15.2.4 Power函数 299
15.2.5 Rand函数 299
15.2.6 Round函数 300
15.2.7 Square函数和Sqrt函数 300
15.2.8 三角函数 302
15.3 字符串函数 303
15.3.1 字符串函数概述 303
15.3.2 Ascii函数 303
15.3.3 Charindex函数 304
15.3.4 Left函数 304
15.3.5 Right函数 305
15.3.6 Len函数 306
15.3.7 Replace函数 307
15.3.8 Reverse函数 307
15.3.9 Str函数 308
15.3.10 Substring函数 309
15.4 日期和时间函数 310
15.4.1 日期和时间函数概述 310
15.4.2 Getdate函数 310
15.4.3 Day函数 311
15.4.4 Month函数 311
15.4.5 Year函数 312
15.4.6 Datediff函数 313
15.4.7 Dateadd函数 313
15.5 转换函数 314
15.5.1 转换函数概述 314
15.5.2 Cast函数 314
15.5.3 Convert函数 315
15.6 小结 316
15.7 经典习题与面试题 317
第16章 事 务 318
16.1 事务的概念 318
16.2 显式事务与隐式事务 319
16.2.1 显式事务 320
16.2.2 隐式事务 322
16.2.3 API中控制隐式事务 322
16.2.4 事务的COMMIT和ROLLBACK 322
16.3 使用事务 323
16.3.1 开始事务 323
16.3.2 结束事务 324
16.3.3 回滚事务 325
16.3.4 事务的工作机制 326
16.3.5 自动提交事务 328
16.3.6 事务的并发问题 328
16.3.7 事务的隔离级别 329
16.4 锁 330
16.4.1 SQL Server锁机制 330
16.4.2 锁模式 330
16.4.3 锁的粒度 331
16.4.4 查看锁 332
16.4.5 死锁 332
16.5 分布式事务处理 333
16.5.1 分布式事务简介 333
16.5.2 创建分布式事务 334
16.5.3 分布式处理协调器 334
16.6 小结 335
16.7 经典习题与面试题 336
第17章 数据库的性能优化 337
17.1 数据库设计 337
17.1.1 规范化与非规范化 337
17.1.2 选择适当的数据类型 339
17.1.3 索引的选择 340
17.2 查询优化 340
17.2.1 避免使用“*” 341
17.2.2 避免负逻辑 341
17.2.3 列操作 341
17.2.4 避免使用DISTINCT 342
17.2.5 存储过程 342
17.3 考虑并行 343
17.4 索引操作 344
17.4.1 避免在索引列上进行运算 345
17.4.2 避免在索引列上用OR运算符 345
17.4.3 避免在索引列上用IS NULL 346
17.5 小结 346
17.6 经典习题与面试题 347
第18章 云计算、大数据与云数据库 348
18.1 云计算概述 348
18.1.1 什么是云计算 348
18.1.2 云计算的起源 349
18.1.3 云计算的特点和优势 350
18.1.4 云计算的现状 351
18.1.5 云计算的应用领域 352
18.2 大数据概述 353
18.3 NoSQL数据库 355
18.3.1 传统关系型数据库及其问题 355
18.3.2 NoSQL数据库概述 356
18.3.3 NoSQL数据库的优劣 357
18.3.4 NoSQL数据库的发展趋势 358
18.4 几种主要的云数据库 358
18.5 SQL Server 2016的云功能 360
18.5.1 数据文件部署到Azure云环境 360
18.5.2 备份到Windows Azure存储 362
18.6 小结 363
第19章 企业ERP管理系统 364
19.1 系统分析 364
19.1.1 需求分析 364
19.1.2 可行性分析 365
19.2 系统设计 365
19.2.1 系统目标 365
19.2.2 系统功能结构 365
19.2.3 系统业务流程 366
19.2.4 命名规范 367
19.3 数据库与数据表设计 368
19.3.1 数据库分析 368
19.3.2 数据库概念设计 368
19.3.3 数据库逻辑设计 370
19.3.4 数据表逻辑关系 373
19.4 小结 374
第20章 人事管理系统 375
20.1 系统分析 375
20.1.1 需求分析 375
20.1.2 可行性分析 377
20.2 数据库设计 377
20.2.1 数据库需求分析 377
20.2.2 数据库概念设计 377
20.2.3 数据库逻辑设计 379
20.2.4 数据表逻辑关系 380
20.2.5 创建数据库 380
20.3 小结 382
前沿
前 言
数据库是计算机技术中的一个重要发展方向,目前关系数据库还是数据库系统的主流。如今的世界已经是一个大数据的世界,伴随数据量爆发式增长的还有硬件的计算能力、不断增强的CPU计算能力和单位吉字节内存价格的不断下降,更好地利用这些强大的资源是大势所趋。随着云计算的普及和海量数据的发展,SQL Server 2016数据库也进行了大篇幅的升级改造,比如提供了新的事务处理功能和数据仓库增强功能,可以为现有的数据仓库和分析技术提供补充。本书从关系数据库的基础开始介绍,详细讲解SQL Server2016数据库的基本概念和使用方法,同时对大数据和性能提升问题进行讲解,目的是使读者通过本书的学习可以较为全面地掌握SQL Server 2016数据库的管理和开发方法。
本书特点
1.内容全面、结构清晰
本书全面介绍SQL的相关知识,从关系数据库基础引入SQL,根据SQL的语句要素介绍SQL基础、数据查询、数据定义、数据控制、数据安全、事务控制以及高级SQL应用等内容。
2.对比讲解,理解深刻
在涉及不同数据库软件使用的SQL差异时,本书给出了对于当前主流的数据库软件(SQL Server和Oracle)使用的SQL的对比讲解,使得读者在学习SQL标准语言的同时能够具体地熟悉这两种数据库软件。
3.案例精讲,深入剖析
为了使读者更好地理解SQL复杂语句中相关参数的作用,本书使用了非常多的示例来讲解这些参数的作用。在对每一个示例进行分析后给出了具体的实现语句,并给出返回结果和深入分析,使读者更快理解。
4.轻松入门,过目不忘
本书用朴实轻松的语句来介绍SQL的相关概念,然后用简单易懂的例子让读者加深印象,讲述方式轻松,相信读者看完就能学到技术的精髓。
5.注重类比,举一反三
鉴于SQL Server 2016中图形化界面和T-SQL语言的两种支持方式,本书许多例子都采用这两种方法来实现,便于读者进行类比,并学习不同的实现手法。
6.辅助面试题,攻克难点
本书每章的最后都给出了与本章技术相关的面试题,读者可通过自己解题的方式来回顾全章技术点。
本书内容
本书按照先易后难、循序渐进的原则,分为4部分。
第1部分是基础知识篇,包括数据库入门简介、SQL Server 2016的安装和卸载、创建数据库、操作数据表和视图,还有SQL Server 2016的管理以及数据维护。该篇主要介绍数据库的发展、SQL Server 2016的基本使用,如安装、卸载、创建数据库、操作数据表和视图以及如何进行管理和维护,为以后的学习打下基础。
第2部分是核心技术篇,包括T-SQL语言基本语法、SQL数据查询、SQL数据操作、存储过程以及触发器的使用。该篇主要介绍T-SQL语言的相关语法知识,使读者熟练使用T-SQL语言进行数据库的各种操作。
第3部分是高级使用篇,包括索引、游标、SQL函数的使用,事务、性能优化,以及云计算、大数据与云数据库相关的内容。学完该部分之后,不仅可以使用索引、游标和SQL函数,还能进行优化查询,加快查询速度,增加查询效率,给查询带来很多方便。
第4部分是数据库实战篇,选取两个实际的商业化应用程序进行分析,使读者能够真正掌握商业化应用程序开发的精髓。本书着眼于数据库方面的操作,按照需求分析→数据库设计→数据库实施→数据库维护进行讲解,使读者全身心地投入数据库的实战当中。
本书读者
? 做毕业设计的学生
? 数据库爱好者
? 数据分析人员
? 初学编程的自学者
? 编程爱好者
? 大中专院校的老师和学生
? 相关培训机构的老师和学员
? 程序测试及维护人员
代码、课件与教学视频
本书代码、课件与教学视频下载地址(注意数字与字母大小写)如下:
https://pan.baidu.com/s/1c1BYKtq(密码:pjeb)
如果下载有问题,请联系电子邮箱booksaga@163.com,邮件主题为“SQL Server 2016 从入门到实战”。
本书第1~12章主要由平顶山学院的孙亚南编写,第13~20章主要由郝军编写,其他参与编写的人员还有陈晓珺、陈云香、王晓华、刘泽楷、薛燚、吴贵文、薛福辉、管书香、王云云和支传华。
编 者
2017年11月
SQL Server 2016 从入门到实战(视频教学版) pdf下载声明
本pdf资料下载仅供个人学习和研究使用,不能用于商业用途,请在下载后24小时内删除。如果喜欢,请购买正版