《Oracle数据库应用案例课堂》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:刘玉红,郭广新编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2016
  • ISBN:9787302422136
  • 页数:394 页
图书介绍:Oracle是世界上最受欢迎的数据库管理系统之一,其高效、稳定、灵活、可扩展性强并且非常安全,这些特性使其在全球获得越来越多开发人员的青睐,本书并不是枯燥的介绍理论,而是通过与不同难度的案例结合,比较全面地介绍Oracle。通过本书的学习,读者可以轻松掌握最前沿的Oracle技术,为以后高级特性的学习和应用程序的开发夯实数据库基础理论。

第1篇 Oracle数据库基础 3

第1章 初识Oracle 12c 3

1.1 数据库基础 4

1.1.1 什么是数据库 4

1.1.2 表 4

1.1.3 数据类型 5

1.1.4 主键 5

1.2 数据库技术构成 5

1.2.1 数据库系统 5

1.2.2 SQL 6

1.2.3 数据库访问技术 7

1.3 什么是Oracle 12c 8

1.3.1 Oracle的发展历程 8

1.3.2 Oracle 12c版本的新功能 9

1.3.3 Oracle的优势 11

1.4 Oracle工具 11

1.4.1 SQL Plus 11

1.4.2 Oracle SQL Developer 12

1.5 高手甜点 13

1.6 跟我学上机 14

第2章 Oracle的安装与环境配置 15

2.1 实例1——安装Oracle 12c 16

2.2 启动服务并登录Oracle数据库 21

2.2.1 实例2——启动Oracle服务 22

2.2.2 实例3——登录Oracle数据库 23

2.3 实例4——卸载Oracle 12c 27

2.4 高手甜点 30

2.5 跟我学上机 32

第2篇 Oracle数据库基本操作 35

第3章 数据库和数据表的基本操作 35

3.1 实例1——创建数据库 36

3.2 实例2——删除数据库 39

3.3 创建数据表 42

3.3.1 实例3——创建表的语法形式 42

3.3.2 实例4——使用主键约束 43

3.3.3 实例5——使用外键约束 45

3.3.4 实例6——使用非空约束 47

3.3.5 实例7——使用唯一性约束 48

3.3.6 实例8——使用默认约束 49

3.3.7 实例9——使用检查约束 50

3.3.8 实例10——设置表的属性值自动增加 51

3.4 实例11——查看数据表结构 52

3.5 修改数据表 52

3.5.1 实例12——修改表名 52

3.5.2 实例13——修改字段的数据类型 53

3.5.3 实例14——修改字段名 54

3.5.4 实例15——添加字段 54

3.5.5 实例16——删除字段 55

3.6 删除数据表 56

3.6.1 实例17——删除没有被关联的表 56

3.6.2 实例18——删除被其他表关联的主表 57

3.7 综合实例——数据表的基本操作 58

3.8 高手甜点 63

3.9 跟我学上机 65

第4章 数据类型和运算符 67

4.1 Oracle数据类型介绍 68

4.1.1 实例1——数值数据类型 68

4.1.2 实例2——日期和时间类型 69

4.1.3 实例3——字符串类型 72

4.2 如何选择数据类型 73

4.3 实例4——操作常见运算符 73

4.3.1 运算符概述 74

4.3.2 实例5——使用算术运算符 74

4.3.3 比较运算符 75

4.3.4 逻辑运算符 77

4.3.5 运算符的优先级 78

4.4 高手甜点 78

4.5 跟我学上机 79

第5章 视图的操作 81

5.1 视图概述 82

5.1.1 视图的含义 82

5.1.2 视图的作用 83

5.2 创建视图 83

5.2.1 实例1——创建视图的语法形式 83

5.2.2 实例2——在单表上创建视图 84

5.2.3 实例3——在多表上创建视图 84

5.2.4 实例4——创建视图的视图 85

5.2.5 实例5——创建没有源表的视图 86

5.3 实例6——查看视图 86

5.4 修改视图 87

5.4.1 实例7——CREATE OR REPLACEVIEW语句修改视图 87

5.4.2 实例8——ALTER语句修改视图的约束 88

5.5 实例9——更新视图 88

5.6 实例10——删除视图 90

5.7 限制视图的数据操作 90

5.7.1 实例11——设置视图的只读属性 90

5.7.2 实例12——设置视图的检查属性 91

5.8 综合实例——视图的应用 91

5.9 高手甜点 96

5.10 跟我学上机 97

第6章 插入、更新与删除数据 99

6.1 插入数据 100

6.1.1 为表的所有字段插入数据 100

6.1.2 为表的指定字段插入数据 102

6.1.3 同时插入多条记录 103

6.1.4 将查询结果插入到表中 104

6.2 更新数据 106

6.3 删除数据 107

6.4 综合实例——记录的插入、更新和删除 109

6.5 高手甜点 113

6.6 跟我学上机 113

第3篇 SQL查询语句 117

第7章 Oracle函数 117

7.1 Oracle函数简介 118

7.2 数学函数 118

7.2.1 实例1——绝对值函数ABS(x) 118

7.2.2 实例2——平方根函数SQRT(x)和求余函数MOD(x,y) 118

7.2.3 实例3——获取整数的函数CEIL(x)和FLOOR(x) 119

7.2.4 实例4——获取随机数的函数DBMS RANDOM.RANDOM和DBMS RANDOM.VALUE(x,y) 119

7.2.5 实例5——四舍五入函数ROUND(x)、ROUND(x,y)和TRUNC(x,y) 120

7.2.6 实例6——符号函数SIGN(x) 121

7.2.7 实例7——幂运算函数POWER(x,y)和EXP(x) 121

7.2.8 实例8——对数运算函数LOG(x,y)和LN(x) 121

7.2.9 实例9——正弦函数SIN(x)和反正弦函数ASIN(x) 122

7.2.10 实例10——余弦函数COS(x)和反余弦函数ACOS(x) 122

7.2.11 实例11——正切函数TAN(x)和反正切函数(ATAN(x)) 123

7.3 字符串函数 123

7.3.1 实例12——计算字符串长度的函数 123

7.3.2 实例13——合并字符串函数CONCAT(s 1,s2) 123

7.3.3 实例14——字符串搜索函数INSTR(s,x) 124

7.3.4 实例15——字母大小写转换函数LOWER(str),UPPER(str)和INITCAP(str) 124

7.3.5 实例16——获取指定长度的字符串的函数SUBSTR(s,m,n) 125

7.3.6 实例17——替换字符串的函数REPLACE(s 1,s2,s3) 125

7.3.7 实例18——删除字符串首尾指定字符的函数LTRIM(s,n)和RTRIM(s,n) 125

7.3.8 实例19——删除指定字符串的函数TRIM() 126

7.3.9 实例20——字符集名称和ID互换函数 126

7.4 日期和时间函数 127

7.4.1 实例21——获取当前日期和时间的函数 127

7.4.2 实例22——获取时区的函数 127

7.4.3 实例23——获取指定月份最后一天函数 128

7.4.4 实例24——获取指定日期后——周的日期函数 128

7.4.5 实例25——获取指定日期特定部分的函数 128

7.4.6 实例26——获取两个日期之间的月份数 129

7.5 转换函数 129

7.5.1 实例27——字符串转ASCII类型字符串函数 129

7.5.2 实例28——二进制转十进制函数 129

7.5.3 实例29——数据类型转换函数 130

7.5.4 实例30——数值转换为字符串函数 130

7.5.5 实例31——字符转日期函数 130

7.5.6 实例32——字符串转数字函数 131

7.6 系统信息函数 131

7.6.1 实例33——返回登录名函数 131

7.6.2 实例34——返回会话以及上下文信息函数 131

7.7 综合实例——Oracle函数的应用 132

7.8 高手甜点 134

7.9 跟我学上机 134

第8章 查询数据 137

8.1 基本查询语句 138

8.2 单表查询 139

8.2.1 实例1——查询所有字段 140

8.2.2 实例2——查询指定字段 141

8.2.3 实例3——查询指定记录 142

8.2.4 实例4——带IN关键字的查询 144

8.2.5 实例5——带BETWEEN AND的范围查询 145

8.2.6 实例6——带LIKE的字符匹配查询 146

8.2.7 实例7——查询空值 147

8.2.8 实例8——带AND的多条件查询 148

8.2.9 实例9——带OR的多条件查询 149

8.2.10 实例10——查询结果不重复 150

8.2.11 实例11——对查询结果排序 151

8.2.12 实例12——分组查询 154

8.2.13 实例13——使用限制查询结果的数量 159

8.3 使用聚合函数查询 160

8.3.1 实例14——COUNT()函数 160

8.3.2 实例15——SUM()函数 161

8.3.3 实例16——AVG()函数 162

8.3.4 实例17——MAX()函数 162

8.3.5 实例18——MIN()函数 163

8.4 连接查询 164

8.4.1 实例19——内连接查询 164

8.4.2 实例20——外连接查询 167

8.4.3 实例21——复合条件连接查询 169

8.5 子查询 170

8.5.1 实例22——带ANY、SOME关键字的子查询 170

8.5.2 实例23——带ALL关键字的子查询 171

8.5.3 实例24——带EXISTS关键字的子查询 171

8.5.4 实例25——带IN关键字的子查询 172

8.5.5 实例26——带比较运算符的子查询 174

8.6 实例27——合并查询结果 175

8.7 为表和字段取别名 178

8.7.1 实例28——为表取别名 178

8.7.2 实例29——为字段取别名 179

8.8 使用正则表达式查询 181

8.8.1 实例30——查询以特定字符或字符串开头的记录 181

8.8.2 实例31——查询以特定字符或字符串结尾的记录 182

8.8.3 实例32——用符号“.”来替代字符串中的任意一个字符 182

8.8.4 实例33——使用“*”和“+”来匹配多个字符 183

8.8.5 实例34——匹配指定字符串 183

8.8.6 实例35——匹配指定字符中的任意一个 184

8.8.7 实例36——匹配指定字符以外的字符 185

8.8.8 实例37——使用{n,}或者{n,m}来指定字符串连续出现的次数 186

8.9 综合实例——数据表查询操作 186

8.10 高手甜点 193

8.11 跟我学上机 193

第9章 PL/SQL编程 195

9.1 PL/SQL概述 196

9.1.1 PL/SQL是什么 196

9.1.2 实例1——PL/SQL的结构 196

9.1.3 实例2——PL/SQL的编程规范 198

9.2 实例3——使用常量和变量 200

9.3 实例4——使用表达式 201

9.4 PL/SQL的控制结构与语句 203

9.4.1 基本处理流程 203

9.4.2 实例5——IF条件控制语句 204

9.4.3 实例6——CASE条件控制语句 207

9.4.4 实例7——LOOP循环控制语句 210

9.5 PL/SQL中的异常 211

9.5.1 异常概述 211

9.5.2 实例8——异常处理 212

9.6 实例9——PL/SQL中的函数 213

9.7 高手甜点 214

9.8 跟我学上机 214

第10章 存储过程 215

10.1 创建存储过程 216

10.1.1 什么是存储过程 216

10.1.2 实例1——创建存储过程 216

10.2 实例2——调用存储过程 217

10.3 实例3——查看存储过程 218

10.4 存储过程的参数 218

10.4.1 实例4——无参数的存储过程 219

10.4.2 实例5——有参数的存储过程 220

10.5 实例6——修改存储过程 221

10.6 实例7——删除存储过程 221

10.7 实例8——查看存储过程的错误 221

10.8 综合实例——综合运用存储过程 222

10.9 高手甜点 224

10.10 跟我学上机 224

第11章 Oracle触发器 225

11.1 创建触发器 226

11.1.1 触发器是什么 226

11.1.2 实例1——创建只有一个执行语句的触发器 226

11.1.3 实例2——创建有多个执行语句的触发器 227

11.2 查看触发器 229

11.2.1 实例3——查看触发器的名称 229

11.2.2 实例4——查看触发器的内容信息 229

11.3 实例5——触发器的使用 230

11.4 实例6——修改触发器 231

11.5 实例7——删除触发器 231

11.6 综合实例——触发器使用 232

11.7 高手甜点 233

11.8 跟我学上机 234

第12章 游标的应用 235

12.1 认识游标 236

12.1.1 游标的概念 236

12.1.2 游标的优点 236

12.1.3 游标的分类 236

12.2 显式游标 237

12.2.1 实例1——声明游标 237

12.2.2 实例2——打开游标 237

12.2.3 实例3——读取游标中的数据 237

12.2.4 实例4——关闭游标 238

12.2.5 实例5——使用显式游标的案例 238

12.2.6 实例6——使用显式游标的LOOP语句 239

12.2.7 实例7——使用BULK COLLECT和FOR语句的游标 239

12.2.8 实例8——使用CURSOR FORLOOP语句的游标 240

12.2.9 实例9——显式游标的属性 241

12.3 隐式游标 243

12.3.1 实例10——使用隐式游标 244

12.3.2 实例11——隐式游标的属性 244

12.3.3 实例12——游标中使用异常处理 246

12.4 综合实例——游标的综合应用 247

12.5 高手甜点 248

12.6 跟我学上机 249

第4篇 Oracle数据库高级管理 253

第13章 事务与锁 253

13.1 事务管理 254

13.1.1 事务是什么 254

13.1.2 事务的属性 254

13.1.3 事务管理的常用语句 254

13.1.4 事务的类型 255

13.1.5 实例1——事务的应用实例 255

13.1.6 实例2——事务的保存点 256

13.2 锁 257

13.2.1 锁是什么 258

13.2.2 锁的分类 259

13.2.3 实例3——锁的类型 259

13.2.4 实例4——锁等待和死锁 260

13.3 综合实例——死锁的案例 261

13.4 高手甜点 262

13.5 跟我学上机 262

第14章 管理表空间和数据文件 263

14.1 什么是表空间 264

14.2 实例1——查看表空间 264

14.3 管理表空间 265

14.3.1 实例2——创建表空间 266

14.3.2 实例3——设置表空间的可用状态 266

14.3.3 实例4——设置表空间的读写状态 267

14.3.4 实例5——重命名表空间 267

14.3.5 实例6——删除表空间 268

14.3.6 实例7——建立大文件表空间 268

14.4 管理临时表空间 268

14.4.1 实例8——创建临时表空间 269

14.4.2 实例9——查看临时表空间 269

14.4.3 实例10——创建临时表空间组 269

14.4.4 实例11——查看临时表空间组 270

14.4.5 实例12——删除临时表空间组 270

14.5 管理数据文件 270

14.5.1 实例13——移动数据文件 270

14.5.2 删除数据文件 271

14.6 高手甜点 271

14.7 跟我学上机 271

第15章 Oracle的安全管理 273

15.1 账户管理 274

15.1.1 管理账号概述 274

15.1.2 实例1——新建普通用户 274

15.1.3 实例2——修改用户信息 275

15.1.4 实例3——删除用户 276

15.2 权限管理 276

15.2.1 实例4——授权 277

15.2.2 实例5——收回权限 277

15.2.3 实例6——查看权限 278

15.3 角色管理 279

15.3.1 角色概述 279

15.3.2 实例7——创建角色 279

15.3.3 实例8——设置角色 280

15.3.4 实例9——修改角色 280

15.3.5 实例10——查看角色 281

15.3.6 实例11——删除角色 281

15.4 管理概要文件PROFILE 281

15.4.1 PROFILE概述 281

15.4.2 实例12——创建概要文件 282

15.4.3 实例13——修改概要文件 282

15.4.4 实例14——删除概要文件 283

15.5 高手甜点 283

15.6 跟我学上机 283

第16章 控制文件和日志 285

16.1 实例1——了解控制文件 286

16.2 控制文件的应用实例 286

16.2.1 实例2——查看控制文件的内容 286

16.2.2 实例3——更新控制文件的内容 287

16.2.3 实例4——使用init.ora多路复用控制文件 287

16.2.4 实例5——使用SPFILE多路复用控制文件 288

16.2.5 实例6——创建控制文件 289

16.3 实例7——了解日志 291

16.4 管理日志文件 292

16.4.1 实例8——新建日志文件组 292

16.4.2 实例9——添加日志文件到日志文件组 292

16.4.3 实例10——删除日志文件组和日志文件 293

16.4.4 实例11——查询日志文件组和日志文件 293

16.5 高手甜点 294

16.6 跟我学上机 295

第17章 数据备份与还原 297

17.1 数据备份 298

17.1.1 实例1——冷备份 298

17.1.2 实例2——热备份 298

17.2 实例3——数据还原 299

17.3 表的导出和导入 300

17.3.1 实例4——用EXP工具导出数据 301

17.3.2 实例5——用EXPDP导出数据 301

17.3.3 实例6——用IMP导入数据 302

17.3.4 实例7——用IMPDP导入数据 302

17.4 高手甜点 303

17.5 跟我学上机 303

第18章 性能优化 305

18.1 优化简介 306

18.1.1 修改系统全局区 306

18.1.2 修改进程全局区 308

18.2 优化查询 308

18.2.1 分析查询语句的执行计划 308

18.2.2 索引对查询速度的影响 310

18.2.3 使用索引查询 311

18.2.4 优化子查询 311

18.3 优化数据库结构 311

18.3.1 将字段很多的表分解成多个表 312

18.3.2 增加中间表 313

18.3.3 增加冗余字段 314

18.3.4 优化插入记录的速度 314

18.4 优化Oracle服务器 316

18.4.1 优化服务器硬件 316

18.4.2 优化Oracle的参数 316

18.5 高手甜点 318

18.6 跟我学上机 318

第19章 SQL Plus工具详解 319

19.1 SQL Plus概述 320

19.2 使用SQL Plus的常用命令 320

19.2.1 实例1——连接指定的数据库 320

19.2.2 实例2——使用SQL Plus编辑命令 320

19.2.3 实例3——使用SQL Plus运行命令 326

19.2.4 实例4——使用SQL Plus保存命令 327

19.3 实例5——使用SQL Plus格式化查询结果 328

19.4 实例6——在SQL Plus中输出查询结果 332

19.5 实例7——在SQL Plus中为语句添加注释 333

19.6 高手甜点 335

19.7 跟我学上机 335

第5篇 Oracle开发与案例设计 339

第20章 Java操作Oracle数据库 339

20.1 JDBC概述 340

20.2 Java连接数据库 341

20.2.1 实例1——加载数据库驱动程序 341

20.2.2 实例2——以Thin方式连接Oracle数据库 343

20.2.3 实例3——以JDBC-ODBC桥方式连接Oracle数据库 344

20.3 Java操作Oracle数据库 347

20.3.1 实例4——创建Statement对象 347

20.3.2 实例5——使用SELECT语句查询数据 347

20.3.3 实例6——插入、更新和删除数据 348

20.3.4 实例7——执行任意SQL语句 348

20.3.5 实例8——关闭创建的对象 349

20.4 高手甜点 350

20.5 跟我学上机 350

第21章 设计论坛管理系统数据库 351

21.1 系统概述 352

21.2 系统功能 352

21.3 数据库设计和实现 353

21.3.1 设计方案图表 353

21.3.2 设计表 355

21.3.3 设计索引 359

21.3.4 设计视图 360

21.3.5 设计触发器 360

21.4 本章小结 361

第22章 设计新闻发布系统数据库 363

22.1 系统概述 364

22.2 系统功能 364

22.3 数据库设计和实现 365

22.3.1 设计表 365

22.3.2 设计索引 370

22.3.3 设计视图 371

22.3.4 设计触发器 371

22.4 本章小结 372

第23章 设计公司人事管理系统数据库 373

23.1 系统概述 374

23.2 系统功能 374

23.3 数据库设计和实现 375

23.3.1 设计表 375

23.3.2 设计索引 380

23.3.3 设计视图 381

23.3.4 设计触发器 382

23.4 本章小结 383

第24章 设计学生信息管理系统数据库 385

24.1 系统概述 386

24.2 系统功能 386

24.3 数据库设计和实现 387

24.3.1 设计表 387

24.3.2 设计索引 391

24.3.3 设计视图 392

24.3.4 设计触发器 393

24.4 本章小结 394