图书目录

目录

第1章  数据库与SQL Server 2017 001

1.1 数据库与关系数据库 001

1.1.1 数据库简介 001

1.1.2 数据模型 001

1.1.3 关系数据库 002

1.2 常见数据库产品介绍 003

1.3 安装SQL Server 2017 004

1.4 升级SQL Server 2017 011

1.5 卸载SQL Server 2017 015

1.6 课后习题与练习 015

1.7 新手疑难问题解答 016

1.8 实战训练 017

第2章  SQL Server 2017管理工具的应用 018

2.1 安装SQL Server Management Studio 018

2.2 进入SQL Server 2017数据库 020

2.2.1 启动SQL Server 2017数据库服务 020

2.2.2 登录SQL Server 2017数据库 021

2.3 认识SQL Server 2017系统数据库 022

2.4 注册SQL Server 2017服务器 022

2.4.1 创建与删除服务器组 022

2.4.2 注册与删除服务器 023

2.5 配置身份验证模式 024

2.6 课后习题与练习 025

2.7 新手疑难问题解答 026

2.8 实战训练 026

第3章  数据库的创建与操作 028

3.1 创建数据库 028

3.1.1 了解数据库的结构 028

3.1.2 创建数据库的语法 028

3.1.3 一行语句创建数据库 029

3.1.4 创建带有自定义参数的数据库 029

3.1.5 创建包含多个文件的数据库 030

3.1.6 创建包含文件组的数据库 032

3.1.7 以图形向导方式创建数据库 033

3.2 修改数据库 035

3.2.1 修改数据库的名称 035

3.2.2 修改数据库的初始大小 036

3.2.3 修改数据库的最大容量 037

3.2.4 给数据库添加数据文件 038

3.2.5 清理数据库中无用的文件 041

3.2.6 以图形向导方式修改数据库 042

3.3 删除数据库 048

3.3.1 一行语句删除数据库 048

3.3.2 以图形向导方式删除数据库 048

3.4 查看数据库信息 049

3.4.1 查看系统中的全部数据库 049

3.4.2 查看数据库中的文件信息 049

3.4.3 查看数据库的空间使用情况 050

3.4.4 查看数据库和文件的状态 050

3.5 课后习题与练习 051

3.6 新手疑难问题解答 052

3.7 实战训练 052

第4章  数据表的创建与操作 053

4.1 数据表中能存放的数据类型 053

4.1.1 整数数据类型 053

4.1.2 浮点数据类型 053

4.1.3 字符数据类型 054

4.1.4 日期时间数据类型 054

4.1.5 货币数据类型 055

4.1.6 其他数据类型 055

4.2 自定义数据类型 055

4.2.1 创建自定义数据类型 055

4.2.2 删除自定义数据类型 057

4.3 创建数据表 059

4.3.1 创建数据表的基本语法 059

4.3.2 使用CREATE语句创建数据表 059

4.3.3 创建包含自动增长字段的数据表 060

4.3.4 创建包含自定义数据类型的数据表 061

4.3.5 在文件组上创建数据表 062

4.3.6 认识数据库中的临时表 063

4.3.7 以图形向导的方式创建数据表 063

4.4 修改数据表 064

4.4.1 变一变数据表的名称 064

4.4.2 更改表字段的数据类型 065

4.4.3 表字段的添加与删除 065

4.4.4 更改表字段的名称 066

4.4.5 以图形向导方式修改表 067

4.5 查看表信息 069

4.5.1 使用sp_help查看表信息 069

4.5.2 使用sys.objects查看表信息 070

4.5.3 使用information_schema.columns查看表信息 070

4.6 删除数据表 071

4.6.1 使用DROP语句删除数据表 071

4.6.2 以图形向导方式删除数据表 072

4.7 课后习题与练习 073

4.8 新手疑难问题解答 074

4.9 实战训练 074

第5章  数据表的完整性约束 075

5.1 数据完整性及其分类 075

5.1.1 数据完整性的分类 075

5.1.2 表中的约束条件有哪些 075

5.2 PRIMARY KEY约束 076

5.2.1 创建表时创建主键 076

5.2.2 修改表时创建主键 077

5.2.3 创建联合主键约束 078

5.2.4 删除表中的主键 079

5.3 FOREIGN KEY约束 081

5.3.1 创建表时创建外键 081

5.3.2 修改表时创建外键 083

5.3.3 删除表中的外键 085

5.4 DEFAULT约束 087

5.4.1 创建表时创建DEFAULT约束 087

5.4.2 修改表时创建DEFAULT约束 088

5.4.3 删除表中的DEFAULT约束 089

5.5 CHECK约束 090

5.5.1 创建表时创建CHECK约束 091

5.5.2 修改表时创建CHECK约束 093

5.5.3 删除表中的CHECK约束 094

5.6 UNIQUE约束 095

5.6.1 创建表时创建UNIQUE约束 095

5.6.2 修改表时创建UNIQUE约束 098

5.6.3 删除表中的UNIQUE约束 099

5.7 NOT NULL约束 101

5.7.1 创建表时创建NOT NULL约束 101

5.7.2 修改表时创建NOT NULL约束 101

5.7.3 删除表中的NOT NULL约束 102

5.8 课后习题与练习 103

5.9 新手疑难问题解答 103

5.10 实战训练 104

第6章  插入、更新与删除数据记录 106

6.1 向数据表中插入数据 106

6.1.1 给表里的所有字段插入数据 106

6.1.2 向表中添加数据时使用默认值 110

6.1.3 一次插入多条数据 110

6.1.4 通过复制表数据插入数据 111

6.1.5 以图形向导方式添加数据 113

6.2 更新数据表中的数据 114

6.2.1 更新表中的全部数据 115

6.2.2 更新表中指定单行数据 115

6.2.3 更新表中指定多行数据 116

6.2.4 更新表中前N条数据 116

6.2.5 以图形向导方式更新数据 117

6.3 删除数据表中的数据 118

6.3.1 根据条件清除数据 118

6.3.2 删除前N条数据 119

6.3.3 清空表中的数据 119

6.3.4 以图形向导方式删除数据 120

6.4 课后习题与练习 121

6.5 新手疑难问题解答 122

6.6 实战训练 122

第7章  数据的简单查询 124

7.1 认识SELECT语句 124

7.2 数据的简单查询 124

7.2.1 查询表中所有数据 125

7.2.2 查询表中想要的数据 126

7.2.3 使用TOP查询数据 126

7.2.4 对查询结果进行计算 126

7.2.5 为结果列使用别名 127

7.2.6 在查询时去除重复项 127

7.3 使用WHERE子句进行选择查询 127

7.3.1 条件表达式的数据查询 127

7.3.2 范围条件的数据查询 128

7.3.3 列表条件的数据查询 129

7.3.4 使用LIKE模糊查询 130

7.3.5 未知空数据的查询 132

7.4 操作查询的结果 132

7.4.1 对查询结果进行排序 133

7.4.2 对查询结果进行分组 133

7.4.3 对分组结果过滤查询 134

7.5 使用聚合函数进行统计查询 134

7.5.1 使用SUM()求列的和 134

7.5.2 使用AVG()求列平均值 135

7.5.3 使用MAX()求列最大值 136

7.5.4 使用MIN()求列最小值 137

7.5.5 使用COUNT()统计 137

7.6 课后习题与练习 138

7.7 新手疑难问题解答 139

7.8 实战训练 139

第8章  数据的连接查询 140

8.1 子查询 140

8.1.1 子查询概述 140

8.1.2 简单的子查询 140

8.1.3 使用IN的子查询 142

8.1.4 使用ANY的子查询 142

8.1.5 使用ALL的子查询 143

8.1.6 使用SOME的子查询 143

8.1.7 使用EXISTS的子查询 144

8.1.8 使用UNION的子查询 144

8.2 内连接查询 145

8.2.1 笛卡儿积查询 145

8.2.2 内连接的简单查询 146

8.2.3 等值内连接查询 146

8.2.4 非等值内连接查询 147

8.2.5 自连接的内连接查询 148

8.2.6 带条件的内连接查询 148

8.3 外连接查询 149

8.3.1 认识外连接查询 149

8.3.2 左外连接查询 150

8.3.3 右外连接查询 150

8.3.4 全外连接查询 150

8.4 课后习题与练习 151

8.5 新手疑难问题解答 152

8.6 实战训练 152

第9章  使用T-SQL语言 153

9.1 T-SQL语言简介 153

9.2 常量和变量 154

9.2.1 常量 154

9.2.2 变量 155

9.3 流程控制语句 157

9.3.1 BEGIN…END语句 157

9.3.2 IF…ELSE语句 157

9.3.3 CASE语句 158

9.3.4 WHILE语句 159

9.3.5 GOTO语句 160

9.3.6 WAITFOR语句 161

9.4 认识运算符 161

9.4.1 赋值运算符 162

9.4.2 算术运算符 162

9.4.3 比较运算符 162

9.4.4 逻辑运算符 163

9.4.5 一元运算符 164

9.4.6 位运算符 164

9.4.7 运算符的优先级 164

9.5 注释与通配符 165

9.5.1 注释 165

9.5.2 通配符 166

9.6 课后习题与练习 166

9.7 新手疑难问题解答 167

9.8 实战训练 167

第10章  系统函数与自定义函数 168

10.1 系统函数 168

10.1.1 数学函数 168

10.1.2 字符串函数 170

10.1.3 日期和时间函数 172

10.1.4 获取系统参数函数 173

10.1.5 数据类型转换函数 175

10.2 使用T-SQL语句管理自定义函数 176

10.2.1 创建自定义函数的语法 176

10.2.2 创建标量值函数 176

10.2.3 创建表值函数 177

10.2.4 修改自定义函数 178

10.2.5 删除自定义函数 179

10.3 以图形向导方式管理自定义函数 179

10.3.1 创建自定义函数 179

10.3.2 修改自定义函数 180

10.3.3 删除自定义函数 181

10.4 课后习题与练习 181

10.5 新手疑难问题解答 182

10.6 实战训练 183

第11章  视图的创建与应用 184

11.1 了解视图 184

11.1.1 视图的作用 184

11.1.2 视图的分类 185

11.2 创建视图 185

11.2.1 创建视图的语法规则 185

11.2.2 在单表上创建视图 185

11.2.3 在多表上创建视图 186

11.2.4 以图形向导方式创建视图 187

11.3 修改视图 188

11.3.1 修改视图的语法规则 188

11.3.2 修改视图的具体内容 188

11.3.3 重命名视图的名称 189

11.3.4 以图形向导方式修改视图 189

11.4 删除视图 190

11.4.1 删除视图的语法 190

11.4.2 删除不用的视图 190

11.4.3 以图形向导方式删除视图 191

11.5 查看视图信息 191

11.5.1 以图形向导方式查看 191

11.5.2 使用系统存储过程查看 192

11.6 使用视图更新数据 193

11.6.1 通过视图插入数据 193

11.6.2 通过视图修改数据 194

11.6.3 通过视图删除数据 195

11.7 课后习题与练习 195

11.8 新手疑难问题解答 196

11.9 实战训练 197

第12章  索引的创建与应用 198

12.1 了解索引 198

12.1.1 索引的作用 198

12.1.2 索引的分类 198

12.1.3 索引的使用标准 199

12.2 创建索引 199

12.2.1 创建索引的语法 199

12.2.2 创建聚集索引 201

12.2.3 创建非聚集索引 201

12.2.4 创建复合索引 201

12.2.5 以图形向导方式创建索引 202

12.3 修改索引 203

12.3.1 修改索引的语法 203

12.3.2 禁用索引 204

12.3.3 重新生成索引 204

12.3.4 重命名索引 205

12.3.5 以图形向导方式修改索引 205

12.4 查询索引 207

12.4.1 使用系统存储过程查询索引 207

12.4.2 以图形向导方式查看索引 207

12.4.3 查看索引的统计信息 208

12.5 删除索引 209

12.5.1 删除索引的语法 209

12.5.2 一次删除一个索引 209

12.5.3 一次删除多个索引 209

12.5.4 以图形向导方式删除索引 210

12.6 课后习题与练习 210

12.7 新手疑难问题解答 211

12.8 实战训练 211

第13章  存储过程的创建与应用 212

13.1 了解存储过程 212

13.1.1 存储过程的作用 212

13.1.2 存储过程的类型 213

13.2 创建存储过程 213

13.2.1 创建存储过程的语法格式 213

13.2.2 创建不带参数的存储过程 214

13.2.3 创建带输入参数的存储过程 215

13.2.4 创建带输出参数的存储过程 216

13.2.5 创建带加密选项的存储过程 216

13.2.6 以图形向导方式创建存储过程 216

13.3 执行存储过程 218

13.3.1 执行存储过程的语法格式 218

13.3.2 执行不带参数的存储过程 219

13.3.3 执行带输入参数的存储过程 219

13.3.4 执行带输出参数的存储过程 220

13.3.5 以图形向导方式执行存储过程 220

13.4 修改存储过程 221

13.4.1 修改存储过程的语法格式 221

13.4.2 使用T-SQL语句修改存储过程 221

13.4.3 修改存储过程的名称 222

13.4.4 以图形向导方式修改存储过程 223

13.5  查看存储过程 223

13.5.1 使用系统存储过程查看信息 223

13.5.2 以图形向导方式查看存储过程 225

13.6 删除存储过程 225

13.6.1 使用T-SQL语句删除存储过程 225

13.6.2 以图形向导方式删除存储过程 226

13.7 课后习题与练习 226

13.8 新手疑难问题解答 227

13.9 实战训练 227

第14章  触发器的创建与应用 228

14.1 了解触发器 228

14.1.1 触发器的作用 228

14.1.2 触发器的分类 228

14.2 创建DML触发器 229

14.2.1 创建触发器的语法 229

14.2.2 INSERT触发器 230

14.2.3 DELETE触发器 231

14.2.4 UPDATE触发器 232

14.2.5 INSTEAD OF触发器 233

14.3 创建其他类型的触发器 234

14.3.1 创建DDL触发器 234

14.3.2 创建登录触发器 235

14.3.3 创建嵌套触发器 237

14.3.4 创建递归触发器 237

14.4 修改触发器 238

14.4.1 修改DML触发器 238

14.4.2 修改DDL触发器 239

14.4.3 修改登录触发器 239

14.5 管理触发器 240

14.5.1 禁用触发器 240

14.5.2 启用触发器 241

14.5.3 重命名触发器 241

14.5.4 使用sp_helptext查看触发器 242

14.5.5 以图形向导方式查看触发器信息 242

14.6 删除触发器 242

14.6.1 使用T-SQL语句删除触发器 242

14.6.2 以图形向导方式删除触发器 243

14.7 课后习题与练习 243

14.8 新手疑难问题解答 244

14.9 实战训练 245

第15章  游标、事务和锁的应用 246

15.1 游标的应用 246

15.1.1 声明游标 246

15.1.2 打开游标 247

15.1.3 读取游标 247

15.1.4 关闭游标 248

15.1.5 释放游标 249

15.2 事务的应用 249

15.2.1 什么是事务 249

15.2.2 事务的特性 249

15.2.3 启动和保存事务 250

15.2.4 提交和回滚事务 250

15.2.5 事务应用案例 251

15.3 锁的应用 252

15.3.1 什么是锁 252

15.3.2 锁的模式 253

15.3.3 锁的粒度 253

15.3.4 锁应用案例 253

15.4 课后习题与练习 255

15.5 新手疑难问题解答 256

15.6 实战训练 256

第16章  用户账户及角色权限的管理 257

16.1 与数据库安全相关的对象 257

16.1.1 数据库用户 257

16.1.2 用户权限 257

16.1.3 认识角色 257

16.1.4 登录账户 258

16.2 登录账号管理 258

16.2.1 创建登录账户 258

16.2.2 修改登录账户 263

16.2.3 删除登录账户 264

16.3 用户管理 264

16.3.1 创建用户 265

16.3.2 修改用户 266

16.3.3 删除用户 268

16.4 角色管理 269

16.4.1 认识角色 269

16.4.2 创建角色 271

16.4.3 修改角色 274

16.4.4 删除角色 275

16.5 权限管理 276

16.5.1 认识权限 276

16.5.2 授予权限 276

16.5.3 拒绝权限 276

16.5.4 撤销权限 277

16.6 课后习题与练习 278

16.7 新手疑难问题解答 279

16.8 实战训练 279

第17章  数据库的备份与还原 280

17.1 认识数据库的备份与恢复 280

17.1.1 数据库备份的类型 280

17.1.2 数据库的恢复模式 281

17.1.3 配置恢复模式 281

17.2 数据库的备份设备 282

17.2.1 创建数据库备份设备 282

17.2.2 查看数据库备份设备 283

17.2.3 删除数据库备份设备 283

17.3 备份数据库 284

17.3.1 完整备份 284

17.3.2 差异备份 285

17.3.3 事务日志备份 285

17.3.4 文件和文件组备份 285

17.3.5 以图形向导方式备份数据库 286

17.4 还原数据库 288

17.4.1 还原数据库文件 288

17.4.2 以图形向导方式还原数据库 288

17.4.3 还原文件和文件组 291

17.4.4 以图形向导方式还原文件组 292

17.5 课后习题与练习 293

17.6 新手疑难问题解答 294

17.7 实战训练 294

第18章  SQL Server数据库的维护 295

18.1 认识SQL Server代理 295

18.1.1 启动SQL Server代理 295

18.1.2 关闭SQL Server代理 296

18.2 维护计划 296

18.2.1 创建维护计划 296

18.2.2 执行维护计划 299

18.3 作业 300

18.3.1 创建一个作业 300

18.3.2 定义一个作业步骤 300

18.3.3 创建一个作业执行计划 302

18.3.4 查看与管理作业 304

18.4 警报 306

18.4.1 创建警报 306

18.4.2 查看警报 306

18.4.3 删除警报 307

18.5 操作员 308

18.5.1 创建操作员 308

18.5.2 使用操作员 308

18.6 全程加密 309

18.6.1 选择加密类型 310

18.6.2 设置主密钥配置 313

18.7 课后习题与练习 314

18.8 新手疑难问题解答 315

18.9 实战训练 316