《SQL从入门到精通 微课视频版》PDF下载

  • 购买积分:20 如何计算积分?
  • 作  者:陈贻品
  • 出 版 社:
  • 出版年份:2020
  • ISBN:
  • 页数:0 页
图书介绍:

第1章 数据库及基本操作 1

1.1数据库基础知识 1

1.1.1数据库的应用 1

1.1.2数据库相关术语 1

1.1.3 SQL简介 2

1.1.4数据库的类型 2

1.2主要关系型数据库管理系统简介 3

1.2.1 MySQL 3

1.2.2 SQL Server 3

1.2.3 Oracle 4

1.3在MySQL中执行SQL语句 4

1.3.1安装MySQL 4

1.3.2使用命令行执行SQL语句 5

1.3.3使用Workbench执行SQL语句 6

1.4在SQL Server中执行SQL 8

1.4.1 SQL Server 2017的安装 8

1.4.2使用SQL Server管理工具创建数据库 9

1.4.3使用SQL Server管理工具执行SQL语句 10

1.5在Oracle 12c中执行SQL语句 12

1.5.1安装Oracle 12c 12

1.5.2使用SQL Developer执行SQL语句 13

1.5.3使用SQL Plus执行SQL语句 16

第2章SQL语言基础 18

2.1 SQL概述 18

2.1.1 SQL的历史 18

2.1.2 SQL的特点 18

2.1.3 SQL的功能 19

2.2 SQL语言的组成 19

2.2.1数据定义语言——DDL 20

2.2.2数据查询语言——DQL 20

2.2.3数据操纵语言——DML 20

2.2.4数据控制语言——DCL 20

2.3探索SQL环境 21

2.3.1了解SQL执行环境 21

2.3.2了解SQL数据库的层次结构 21

2.3.3在SQL环境中命名对象 22

第3章 数据表 23

3.1数据类型 23

3.1.1 SQL常用数据类型 23

3.1.2 MySQL中的数据类型 24

3.1.3 SQL Server中的数据类型 26

3.1.4 Oracle中的数据类型 28

3.2数据表基础 30

3.2.1数据表中的记录和字段 30

3.2.2表结构 30

3.3表逻辑设计 31

3.3.1 E-R模型图 31

3.3.2规范化与范式 32

3.4表的创建(CREATE TABLE) 33

3.4.1使用CREATE TABLE语句创建表 33

3.4.2创建带有主键的表 34

3.5表结构的修改(ALTER TABLE) 35

3.5.1 ALTER TABLE语句格式 35

3.5.2 增加新字段 36

3.5.3增加带有默认值的新字段 38

3.5.4修改字段的类型和宽度 39

3.5.5删除字段 40

3.5.6删除带有默认值的字段 41

3.5.7更改主键 42

3.6表的删除、截断与重命名 43

3.6.1删除表 43

3.6.2截断表 44

3.6.3重命名表 44

3.7创建与删除数据库 44

3.7.1创建数据库 44

3.7.2删除数据库 45

3.7.3创建本书使用的数据表 45

第4章 索引 49

4.1索引基础 49

4.1.1使用索引的原因 49

4.1.2索引的种类 49

4.2索引的创建和使用 50

4.2.1创建索引前应当注意的内容 50

4.2.2创建索引的SQL语句 51

4.2.3创建和使用非聚簇索引 52

4.2.4创建和使用唯一索引 55

4.3索引的删除 56

第5章 查询数据——SELECT语句 58

5.1 SELECT语句的组成结构 58

5.1.1最基本的语法格式 58

5.1.2带有主要子句的语法格式 59

5.1.3 SELECT各子句的执行顺序 59

5.1.4关于SELECT语句的一些说明 60

5.2查询数据 60

5.2.1查询单字段的方法 60

5.2.2去除重复信息——DISTINCT 61

5.2.3查询多字段 62

5.2.4查询所有字段 63

5.2.5根据现有字段值计算新字段值 63

5.2.6命名新列(别名)——AS 64

5.2.7将查询结果保存为新表 65

5.2.8连接字段 67

5.3排序数据 69

5.3.1按单字段排序 69

5.3.2设置排序方向 69

5.3.3按多字段排序 70

5.3.4按字段位置排序 71

第6章 条件查询 73

6.1条件表达式 73

6.1.1指针与字段变量的概念 73

6.1.2条件表达式 73

6.2使用WHERE关键字设置查询条件 75

6.2.1 WHERE子句用法 76

6.2.2查询数值数据 77

6.2.3查询字符型数据 78

6.2.4查询日期数据 79

6.2.5按范围查询数据(BETWEEN) 80

6.2.6查询空值 81

6.3排序条件查询的结果 82

6.4查询前n条记录 82

第7章 高级条件查询 84

7.1组合WHERE子句 84

7.1.1 AND运算符 84

7.1.2 OR运算符 85

7.1.3 AND与OR的优先顺序问题 86

7.2使用IN运算符 87

7.2.1使用IN运算符 87

7.2.2使用IN运算符的优点 89

7.3 NOT运算符 90

7.4实现模糊查询 92

7.4.1 LIKE运算符 92

7.4.2“%”通配符 93

7.4.3使用“%”通配符查询日期型数据 95

7.4.4“”通配符 96

7.4.5正则表达式 98

7.4.6定义转义字符 99

第8章SQL函数的使用 101

8.1 SQL函数的说明 101

8.2 SQL Server的函数 101

8.2.1类型转换函数 101

8.2.2日期函数 104

8.2.3数学函数 107

8.2.4字符函数 109

8.3 Oracle的函数 112

8.3.1类型转换函数 112

8.3.2日期函数 116

8.3.3数值函数 119

8.3.4字符函数 119

8.4 MySQL的函数 120

8.4.1类型转换函数 120

8.4.2日期函数 121

8.4.3数值函数 123

8.4.4字符函数 124

8.5将NULL更改为其他值的函数 124

8.5.1 SQL Server的ISNULL()函数 125

8.5.2 Oracle的NVL()函数 126

8.5.3 MySQL的IFNULL()函数 126

8.6 IF…ELSE逻辑函数 126

8.6.1 DECODE()函数 126

8.6.2 CASE()函数 127

第9章 聚合函数与分组数据 129

9.1聚合函数 129

9.1.1使用COUNT()函数求记录个数 129

9.1.2使用SUM()函数求某字段的和 131

9.1.3使用AVG()函数求某字段的平均值 133

9.1.4使用MAX()、MIN()函数求最大、最小值 133

9.1.5统计汇总相异值(不同值)记录 134

9.1.6聚合函数对NULL值的处理 134

9.2数据分组 136

9.2.1将表内容按列分组 136

9.2.2聚合函数与分组配合使用 138

9.2.3查询数据的直方图 139

9.2.4排序分组结果 139

9.2.5反转查询结果 140

9.2.6使用HAVING子句设置分组查询条件 141

9.2.7 HAVING子句与WHERE子句的区别 142

第10章 多表连接查询 144

10.1将数据存储在多个不同表的原因 144

10.2范式 145

10.3连接查询 146

10.3.1连接两表的方法 146

10.3.2使用笛卡尔积解决录入难题 148

10.3.3使用两表连接查询数据 150

10.3.4多表连接查询 150

10.3.5使用表别名简化语句 151

10.3.6使用INNER JOIN连接查询 153

10.4高级连接查询 154

10.4.1自连接查询 154

10.4.2内连接查询 156

10.4.3外连接查询 158

10.4.4交叉连接查询 160

10.4.5连接查询中使用聚合函数 161

10.5组合查询 162

10.5.1使用组合查询 163

10.5.2使用UNION的规则 165

10.5.3使用UNION解决不支持全外连接的问题 166

10.5.4使用UNION得到复杂的统计汇总样式 167

10.5.5排序组合查询的结果 168

第11章 子查询 170

11.1返回单值的子查询 170

11.1.1使用返回单值的子查询 170

11.1.2子查询与聚合函数的配合使用 171

11.2返回一列值的子查询 174

11.2.1使用IN的子查询 174

11.2.2使用NOT IN的子查询 175

11.3相关子查询 175

第12章 视图 177

12.1视图基础 177

12.1.1视图引例 177

12.1.2使用视图的原因以及注意问题 179

12.1.3视图的规则和限制 180

12.2视图的创建 181

12.2.1创建视图的SQL语句 181

12.2.2利用视图提高数据安全性 183

12.2.3利用视图得到汇总数据 184

12.2.4利用视图简化计算字段的使用 185

12.2.5利用视图简化多表连接 187

12.3视图的删除 188

第13章 插入数据 189

13.1直接向表插入数据 189

13.1.1插入完整的行 189

13.1.2向日期时间型字段插入数据 190

13.1.3将数据插入到指定字段 191

13.1.4将查询结果插入表 194

13.1.5 INSERT SELECT与SELECTINTO的区别 195

13.2通过视图插入数据 196

13.2.1通过视图插入数据 196

13.2.2使用带有WITH CHECK OPTION选项的视图 198

第14章 更新和删除数据 200

14.1更新表中的数据 200

14.1.1更新单个字段的数据 200

14.1.2更新多个字段的数据 202

14.1.3使用子查询更新数据 203

14.1.4使用表连接更新数据 204

14.1.5使用UPDATE语句删除指定字段的数据 204

14.2删除表中的数据 206

14.2.1使用DELETE语句删除指定记录 206

14.2.2在DELETE语句中使用多表连接 207

14.2.3使用DELETE语句删除所有记录 209

14.2.4使用TRUNCATE语句删除所有记录 209

14.3通过视图更新表 210

14.3.1不能用于更新的视图 210

14.3.2通过视图更新表数据 211

14.3.3通过视图删除表数据 212

第15章 管理数据库的安全 214

15.1 MySQL数据库安全 214

15.1.1权限相关的表 214

15.1.2用SQL语句创建用户与授权 215

15.1.3 MySQL Workbench创建用户与授权 217

15.2 Oracle数据库用户管理 219

15.2.1创建用户 219

15.2.2修改用户 221

15.2.3给用户授予CREATE SESSION权限 221

15.2.4给用户授予SELECT权限 223

15.2.5给用户授予INSERT、UPDATE和DELETE权限 224

15.2.6给用户授予系统权限 228

15.2.7给所有用户授予权限 228

15.2.8查看用户拥有的权限 229

15.2.9取消用户的指定权限 230

15.2.10删除用户 231

15.3 Oracle数据库角色管理 231

15.3.1角色的概念 231

15.3.2创建角色——CREATE ROLE 231

15.3.3给角色授权——GRANT 232

15.3.4将角色授予用户——GRANT 233

15.3.5查看角色的权限 235

15.3.6取消角色——REVOKE 236

15.3.7删除角色——DROP ROLE 237

15.3.8 Oracle中系统预定义的角色 237

15.4 SQL Server安全管理 237

15.4.1 SQL Server的安全认证模式 238

15.4.2向SQL Server添加安全账户 238

15.4.3从SQL Server删除安全账户 241

15.4.4 SQL Server权限管理 242

15.4.5 SQL Server角色管理 244

第16章 完整性控制 248

16.1了解完整性约束 248

16.1.1数据的完整性 248

16.1.2完整性约束的类型 249

16.2与表有关的约束 249

16.2.1字段约束与表约束的创建 250

16.2.2非空约束——NOT NULL 250

16.2.3唯一约束——UNIQUE 252

16.2.4主键约束——PRIMARY KEY 253

16.2.5外键约束——FOREIGN KEY 256

16.2.6校验约束——CHECK 258

16.3扩展外键约束的内容 259

第17章 存储过程和函数 263

17.1存储过程基础 263

17.1.1存储过程基础 263

17.1.2存储过程的优点 264

17.2在MySQL中创建和使用存储过程 265

17.2.1创建存储过程的语法 265

17.2.2调用存储过程 266

17.2.3创建带输出参数的存储过程 266

17.2.4删除存储过程 267

17.3在SQL Server中创建和使用存储过程 267

17.3.1 SQL Server的系统存储过程 267

17.3.2创建存储过程的语法 268

17.3.3调用语句EXECUTE的语法 270

17.3.4创建简单存储过程 270

17.3.5创建带输入参数的存储过程 271

17.3.6给输入参数设置默认值 272

17.3.7创建带输出参数的存储过程 273

17.3.8创建有多条SQL语句的存储过程 274

17.3.9删除存储过程 275

17.4在SQL Server中创建和使用函数 276

17.4.1标量值函数 277

17.4.2表值函数 278

17.4.3删除用户定义函数 280

17.5 SQL Server几个系统存储过程的使用 281

17.5.1使用sp_ rename重命名对象 281

17.5.2使用sp_depends显示引用对象 281

17.5.3使用sp_help显示对象信息 282

17.5.4使用sp_helptext显示对象的源码 282

17.6 Oracle中的存储过程和函数 283

17.6.1在Oracle中使用存储过程 283

17.6.2在Oracle中使用函数 284

17.6.3在Oracle中使用user source获取信息 285

第18章SQL触发器 286

18.1 SQL触发器基础 286

18.2在SQL Server中创建和使用触发器 286

18.2.1创建触发器的语法 286

18.2.2使用INSERT触发器 288

18.2.3使用DELETE触发器 289

18.2.4使用UPDATE触发器 291

18.2.5使用INSTEAD OF触发器 293

18.2.6使用条件插入触发器 294

18.2.7删除触发器 297

18.3在Oracle中创建和使用触发器 297

18.3.1创建触发器的语法 297

18.3.2行级触发器 298

18.3.3语句级触发器 299

18.3.4判断所执行的数据修改操作 300

18.3.5系统触发器 300

18.3.6追踪数据库启动与关闭信息 301

18.3.7追踪用户DDL操作信息 303

18.3.8禁用和删除触发器 306

18.3.9从user_triggers中查询触发器信息 307

18.4在MySQL中创建和使用触发器 307

18.4.1创建触发器的语法 307

18.4.2使用INSERT触发器 308

18.4.3删除触发器 309

第19章 控制流语句 310

19.1 SQL Server的控制流语句 310

19.1.1 BEGIN…END语句 310

19.1.2 IF…ELSE语句 310

19.1.3 WHILE语句 311

19.1.4 BREAK命令 312

19.1.5 CONTINUE命令 313

19.1.6 WAITFOR语句 313

19.2 Oracle的控制流语句 314

19.2.1 IF…THEN…ELSE语句 314

19.2.2 IF…THEN…ELSIF语句 315

19.2.3 LOOP语句 315

19.2.4 WHILE语句 316

19.2.5 FOR语句 316

19.3 MySQL的控制流语句 316

19.3.1 IF…THEN…ELSE语句 317

19.3.2 LOOP语句 317

19.3.3 REPEAT语句 318

19.3.4 WHILE语句 318

19.4控制流语句的应用 319

19.4.1判断数据库对象是否存在 319

19.4.2向日志表循环插入日期数据 322

19.4.3使用游标和循环提取数据 324

第20章 事务处理 327

20.1事务基础 327

20.1.1事务的概念 327

20.1.2事务的案例 327

20.1.3事务的ACID特性 328

20.2控制事务处理 328

20.2.1开始事务处理 328

20.2.2使用ROLLBACK撤销事务 329

20.2.3使用COMMIT提交事务 332

20.2.4根据判断提交或撤销事务 334

20.2.5 Oracle的语句级事务处理 337

20.2.6使用保存点 338

20.3并发事务 340

20.3.1并发事务处理 340

20.3.2事务锁 341

20.3.3事务隔离级别 342