当前位置:首页 > 工业技术
Oracle PL/SQL程序设计  上  第6版
Oracle PL/SQL程序设计  上  第6版

Oracle PL/SQL程序设计 上 第6版PDF电子书下载

工业技术

  • 电子书积分:15 积分如何计算积分?
  • 作 者:(美)Steven Feuerstein,(美)Bill Pribyl著;方鑫译
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2017
  • ISBN:7115448752
  • 页数:493 页
图书介绍:本书介绍PL/SQL的新特性,包括数据类型和声明、扩展正则表达式、本地化代码生成、性能优化工具、分级优化器、动态SQL优化、PL/SQL表达式序列化等。内容涵盖语法、特性、最佳实践、最优化建议以及扩展代码。
《Oracle PL/SQL程序设计 上 第6版》目录

第1部分用PL/SQL编程 3

第1章PL/SQL介绍 3

1.1什么是PL/SQL 3

1.2 PL/SQL的起源 4

1.2.1早期的PL/SQL 4

1.2.2提高应用的可移植性 4

1.2.3提高执行权限控制和交易完整性 5

1.2.4低调开始,持续改进 5

1.3这就是PL/SQL 6

1.3.1与SQL的集成 6

1.3.2控制和条件逻辑 7

1.3.3出错处理 8

1.4关于PL/SQL版本 9

1.4.1 Oracle数据库12c中PL/SQL的新特性 10

1.5可供PL/SQL开发者使用的资源 12

1.5.1 O’Reilly的PL/SQL系列图书 13

1.5.2网络上的PL/SQL资源 14

1.6一些建议 15

1.6.1别急,慢慢来 15

1.6.2不要畏惧寻求帮助 16

1.6.3采用有创造性的甚至激进的方法 17

第2章 创建和运行PL/SQL代码 18

2.1在数据库中导航 18

2.2创建和编辑源代码 19

2.3 SQL*Plus 19

2.3.1启动SQL*Plus 21

2.3.2运行SQL语句 22

2.3.3运行PL/SQL程序 22

2.3.4运行一个脚本 24

2.3.5什么是“当前目录” 24

2.3.6其他SQL*Plus任务 25

2.3.7 SQL*Plus中的异常处理 29

2.3.8为什么SQL*Plus让我们又爱又恨 30

2.4执行基本的PL/SQL任务 30

2.4.1创建存储程序 31

2.4.2执行存储的程序 33

2.4.3显示存储程序 34

2.4.4存储程序的授权和别名 35

2.4.5删除一个存储程序 36

2.4.6隐藏存储程序的源代码 36

2.5编辑PL/SQL的环境 37

2.6从其他语言中调用PL/SQL 37

2.6.1 C语言,使用Oracle预编辑器(Pro*C) 38

2.6.2 Java:使用JDBC 39

2.6.3 Perl:使用Perl DBI和DBD::Oracle 40

2.6.4 PHP:使用Oracle扩展 41

2.6.5 PL/SQL Server Pages 42

2.6.6其他 43

第3章 语言基础 44

3.1 PL/SQL块结构 44

3.1.1匿名块 46

3.1.2命名块 47

3.1.3嵌套块 47

3.1.4作用范围 48

3.1.5规范SQL语句中对变量和列的引用 49

3.1.6可见性 51

3.2 PL/SQL字符集 54

3.3标识符 56

3.3.1保留字 57

3.3.2空白和关键字 58

3.4直接量 59

3.4.1 NULL 60

3.4.2在一个直接量字符串中嵌入单引号 61

3.4.3数字直接量 61

3.4.4布尔直接量 62

3.5分号分隔符 62

3.6注释 63

3.6.1单行注释语法 63

3.6.2多行注释语法 63

3.7 PRAGMA关键字 64

3.8标签 65

第2部分PL/SQL程序结构 69

第4章 条件与顺序控制 69

4.1 IF语句 69

4.1.1 IF-THEN组合 69

4.1.2 IF-THEN-ELSE的组合 71

4.1.3 IF-THEN-ELSIF组合 73

4.1.4避免IF语法陷阱 73

4.1.5嵌套的IF语句 75

4.1.6短路估算 75

4.2 CASE语句和表达式 77

4.2.1简单的CASE语句 77

4.2.2搜索CASE语句 79

4.2.3嵌套CASE语句 81

4.2.4 CASE表达式 81

4.3 GOTO语句 83

4.4 NULL语句 84

4.4.1提高程序的可读性 84

4.4.2在标签后使用NULL 84

第5章 循环迭代处理 86

5.1循环的基础知识 86

5.1.1不同循环的示例 86

5.1.2 PL/SQL循环的结构 88

5.2简单循环 89

5.2.1终止简单循环:EXIT和EXIT WHEN 89

5.2.2模仿REPEAT UNTIL循环 90

5.2.3故意的无限循环 91

5.3 WHILE循环 92

5.4数值型FOR循环 93

5.4.1数值型FOR循环的规则 94

5.4.2数值型FOR循环的示例 94

5.4.3处理特殊增量 95

5.5游标FOR循环 96

5.5.1游标FOR循环的示例 97

5.6循环标签 98

5.7 CONTINUE语句 99

5.8迭代处理技巧 102

5.8.1为循环索引使用可理解的名称 102

5.8.2以正确的方式说再见 102

5.8.3获取FOR循环执行的信息 103

5.8.4循环SQL语句 104

第6章 异常处理 106

6.1异常处理概念和术语 106

6.2定义异常 108

6.2.1声明命名异常 108

6.2.2关联异常名称与错误代码 109

6.2.3命名的系统异常 112

6.2.4异常作用范围 114

6.3引发异常 115

6.3.1 RAISE语句 115

6.3.2使用RAISE APPLICATIONERROR 116

6.4处理异常 117

6.4.1内置错误函数 118

6.4.2单一处理句柄中结合多个异常 122

6.4.3未处理异常 123

6.4.4未处理异常的传播 123

6.4.5继续过去的异常 125

6.4.6编写WHEN OTHERS处理代码 127

6.5构建有效的错误管理架构 129

6.5.1确定我们的异常管理策略 129

6.5.2对不同类型异常进行标准化处理 130

6.5.3程序特定错误代码的组织使用 133

6.5.4使用标准的错误管理程序 133

6.5.5使用自己的异常“对象” 135

6.5.6创建常见错误处理的标准模板 137

6.6充分利用PL/SQL错误管理 138

第3部分PL/SQL程序数据 141

第7章 使用程序数据 141

7.1程序数据的命名 141

7.2 PL/SQL数据类型概述 143

7.2.1字符数据 143

7.2.2数字 144

7.2.3日期、时间戳和时间间隔 145

7.2.4布尔类型 145

7.2.5二进制数据类型 146

7.2.6 ROWID 146

7.2.7 REF CURSOR 146

7.2.8 Intemet数据类型 147

7.2.9 “Any”数据类型 147

7.2.10用户自定义数据类型 147

7.3程序数据的声明 147

7.3.1声明一个变量 148

7.3.2声明常量 148

7.3.3 NOT NULL语句 149

7.3.4锚定声明 149

7.3.5游标和表的锚 151

7.3.6使用锚定声明的益处 152

7.3.7 NOT NULL数据类型的锚 153

7.4程序员定义的子类型 153

7.5数据类型转换 154

7.5.1隐式类型转换 155

7.5.2显式类型转换 156

第8章 字符串 162

8.1字符串类型 162

8.1.1 VARCHAR2数据类型 163

8.1.2 CHAR数据类型 164

8.1.3 String子类型 164

8.2使用字符串 165

8.2.1指定字符串常量 165

8.2.2不可打印字符 167

8.2.3拼接字符串 168

8.2.4处理大小写 169

8.2.5传统的检索、提取和替换 172

8.2.6填充 174

8.2.7剪裁 176

8.2.8正则表达式的检索、提取和替换 177

8.2.9使用空字符串 187

8.2.10 混用CHAR和VARCHAR2 188

8.3字符串函数快速参考 190

第9章 数字 199

9.1数值型数字类型 199

9.1.1 NUMBER类型 200

9.1.2 PLS INTEGER类型 204

9.1.3 BINARY INTEGER类型 205

9.1.4 SIMPLE INTEGER类型 205

9.1.5 BINARY FLOAT和BINARY DOUBLE类型 207

9.1.6 SIMPLE FLOAT和SIMPLE DOUBLE类型 212

9.1.7数字子类型 212

9.2数字转换 213

9.2.1 TO NUMBER函数 213

9.2.2 TO CHAR函数 216

9.2.3 CAST函数 221

9.2.4隐式转换 222

9.3数字运算符 224

9.4数字函数 224

9.4.1四舍五入和截断函数 224

9.4.2三角函数 225

9.4.3数字函数的快速参考 225

第10章 日期和时间戳 230

10.1 Datetime数据类型 230

10.1.1声明日期时间变量 233

10.1.2选择日期时间数据类型 233

10.2获取当前日期和时间 234

10.3 INTERVAL数据类型 236

10.3.1声明INTERVAL变量 237

10.3.2什么时候使用INTERVAL 238

10.4日期时间转换 240

10.4.1从字符串到日期时间 240

10.4.2从日期时间到字符串 242

10.4.3使用时区 245

10.4.4精确匹配需要格式掩码 247

10.4.5让精确匹配更轻松 248

10.4.6解释滑动窗口中两位数字的年份 248

10.4.7把时区转换成字符串 249

10.4.8用填充模式把输出补齐 250

10.5日期和时间戳直接量 251

10.6时间间隔的转换 252

10.6.1从数字到时间间隔的转换 252

10.6.2把字符串转换成间隔 253

10.6.3时间间隔的格式化显示 254

10.7时间间隔直接量 254

10.8 CAST和EXTRACT 256

10.8.1 CAST函数 256

10.8.2 EXTRACT函数 258

10.9日期时间的算法 258

10.9.1时间间隔和日期时间的算法 259

10.9.2 DATE数据类型的日期算法 260

10.9.3计算两个日期时间之间的时间间隔 260

10.9.4 DATE和TIMESTAMP 混合计算 262

10.9.5时间间隔的加减运算 263

10.9.6时间间隔的乘除运算 264

10.9.7使用不受限制的时间间隔类型 264

10.10日期/时间函数的快速参考 266

第11章 记录类型 269

11.1 PL/SQL中的记录 269

11.1.1使用记录的好处 270

11.1.2声明记录 271

11.1.3程序员自定义的记录类型 273

11.1.4使用记录类型 275

11.1.5 记录的比较 281

11.1.6触发器伪记录 282

第12章 集合 284

12.1集合概述 285

12.1.1集合概念和术语 285

12.1.2集合类型 287

12.1.3集合示例 288

12.1.4使用集合的场合 291

12.1.5选择一个集合类型 296

12.2集合方法(内置) 297

12.2.1 COUNT方法 298

12.2.2 DELETE方法 299

12.2.3 EXISTS方法 300

12.2.4 EXTEND方法 300

12.2.5 FIRST和LAST方法 301

12.2.6 LIMIT方法 302

12.2.7 PRIOR和NEXT方法 303

12.2.8 TRIM方法 304

12.3使用集合 305

12.3.1声明集合类型 306

12.3.2集合变量的声明和初始化 310

12.3.3用数据填充集合 313

12.3.4访问集合内的数据 318

12.3.5使用字符串索引的集合 319

12.3.6复杂数据类型的集合 324

12.3.7多级集合 327

12.3.8在SQL中使用集合 335

12.4嵌套表的多重集合操作 342

12.4.1测试嵌套表是否相等及成员归属 343

12.4.2检查元素是否是嵌套表的成员 344

12.4.3执行高级别集合操作 345

12.4.4嵌套表中的去重 346

12.5 schema级别集合的维护 347

12.5.1必需的权限 347

12.5.2集合和数据字典 348

第13章 其他数据类型 349

13.1 BOOLEAN类型 349

13.2 RAW数据类型 350

13.3 UROWID和ROWID数据类型 351

13.3.1获取ROWID 352

13.3.2使用RO WID 352

13.4 LOB数据类型 353

13.5使用LOB 354

13.5.1理解LOB定位符 356

13.5.2 LOB的空和NULL 357

13.5.3向LOB中写入数据 359

13.5.4读取LOB数据 361

13.5.5 BFILE的不同之处 363

13.5.6 SecureFiles和BasicFiles 367

13.5.7临时LOB 369

13.5.8原生的LOB操作 372

13.5.9 LOB转换函数 376

13.6预定义的对象类型 376

13.6.1 XMLType类型 376

13.6.2 URI类型 379

13.6.3 Any类型 381

第4部分PL/SQL中的SQL 387

第14章DML和事务管理 387

14.1 PL/SQL中的DML 388

14.1.1 DML简介 388

14.1.2 DML操作符的游标属性 391

14.1.3从DML语句返回信息 392

14.1.4 DML和异常处理 393

14.1.5 DML和记录 394

14.2事务管理 397

14.2.1 COMMIT语句 397

14.2.2 ROLLBACK语句 398

14.2.3 SAVEPOINT语句 399

14.2.4 SET TRANSACTION语句 399

14.2.5 LOCK TABLE语句 400

14.3自治事务 400

14.3.1定义自治事务 401

14.3.2自治事务的规则和限制 402

14.3.3事务的可见性 403

14.3.4何时使用自治事务 403

14.3.5创建自治日志记录机制 404

第15章 数据提取 407

15.1游标基础 408

15.1.1一些数据提取术语 408

15.1.2典型的查询操作 410

15.1.3游标属性介绍 411

15.1.4在游标中引用PL/SQL变量 413

15.1.5显式与隐式游标之间的选择 414

15.2使用隐式游标 414

15.2.1隐式游标示例 415

15.2.2隐式游标的异常处理 416

15.2.3隐式SQL游标的属性 418

15.3使用显式游标 419

15.3.1声明显式游标 420

15.3.2打开显式游标 423

15.3.3从显式游标获取 424

15.3.4显式游标中的列别名 425

15.3.5关闭显式游标 426

15.3.6显式游标属性 427

15.3.7游标参数 429

15.4 SELECT …FOR UPDATE 432

15.4.1 COMMIT释放锁定 433

15.4.2 WHERE CURRENT OF子句 434

15.5游标变量和REF CURSOR 435

15.5.1为什么使用游标变量 436

15.5.2与静态游标的相似之处 437

15.5.3声明REF CURSOR类型 437

15.5.4声明游标变量 438

15.5.5打开游标变量 439

15.5.6 从游标变量中提取数据 440

15.5.7游标变量的使用规则 442

15.5.8将游标变量作为参数传递 445

15.5.9游标变量的约束限制 447

15.6游标表达式 447

15.6.1使用游标表达式 448

15.6.2游标表达式的约束限制 450

第16章 动态SQL和动态PL/SQL 451

16.1 NDS语句 452

16.1.1 EXECUTE IMMEDIATE语句 452

16.1.2 OPEN FOR语句 455

16.1.3 4种动态SQL方法 460

16.2绑定变量 462

16.2.1参数模式 463

16.2.2重复的占位符 465

16.2.3传递NULL值 465

16.3使用对象和集合 466

16.4动态PL/SQL 468

16.4.1建立动态 PL/SQL块 469

16.4.2用动态块替换重复代码 470

16.5 NDS建议 471

16.5.1对共享程序使用调用者权限 471

16.5.2预测并处理动态错误 472

16.5.3使用绑定而非拼接 474

16.5.4减少代码注入的危险 475

16.6何时使用DBMS_ SQL 478

16.6.1获得查询列信息 478

16.6.2实现第四种方法的动态SQL需求 479

16.6.3最小化动态游标解析 485

16.6.4 Oracle数据库11g新动态SQL特性 486

16.6.5 DBMS_ SQL增强安全 490

相关图书
作者其它书籍
返回顶部