logo
分类于: 编程语言 云计算&大数据 设计

简介

Oracle 12c PL/SQL程序设计终极指南

Oracle 12c PL/SQL程序设计终极指南 0.0分

资源最后更新于 2020-03-29 02:47:18

作者:孙风栋王澜郭晓惠

出版社:提供方

出版日期:2019-10

文件格式: pdf

标签: 设计 数据库 程序

简介· · · · · ·

在信息技术高速发展的今天,任何的大型信息系统都是以数据库技术为支撑的。Oracle数据库作为数据库领域的先驱者,凭借其雄厚的技术实力,以高稳定性、可伸缩性、高可靠性、高安全性、跨平台特性等得到业界的一致认可,成为数据库市场名副其实的领军者,遍布于工业、商业、金融、保险、航空等各个领域。在数据库市场,Oracle数据库产品的市场占有率高达50%,远远领先于其他数据库产品,可以不夸张地说,Oracle数据库产品已经遍布世界的每个角落。作为Oracle数据库的过程化的SQL语言,PL/SQL程序在Oracle项目开发过程中得到广泛应用,有Oracle数据库应用的地方,就有PL/SQL程序的应用。因此,系统深入地学习PL/SQL程序设计是Oracle数据库开发所必需的。作者:孙风栋,王澜,郭晓惠

想要: 点击会收藏到你的 我的收藏,可以在这里查看

已收: 表示已经收藏

Tips: 注册一个用户 可以通过用户中心得到电子书更新的通知哦

目录

  1. Oracle 12c PL/SQL程序设计终极指南
  2. 前言
  3. 为什么要写这本书
  4. 读者对象
  5. 如何阅读本书
  6. 勘误和支持
  7. 致谢
  8. 基础篇
  9. 第1章 PL/SQL概述
  10. 1.4.1 PL/SQL引擎
  11. 1.4.2 PL/SQL单元与编译参数
  12. 1.6.1 案例数据库表与序列
  13. 1.6.2 创建表与序列
  14. 1.6.3 向表中插入数据
  15. 第2章 PL/SQL开发工具的使用
  16. 2.1.1 SQL Plus简介
  17. 2.1.2 SQL Plus的启动与退出
  18. 2.1.3 SQL Plus常用命令
  19. 2.2.1 SQL Developer简介
  20. 2.2.2 创建数据库连接
  21. 2.2.3 浏览与管理数据库对象
  22. 2.2.4 执行SQL语句
  23. 2.2.5 开发PL/SQL程序
  24. 2.2.6 执行与调试PL/SQL程序
  25. 2.3.1 PL/SQL Developer简介
  26. 2.3.2 连接数据库
  27. 2.3.3 编写与运行PL/SQL程序
  28. 2.3.4 测试PL/SQL程序
  29. 第3章 PL/SQL基础
  30. 3.1.1 PL/SQL块结构
  31. 3.1.2 PL/SQL块分类
  32. 3.2.1 字符集
  33. 3.3.2 标识符
  34. 3.2.3 分隔符
  35. 3.2.4 字面值
  36. 3.2.5 注释
  37. 3.3.1 PL/SQL数据类型概述
  38. 3.3.2 字符类型
  39. 3.3.3 数字类型
  40. 3.3.4 日期/时间类型
  41. 3.3.5 布尔类型
  42. 3.3.6 复合类型
  43. 3.3.7 引用类型
  44. 3.3.8 LOB类型
  45. 3.3.9 %TYPE属性
  46. 3.3.10 %ROWTYPE属性
  47. 3.4.1 常量与变量的声明
  48. 3.4.2 变量作用域与可见性
  49. 3.5.1 运算符
  50. 3.5.2 表达式
  51. 第4章 PL/SQL控制语句
  52. 4.1.1 IF语句
  53. 4.1.2 CASE语句
  54. 4.2.1 简单循环语句
  55. 4.2.2 WHILE循环语句
  56. 4.2.3 FOR循环语句
  57. 4.2.4 CONTINUE语句
  58. 4.3.1 GOTO语句
  59. 4.3.2 NULL语句
  60. 第5章 数据查询
  61. 5.1.1 SQL语言介绍
  62. 5.1.2 SQL语言的分类
  63. 5.1.3 SQL语言的特点
  64. 5.3.1 无条件查询
  65. 5.3.2 有条件查询
  66. 5.5.1 常用的聚集函数
  67. 5.5.2 分组查询的语法
  68. 5.5.3 单列分组查询
  69. 5.5.4 多列分组查询
  70. 5.5.5 使用HAVING子句
  71. 5.5.6 使用ROLLUP和CUBE子句
  72. 5.5.7 合并分组查询
  73. 5.6.1 笛卡尔积连接
  74. 5.6.2 内连接
  75. 5.6.3 自然连接
  76. 5.6.4 使用USING子句的连接
  77. 5.6.5 外连接
  78. 5.7.1 子查询概述
  79. 5.7.2 单行单列子查询
  80. 5.7.3 多行单列子查询
  81. 5.7.4 单行多列子查询
  82. 5.7.5 多行多列子查询
  83. 5.7.6 相关子查询
  84. 5.7.7 在FROM子句中使用子查询
  85. 5.7.8 在DDL语句中使用子查询
  86. 5.7.9 使用WITH子句的子查询
  87. 5.8.1 层次结构的概念
  88. 5.8.2 层次查询的语法
  89. 5.8.3 层次查询的执行过程
  90. 5.8.4 层次查询相关伪列
  91. 5.9.1 UNION
  92. 5.9.2 UNION ALL
  93. 5.9.3 INTERSECT
  94. 5.9.4 MINUS
  95. 5.10.1 分析查询概述
  96. 5.10.2 分析查询的语法
  97. 5.10.3 分析函数的应用
  98. 5.11.1 Oracle 12c之前的TOP-N与分页查询
  99. 5.11.2 Oracle 12c中的TOP-N与分页查询
  100. 第6章 数据操纵与事务控制
  101. 6.1.1 数据插入介绍
  102. 6.1.2 INSERT语句的语法
  103. 6.1.3 插入单行记录
  104. 6.1.4 使用子查询插入数据
  105. 6.1.5 使用Direct-Path方法插入数据
  106. 6.1.6 无条件多表插入
  107. 6.1.7 有条件多表插入
  108. 6.2.1 UPDATE语句的语法
  109. 6.2.2 使用子查询修改数据
  110. 6.4.1 DELETE语句的语法
  111. 6.4.2 使用子查询删除数据
  112. 6.4.3 使用TRUNCATE清除数据
  113. 6.5.1 事务概述
  114. 6.5.2 Oracle事务的隔离级别
  115. 6.5.3 使用SET TRANSACTION语句设置事务
  116. 6.5.4 事务提交与回滚
  117. 6.6.1 Oracle数据库中锁的分类
  118. 6.6.2 Oracle数据库中的DML锁
  119. 6.6.3 使用LOCK TABLE语句
  120. 第7章 内置SQL函数
  121. 7.2.1 数字函数
  122. 7.2.2 字符函数
  123. 7.2.3 日期函数
  124. 7.2.4 转换函数
  125. 7.2.5 空值函数
  126. 7.2.6 其他单行函数
  127. 第8章 PL/SQL中的静态SQL语句
  128. 8.1.1 静态SQL语句类型
  129. 8.1.2 PL/SQL中的SELECT语句
  130. 8.1.3 PL/SQL中的DML语句
  131. 8.1.4 PL/SQL中的字符匹配
  132. 8.2.1 游标概述
  133. 8.2.2 声明与定义显式游标
  134. 8.2.3 打开与关闭显式游标
  135. 8.2.4 检索显式游标
  136. 8.2.5 显式游标的属性
  137. 8.2.6 显式游标定义中的变量
  138. 8.2.7 参数化显式游标
  139. 8.2.8 FOR UPDATE游标
  140. 8.3.1 隐式游标介绍
  141. 8.3.2 隐式游标的属性
  142. 8.4.1 游标变量简介
  143. 8.4.2 声明游标变量
  144. 8.4.3 打开与关闭游标变量
  145. 8.4.4 检索游标变量
  146. 8.6.1 自治事务的概念
  147. 8.6.2 声明自治程序
  148. 8.6.3 自治事务的控制
  149. 8.6.4 自治触发器
  150. 第9章 记录
  151. 9.3.1 声明记录类型变量
  152. 9.3.2 利用%ROWTYPE声明记录类型变量
  153. 9.3.3 记录类型变量赋值
  154. 9.4.1 记录类型变量在SELECT语句中的应用
  155. 9.4.2 记录类型变量在INSERT语句中的应用
  156. 9.4.3 记录类型变量在UPDATE语句中的应用
  157. 9.4.4 DML语句中记录类型变量使用的限制
  158. 第10章 错误处理
  159. 10.2.1 Oracle错误处理机制
  160. 10.2.2 使用异常处理的优点
  161. 10.3.1 预定义异常
  162. 10.3.2 内部定义异常
  163. 10.3.3 用户定义异常
  164. 10.4.1 用户定义异常的抛出
  165. 10.4.2 预定义异常的抛出
  166. 10.4.3 内部定义异常的抛出
  167. 10.4.4 重新抛出当前异常
  168. 10.4.5 RAISE_APPLICATION_ERROR方法的使用
  169. 10.5.1 异常处理器
  170. 10.5.2 OTHERS异常处理器
  171. 10.6.1 执行部分异常的传播
  172. 10.6.2 声明部分与异常处理部分异常的传播
  173. 10.7.1 异常处理的基本原则
  174. 10.7.2 异常的范围
  175. 10.7.3 避免未处理的异常
  176. 10.7.4 异常与事务
  177. 10.7.5 错误位置标识
  178. 开发篇
  179. 第11章 PL/SQL子程序
  180. 11.1.1 PL/SQL子程序的概念与分类
  181. 11.1.2 PL/SQL子程序的优点
  182. 11.2.1 子程序结构
  183. 11.2.2 创建存储过程
  184. 11.2.3 创建函数
  185. 11.3.1 调用存储过程
  186. 11.3.2 在PL/SQL程序中调用函数
  187. 11.3.3 在SQL语句中调用函数
  188. 11.4.1 形式参数与实际参数
  189. 11.4.2 参数的传递方式
  190. 11.4.3 参数模式
  191. 11.4.4 NOCOPY关键字
  192. 11.4.5 参数的约束
  193. 11.4.6 IN模式参数默认值
  194. 11.4.7 无参子程序
  195. 11.4.8 实参与形参的对应关系
  196. 11.5.1 嵌套子程序的概念
  197. 11.5.2 嵌套子程序的创建
  198. 11.5.3 嵌套子程序的向前声明
  199. 11.5.4 嵌套子程序的重载
  200. 第12章 PL/SQL包
  201. 12.1.1 包的概念
  202. 12.1.2 包的分类
  203. 12.1.3 使用包的优点
  204. 12.2.1 包规范
  205. 12.2.2 包体
  206. 12.7.1 变量持续性
  207. 12.7.2 游标持续性
  208. 12.7.3 SERIALLY_REUSABLE包
  209. 第13章 子程序依赖性与权限管理
  210. 13.1.1 对象依赖性的概念
  211. 13.1.2 对象依赖关系查询
  212. 13.2.1 子程序的依赖关系
  213. 13.2.2 包的依赖性关系
  214. 13.3.1 远程依赖关系的建立
  215. 13.3.2 远程依赖失效的识别
  216. 13.4.1 子程序调用需要的权限
  217. 13.4.2 子程序定义者需要的权限
  218. 第14章 触发器
  219. 14.1.1 触发器的概念
  220. 14.1.2 触发器的作用
  221. 14.1.3 触发器的种类
  222. 14.1.4 触发器的结构
  223. 14.2.1 简单DML触发器概述
  224. 14.2.2 语句级简单DML触发器
  225. 14.2.3 行级简单DML触发器
  226. 14.2.4 简单DML触发器的执行顺序
  227. 14.3.1 INSTEAD OF DML触发器概述
  228. 14.3.2 创建INSTEAD OF DML触发器
  229. 14.3.3 基于视图嵌套表列的INSTEAD OF DML触发器
  230. 14.4.1 复合DML触发器概述
  231. 14.4.2 创建复合DML触发器
  232. 14.4.3 复合DML触发器应用
  233. 14.6.1 系统触发器的响应事件
  234. 14.6.2 创建系统触发器
  235. 14.6.3 事件属性函数
  236. 14.7.1 变异表触发器的限制
  237. 14.7.2 变异表触发器应用
  238. 14.9.1 触发器定义的限制
  239. 14.9.2 触发器的禁用与激活
  240. 14.9.3 触发器的修改、重编译与删除
  241. 14.9.4 触发器的信息查询
  242. 第15章 集合
  243. 15.2.1 联合数组概述
  244. 15.2.2 定义联合数组
  245. 15.2.3 操作联合数组
  246. 15.3.1 嵌套表概述
  247. 15.3.2 定义嵌套表
  248. 15.3.3 初始化嵌套表
  249. 15.3.4 操作嵌套表
  250. 15.4.1 可变数组概述
  251. 15.4.2 可变数组的定义与初始化
  252. 15.4.3 操作可变数组
  253. 15.6.1 集合类型变量与NULL的比较
  254. 15.6.2 嵌套表变量比较
  255. 15.6.3 嵌套表变量多集合条件比较
  256. 15.7.1 嵌套表在数据库中的应用
  257. 15.7.2 可变数组在数据库中的应用
  258. 第16章 动态SQL语句
  259. 16.1.1 动态SQL语句的概念
  260. 16.1.2 动态SQL语句与静态SQL语句的比较
  261. 16.2.1 EXECUTE IMMEDIATE语句
  262. 16.2.2 动态DDL操作
  263. 16.2.3 动态DCL操作
  264. 16.2.4 动态DML操作
  265. 16.2.5 动态单行查询操作
  266. 16.2.6 动态多行查询操作
  267. 16.2.7 在动态SQL语句中调用子程序
  268. 16.2.8 动态SQL语句中的重名占位符
  269. 16.3.1 DBMS_SQL包概述
  270. 16.3.2 DBMS_SQL包中方法介绍
  271. 16.3.3 DBMS_SQL操作流程
  272. 16.3.4 使用DBMS_SQL包执行动态DDL语句
  273. 16.3.5 使用DBMS_SQL包进行动态DML语句
  274. 16.3.6 使用DBMS_SQL包执行动态查询语句
  275. 16.3.7 使用DBMS_SQL包执行匿名块
  276. 16.3.8 其他常用DBMS_SQL方法应用
  277. 第17章 批绑定
  278. 17.2.1 FORALL语句的语法
  279. 17.2.2 FORALL语句与FOR LOOP语句比较
  280. 17.2.3 批量DML操作
  281. 17.2.4 使用稀疏集合的FORALL语句
  282. 17.2.5 FORALL语句的异常处理
  283. 17.2.6 获取FORALL语句影响的记录数量
  284. 17.3.1 SELECT BULK COLLECT语句
  285. 17.3.2 FETCH BULK COLLECT语句
  286. 17.3.3 RETURNING BULK COLLECT短语
  287. 17.4.1 动态批量DML操作
  288. 17.4.2 动态批查询操作
  289. 高级篇
  290. 第18章 对象
  291. 18.1.1 Oracle对象简介
  292. 18.1.2 使用Oracle对象的优势
  293. 18.1.3 Oracle数据库的对象特性
  294. 18.2.1 对象类型规范
  295. 18.2.2 对象类型体
  296. 18.3.1 MEMBER方法
  297. 18.3.2 STATIC方法
  298. 18.3.3 MAP与ORDER方法
  299. 18.3.4 构造方法
  300. 18.4.1 对象类型继承概述
  301. 18.4.2 FINAL与NOT FINAL对象类型与方法
  302. 18.4.3 创建子对象类型
  303. 18.4.4 方法重定义与重载
  304. 18.4.5 NOT INSTANTIABLE对象类型与方法
  305. 18.5.1 创建对象表
  306. 18.5.2 操作对象表
  307. 18.5.3 操作列对象
  308. 18.5.4 对象引用
  309. 18.6.1 对象视图概述
  310. 18.6.2 创建对象视图
  311. 18.6.3 在对象视图中嵌套对象
  312. 18.6.4 操作对象视图
  313. 18.7.1 对象的声明与初始化
  314. 18.7.2 操作PL/SQL中的对象
  315. 18.9.1 修改对象类型
  316. 18.9.2 删除对象类型
  317. 第19章 大对象
  318. 19.1.1 为什么使用大对象
  319. 19.1.2 LOB与LONG的比较
  320. 19.1.3 LOB分类
  321. 19.1.4 LOB存储结构与定位器
  322. 19.1.5 LOB操作技术与接口
  323. 19.2.1 创建包含LOB列的数据库表
  324. 19.2.2 利用SQL操作内部LOB
  325. 19.2.3 利用SQL操作外部LOB
  326. 19.3.1 DBMS_LOB包简介
  327. 19.3.2 DBMS_LOB包中子程序介绍
  328. 19.4.1 利用DBMS_LOB包操作CLOB对象
  329. 19.4.2 利用DBMS_LOB包操作BLOB对象
  330. 19.4.3 利用DBMS_LOB包操作BFILE对象
  331. 第20章 Oracle任务调度
  332. 20.1.1 Oracle调度器的概念
  333. 20.1.2 调度对象
  334. 20.2.1 创建作业对象
  335. 20.2.2 修改作业对象
  336. 20.2.3 运行作业对象
  337. 20.2.4 停止作业对象
  338. 20.2.5 删除作业对象
  339. 20.2.6 禁用作业对象
  340. 20.2.7 激活作业对象
  341. 第21章 PL/SQL性能优化
  342. 21.3.1 SQL语句优化概述
  343. 21.3.2 SQL语句执行过程
  344. 21.3.3 将常用程序驻留内存
  345. 21.3.4 有效使用索引
  346. 21.3.5 采用适当的多表连接技术
  347. 21.3.6 SQL语句使用技巧
  348. 21.4.1 优化查询中的函数调用
  349. 21.4.2 优化子程序调用
  350. 21.4.3 优化循环
  351. 21.4.4 优化用于计算的PL/SQL代码
  352. 21.4.5 使用SQL字符函数
  353. 21.4.6 批SQL与批绑定
  354. 21.5.1 表函数概述
  355. 21.5.2 创建管道表函数
  356. 21.5.3 管道表函数作为转换函数
  357. 21.5.4 检索管道表函数的返回结果集
  358. 21.5.5 向管道表函数传递游标表达式
  359. 21.6.1 使用Profiler API工具
  360. 21.6.2 使用Trace API工具
  361. 21.6.3 使用PL/SQL hierarchical profiler工具
  362. 第22章 常用的Oracle内置包
  363. 22.5.1 DBMS_METADATA包简介
  364. 22.5.2 DBMS_METADATA包中子程序
  365. 22.8.1 Oracle管道通信概述
  366. 22.8.2 DBMS_PIPE包中子程序