首页 > 图书中心 > SQL Server从入门到精通(第4版)

目录

第1篇 基础知识

第1章 数据库基础 2

视频讲解:34分钟

1.1 数据库系统简介 2

1.1.1 数据库技术的发展 2

1.1.2 数据库系统的组成 3

1.2 数据库的体系结构 3

1.2.1 数据库三级模式结构 4

1.2.2 三级模式之间的映射 5

1.3 数据模型 5

1.3.1 数据模型的概念 6

1.3.2 常见的数据模型 6

1.3.3 关系数据库的规范化 7

1.3.4 关系数据库的设计原则 7

1.3.5 实体与关系 8

1.4 常见关系数据库 8

1.4.1 Access数据库 8

1.4.2 SQL Server数据库 8

1.4.3 Oracle数据库 9

1.4.4 MySQL数据库 9

1.5 小结 9

1.6 实践与练习 9

第2章 SQL Server数据库环境搭建 10

视频讲解:44分钟

2.1 SQL Server数据库简介 10

2.2 SQL Server 2019的安装与卸载 10

2.2.1 SQL Server 2019安装必备条件 11

2.2.2 下载SQL Server 2019安装引导文件 11

2.2.3 下载SQL Server 2019安装文件 12

2.2.4 安装SQL Server 2019数据库 13

2.2.5 安装SQL Server Management Studio管理工具 21

2.2.6 启动SQL Server管理工具 22

2.2.7 SQL Server 2019的卸载 22

2.3 小结 23

第3章 SQL Server服务的启动与注册 24

视频讲解:12分钟

3.1 SQL Server数据库服务 24

3.2 启动SQL Server服务 25

3.2.1 通过后台启动服务 25

3.2.2 通过配置管理器启动服务 25

3.3 注册SQL Server服务器 26

3.3.1 创建与删除服务器组 26

3.3.2 注册与删除服务器 28

3.4 小结 29

3.5 实践与练习 29

第4章 创建与管理数据库 30

视频讲解:24分钟

4.1 认识数据库 30

4.1.1 数据库基本概念 30

4.1.2 数据库常用对象 31

4.1.3 数据库组成 32

4.1.4 系统数据库 33

4.2 SQL Server的命名规则 33

4.2.1 标识符命名规则 33

4.2.2 对象命名规则 34

4.2.3 实例命名规则 35

4.3 数据库的创建与管理 35

4.3.1 创建数据库 35

4.3.2 修改数据库 40

4.3.3 删除数据库 43

4.4 小结 44

4.5 实践与练习 44

第5章 操作数据表 45

视频讲解:74分钟

5.1 数据表基础 46

5.1.1 基本数据类型 46

5.1.2 用户自定义数据类型 47

5.1.3 数据表的数据完整性 48

5.2 数据表的创建与管理 49

5.2.1 以界面方式操作数据表 50

5.2.2 使用CREATE TABLE语句创建表 51

5.2.3 使用ALTER TABLE语句修改表结构 54

5.2.4 使用DROP TABLE语句删除表 56

5.3 管理数据 56

5.3.1 使用INSERT语句添加数据 56

5.3.2 使用UPDATE语句修改数据 57

5.3.3 使用DELETE语句删除数据 58

5.4 创建、删除和修改约束 58

5.4.1 非空约束 58

5.4.2 主键约束 59

5.4.3 唯一约束 60

5.4.4 检查约束 62

5.4.5 默认约束 63

5.4.6 外键约束 64

5.5 关系的创建与维护 66

5.5.1 一对一关系 66

5.5.2 一对多关系 67

5.5.3 多对多关系 68

5.6 小结 68

5.7 实践与练习 68

第2篇 核心技术

第6章 SQL基础 70

视频讲解:106分钟

6.1 SQL概述 70

6.1.1 SQL的组成 71

6.1.2 SQL语句结构 71

6.1.3 SQL语句分类 72

6.2 常量 72

6.2.1 数字常量 72

6.2.2 字符串常量 72

6.2.3 日期和时间常量 73

6.2.4 符号常量 73

6.3 变量 73

6.3.1 局部变量 73

6.3.2 全局变量 75

6.4 注释符、运算符与通配符 76

6.4.1 注释符 76

6.4.2 运算符 77

6.4.3 通配符 80

6.5 流程控制 80

6.5.1 BEGIN...END 80

6.5.2 IF 81

6.5.3 IF…ELSE 82

6.5.4 CASE 83

6.5.5 WHILE 85

6.5.6 WHILE…CONTINUE…BREAK 86

6.5.7 RETURN 87

6.5.8 GOTO 88

6.5.9 WAITFOR 88

6.6 常用命令 89

6.6.1 DBCC 89

6.6.2 CHECKPOINT 90

6.6.3 DECLARE 90

6.6.4 PRINT 92

6.6.5 RAISERROR 92

6.6.6 READTEXT 93

6.6.7 BACKUP 93

6.6.8 RESTORE 94

6.6.9 SELECT 96

6.6.10 SET 97

6.6.11 SHUTDOWN 98

6.6.12 WRITETEXT 99

6.6.13 USE 99

6.7 小结 100

6.8 实践与练习 100

第7章 SQL函数的使用 101

视频讲解:68分钟

7.1 聚合函数 101

7.1.1 聚合函数概述 102

7.1.2 SUM函数 102

7.1.3 AVG函数 103

7.1.4 MIN函数 104

7.1.5 MAX函数 104

7.1.6 COUNT函数 105

7.1.7 DISTINCT函数 106

7.1.8 查询重复记录 107

7.2 数学函数 107

7.2.1 数学函数概述 108

7.2.2 ABS函数 108

7.2.3 PI函数 109

7.2.4 POWER函数 109

7.2.5 RAND函数 109

7.2.6 ROUND函数 110

7.2.7 SQUARE函数和SQRT函数 111

7.2.8 三角函数 112

7.3 字符串函数 114

7.3.1 字符串函数概述 114

7.3.2 ASCII函数 114

7.3.3 CHARINDEX函数 116

7.3.4 LEFT函数 116

7.3.5 RIGHT函数 117

7.3.6 LEN函数 118

7.3.7 REPLACE函数 118

7.3.8 REVERSE函数 119

7.3.9 STR函数 119

7.3.10 SUBSTRING函数 120

7.4 日期和时间函数 121

7.4.1 日期和时间函数概述 121

7.4.2 GETDATE函数 121

7.4.3 DAY函数 122

7.4.4 MONTH函数 122

7.4.5 YEAR函数 122

7.4.6 DATEDIFF函数 123

7.4.7 DATEADD函数 124

7.5 转换函数 125

7.5.1 转换函数概述 125

7.5.2 CAST函数 126

7.5.3 CONVERT函数 126

7.6 元数据函数 128

7.6.1 元数据函数概述 128

7.6.2 COL_LENGTH函数 129

7.6.3 COL_NAME函数 130

7.6.4 DB_NAME函数 130

7.7 小结 131

7.8 实践与练习 131

第8章 SQL数据查询基础 132

视频讲解:59分钟

8.1 SELECT检索数据 132

8.1.1 SELECT语句的基本结构 133

8.1.2 WITH子句 134

8.1.3 SELECT…FROM子句 135

8.1.4 INTO子句 139

8.1.5 WHERE子句 140

8.1.6 GROUP BY子句 150

8.1.7 HAVING子句 152

8.1.8 ORDER BY子句 152

8.1.9 COMPUTE子句 153

8.1.10 DISTINCT关键字 155

8.1.11 TOP关键字 155

8.2 UNION合并多个查询结果 156

8.2.1 UNION与连接之间的区别 156

8.2.2 使用UNION ALL合并表 157

8.2.3 UNION中的ORDER BY子句 158

8.2.4 UNION中的自动数据类型转换 158

8.2.5 使用UNION合并不同类型的数据 159

8.2.6 使用UNION合并有不同列数的两个表 159

8.2.7 使用UNION进行多表合并 159

8.3 小结 160

8.4 实践与练习 160

第9章 SQL数据高级查询 161

视频讲解:29分钟

9.1 子查询与嵌套查询 161

9.1.1 子查询概述 162

9.1.2 嵌套查询概述 162

9.1.3 简单的嵌套查询 162

9.1.4 带IN的嵌套查询 163

9.1.5 带NOT IN的嵌套查询 163

9.1.6 带SOME的嵌套查询 164

9.1.7 带ANY的嵌套查询 164

9.1.8 带ALL的嵌套查询 165

9.1.9 带EXISTS的嵌套查询 165

9.2 连接查询 166

9.2.1 内连接 166

9.2.2 外连接 167

9.2.3 交叉连接 169

9.2.4 连接多表 170

9.3 使用CASE函数进行查询 171

9.4 小结 174

9.5 实践与练习 174

第10章 视图的使用 175

视频讲解:13分钟

10.1 视图概述 175

10.2 视图的分类与操作 176

10.2.1 以界面方式操作视图 176

10.2.2 使用CREATE VIEW语句创建视图 177

10.2.3 使用ALTER VIEW语句修改视图 179

10.2.4 使用DROP VIEW语句删除视图 180

10.2.5 使用sp_rename重命名视图 181

10.3 通过视图操作数据 182

10.3.1 从视图中浏览数据 182

10.3.2 向视图中添加数据 183

10.3.3 修改视图中的数据 183

10.3.4 删除视图中的数据 184

10.4 小结 184

10.5 实践与练习 184

第3篇 高级应用

第11章 存储过程 186

视频讲解:28分钟

11.1 存储过程概述 186

11.1.1 存储过程的概念 186

11.1.2 存储过程的优点 187

11.2 创建存储过程 187

11.2.1 使用向导创建存储过程 187

11.2.2 使用CREATE PROC语句创建存储过程 188

11.3 管理存储过程 189

11.3.1 执行存储过程 190

11.3.2 查看存储过程 191

11.3.3 修改存储过程 192

11.3.4 重命名存储过程 194

11.3.5 删除存储过程 196

11.4 小结 197

11.5 实践与练习 197

第12章 触发器 198

视频讲解:20分钟

12.1 触发器概述 198

12.1.1 触发器的概念 198

12.1.2 触发器的优点 199

12.1.3 触发器的种类 199

12.2 创建触发器 199

12.2.1 创建DML触发器 200

12.2.2 创建DDL触发器 201

12.2.3 创建登录触发器 202

12.3 管理触发器 204

12.3.1 查看触发器 204

12.3.2 修改触发器 205

12.3.3 重命名触发器 207

12.3.4 禁用和启用触发器 207

12.3.5 删除触发器 209

12.4 小结 211

12.5 实践与练习 211

第13章 游标的使用 212

视频讲解:26分钟

13.1 游标的概述 212

13.1.1 游标的实现 213

13.1.2 游标的类型 213

13.2 游标的基本操作 214

13.2.1 声明游标 214

13.2.2 打开游标 217

13.2.3 读取游标中的数据 217

13.2.4 关闭游标 219

13.2.5 释放游标 219

13.3 使用系统过程查看游标 220

13.3.1 sp_cursor_list 220

13.3.2 sp_describe_cursor 222

13.4 小结 223

13.5 实践与练习 223

第14章 索引与数据完整性 224

视频讲解:57分钟

14.1 索引的概念 224

14.2 索引的优缺点 225

14.2.1 索引的优点 225

14.2.2 索引的缺点 225

14.3 索引的分类 225

14.3.1 聚集索引 225

14.3.2 非聚集索引 226

14.4 索引的操作 226

14.4.1 索引的创建 227

14.4.2 查看索引信息 229

14.4.3 索引的修改 231

14.4.4 索引的删除 231

14.4.5 设置索引的选项 233

14.5 索引的分析与维护 235

14.5.1 索引的分析 235

14.5.2 索引的维护 237

14.6 全文索引 239

14.6.1 使用可视化管理工具启用全文索引 240

14.6.2 使用SQL语句启用全文索引 241

14.6.3 使用SQL语句删除全文索引 244

14.6.4 全文目录的维护 244

14.7 数据完整性 246

14.7.1 域完整性 246

14.7.2 实体完整性 247

14.7.3 引用完整性 248

14.7.4 用户定义完整性 249

14.8 小结 249

14.9 实践与练习 249

第15章 SQL中的事务 250

视频讲解:29分钟

15.1 事务的概念 250

15.2 显式事务与隐式事务 251

15.2.1 显式事务 251

15.2.2 隐式事务 252

15.2.3 事务的COMMIT和ROLLBACK 253

15.3 使用事务 253

15.3.1 开始事务 253

15.3.2 结束事务 254

15.3.3 回滚事务 254

15.3.4 事务的工作机制 255

15.3.5 自动提交事务 256

15.3.6 事务的并发问题 256

15.3.7 事务的隔离级别 257

15.4 锁 260

15.4.1 SQL Server锁机制 260

15.4.2 锁模式 260

15.4.3 锁的粒度 261

15.4.4 查看锁 262

15.4.5 死锁 263

15.5 分布式事务处理 264

15.5.1 分布式事务简介 264

15.5.2 创建分布式事务 264

15.5.3 分布式事务处理协调器 265

15.6 小结 265

15.7 实践与练习 265

第16章 维护SQL Server数据库 266

视频讲解:34分钟

16.1 脱机与联机数据库 266

16.1.1 脱机数据库 266

16.1.2 联机数据库 267

16.2 分离和附加数据库 267

16.2.1 分离数据库 268

16.2.2 附加数据库 268

16.3 导入和导出数据表 269

16.3.1 导入SQL Server数据表 269

16.3.2 导入其他数据源的数据 272

16.3.3 导出SQL Server数据表 275

16.4 备份和恢复数据库 277

16.4.1 备份类型 277

16.4.2 恢复模式 278

16.4.3 备份数据库 278

16.4.4 恢复数据库 280

16.5 收缩数据库和文件 281

16.5.1 自动收缩数据库 281

16.5.2 手动收缩数据库 282

16.6 生成与执行SQL脚本 283

16.6.1 将数据库生成SQL脚本 283

16.6.2 将数据表生成SQL脚本 284

16.6.3 执行SQL脚本 285

16.7 小结 286

16.8 实践与练习 286

第17章 数据库的安全机制 287

视频讲解:30分钟

17.1 数据库安全概述 287

17.2 数据库登录管理 287

17.2.1 选择验证模式 287

17.2.2 管理登录账号 288

17.2.3 更改登录验证方式 296

17.2.4 设置密码 297

17.3 用户及权限管理 298

17.3.1 创建与删除数据库用户 298

17.3.2 设置服务器角色权限 299

17.4 小结 300

17.5 实践与练习 300

第4篇 项目实战

第18章 Visual C++ + SQL Server实现酒店客房管理系统 302

视频讲解:30分钟

18.1 开发背景 302

18.2 需求分析 303

18.3 系统设计 303

18.3.1 系统目标 303

18.3.2 系统功能结构 303

18.3.3 系统预览 304

18.3.4 业务流程图 305

18.3.5 数据库设计 306

18.4 主窗体设计 307

18.4.1 主窗体概述 307

18.4.2 主窗体实现过程 307

18.5 登录模块设计 312

18.5.1 登录模块概述 312

18.5.2 登录模块技术分析 313

18.5.3 登录模块设计过程 313

18.6 客房预订模块设计 318

18.6.1 客房预订模块概述 318

18.6.2 客房预订模块技术分析 318

18.6.3 客房预订模块实现过程 318

18.7 追加押金模块设计 323

18.7.1 追加押金模块概述 323

18.7.2 追加押金模块技术分析 323

18.7.3 追加押金模块实现过程 324

18.8 调房登记模块设计 329

18.8.1 调房登记模块概述 329

18.8.2 调房登记模块技术分析 329

18.8.3 调房登记模块实现过程 329

18.9 客房销售报表模块设计 335

18.9.1 客房销售报表模块概述 335

18.9.2 客房销售报表模块技术分析 335

18.9.3 客房销售报表模块实现过程 336

18.10 小结 345

第19章 C# + SQL Server实现企业人事管理系统 346

视频讲解:90分钟

19.1 系统概述 346

19.2 系统设计 347

19.2.1 系统目标 347

19.2.2 系统功能结构 347

19.2.3 系统业务流程图 348

19.3 系统运行环境 348

19.4 数据库与数据表设计 349

19.4.1 数据库分析 349

19.4.2 主要数据表结构 349

19.4.3 数据表逻辑关系 353

19.5 创建项目 355

19.6 公共类设计 356

19.6.1 MyMeans公共类 356

19.6.2 MyModule公共类 359

19.7 登录模块设计 373

19.7.1 设计登录窗体 373

19.7.2 按Enter键时移动鼠标焦点 374

19.7.3 登录功能的实现 374

19.8 系统主窗体设计 375

19.8.1 设计菜单栏 375

19.8.2 设计工具栏 376

19.8.3 设计导航菜单 377

19.8.4 设计状态栏 378

19.9 人事档案管理模块设计 379

19.9.1 设计人事档案管理窗体 379

19.9.2 添加/修改人事档案信息 381

19.9.3 删除人事档案信息 384

19.9.4 单条件查询人事档案信息 384

19.9.5 逐条查看人事档案信息 386

19.9.6 将人事档案信息导出为Word文档 388

19.9.7 将人事档案信息导出为Excel表格 392

19.10 用户设置模块设计 397

19.10.1 设计用户设置窗体 397

19.10.2 添加/修改用户信息 398

19.10.3 删除用户基本信息 399

19.10.4 设置用户操作权限 400

19.11 数据库维护模块设计 401

19.11.1 设计数据库维护窗体 401

19.11.2 备份数据库 401

19.11.3 还原数据库 402

19.12 小结 403

第20章 Java + SQL Server实现学生成绩管理系统 404

视频讲解:54分钟

20.1 系统概述 404

20.2 系统分析 405

20.2.1 需求分析 405

20.2.2 可行性研究 405

20.3 系统设计 405

20.3.1 系统目标 405

20.3.2 系统功能结构 405

20.3.3 系统预览 406

20.3.4 构建开发环境 407

20.3.5 文件夹组织结构 407

20.4 数据库设计 408

20.4.1 数据库分析 408

20.4.2 数据库概念设计 408

20.4.3 数据库逻辑结构设计 408

20.5 公共模块设计 410

20.5.1 各种实体类的编写 410

20.5.2 操作数据库公共类的编写 412

20.6 系统用户登录模块设计 417

20.6.1 系统用户登录模块概述 417

20.6.2 系统用户登录模块技术分析 417

20.6.3 系统用户登录模块实现过程 418

20.7 主窗体模块设计 419

20.7.1 主窗体模块概述 419

20.7.2 主窗体模块技术分析 420

20.7.3 主窗体模块实现过程 420

20.8 班级信息设置模块设计 423

20.8.1 班级信息设置模块概述 423

20.8.2 班级信息设置模块技术分析 424

20.8.3 班级信息设置模块实现过程 424

20.9 学生基本信息管理模块设计 427

20.9.1 学生基本信息管理模块概述 427

20.9.2 学生基本信息管理模块技术分析 427

20.9.3 学生基本信息管理模块实现过程 428

20.10 考试成绩信息管理模块设计 432

20.10.1 考试成绩信息管理模块概述 432

20.10.2 考试成绩信息管理模块技术分析 432

20.10.3 考试成绩信息管理模块实现过程 433

20.11 基本信息数据查询模块设计 437

20.11.1 基本信息数据查询模块概述 437

20.11.2 基本信息数据查询模块技术分析 438

20.11.3 基本信息数据查询模块实现过程 438

20.12 考试成绩班级明细查询模块设计 440

20.12.1 考试成绩班级明细查询模块概述 440

20.12.2 考试成绩班级明细查询模块技术分析 441

20.12.3 考试成绩班级明细查询模块实现过程 441

20.13 小结 443

版权所有(C)2023 清华大学出版社有限公司 京ICP备10035462号 京公网安备11010802042911号

联系我们 | 网站地图 | 法律声明 | 友情链接 | 盗版举报 | 人才招聘