Oracle PL/SQL实例精解(原书第5版)正版无划痕
¥
20
2.5折
¥
79
九品
仅1件
作者 [美]本杰明·罗森维格 著;卢涛 译
出版社 机械工业出版社
出版时间 2016-03
版次 1
装帧 平装
货号 90
上书时间 2024-09-26
商品详情
品相描述:九品
图书标准信息
作者
[美]本杰明·罗森维格 著;卢涛 译
出版社
机械工业出版社
出版时间
2016-03
版次
1
ISBN
9787111528876
定价
79.00元
装帧
平装
开本
16开
纸张
胶版纸
页数
372页
字数
550千字
丛书
数据库技术丛书
【内容简介】
本书通过实际的实验、示例和项目来讲解你所需的全部PL/SQL技能,它涵盖从基础语法、程序控制到新的优化和安全增强等方面的知识。读者循序渐进地学习每个关键任务,自己就能掌握当今有价值的Oracle12c的PL/SQL编程技术。本书的方法完全反映了作者在哥伦比亚大学给专业人员讲授PL/SQL的广受好评的经验。数据库开发的新手和DBA可以通过学习本书快速获得成效。有经验的PL/SQL程序员会发现本书是很好的Oracle12c的解决方案参考。
【作者简介】
About the AuthorBenjamin Rosenzweig,是Misys财务软件公司的高级项目经理,他自2002年以来一直在那里工作。在此之前,他曾在Oracle公司定制开发部担任了三年以上的首席顾问。他所做的计算机工作包括在尼泊尔加德满都建立电子藏英词典,为高盛公司演示中心做支持,以及管理TIAA-CREF的交易系统。自1998年以来,Benjamin一直在纽约市哥伦比亚大学计算机技术与应用项目担任教师,在2002年,他被CTA项目的主席和董事授予“优秀教学奖”。他拥有里德学院的学士学位和哥伦比亚大学颁发的数据库开发和设计证书。他从前与Prentice Hall合著的书籍包括《Oracle Forms Developer:The Complete Video Course (2000)》和《Oracle Web Application Programming for PL/SQL Developers(2003)》。
Elena Rakhimov,拥有超过20年的数据库架构和开发经验,曾服务于各种企业和商业环境,从非营利组织到华尔街到她目前在知名软件公司领导数据库团队的职位。尽管Elena决定从事“实际操作”,但她在学术领域也很有建树,她在哥伦比亚大学受到高度评价的计算机技术与应用项目中执教关系数据库编程。她曾在哥伦比亚大学学习数据库分析和设计,并在阿塞拜疆的巴库国立大学学习应用数学。她目前居住在加拿大温哥华。
【目录】
译者序 前言 作者简介 致谢 第1章 PL/SQL概念 1 1.1 实验1:PL/SQL架构 1使用 8 1.2.2 初步掌握SQL * Plus的使用 10 1.2.3 执行PL/SQL脚本 11 1.3 实验3:PL/SQL基础知识 14 1.3.1 DBMS_OUTPUT.PUT_LINE语句 14 1.3.2 替代变量功能 17 1.4 总结 21 第2章 PL/SQL语言基础 22 2.1 实验:PL/SQL编程基础 22 2.1.1 PL/SQL语言组件 23 2.1.2 PL/SQL变量 23 2.1.3 PL/SQL保留字 26 2.1.4 PL/SQL中的标识符 26 2.1.5 挂靠的数据类型 27 2.1.6 声明和初始化变量 29 2.1.7 块作用域、嵌套块和标签 32 2.2 总结 34 第3章 在PL/SQL中的SQL 35 3.1 实验1:在PL/SQL中的DML 语句 35 3.1.1 使用SELECT INTO初始化 变量 36 3.1.2 使用变量初始化的SELECT INTO语法 37 3.1.3 在PL/SQL块中使用DML 38 3.1.4 在PL/SQL块中使用序列 39 3.2 实验2:在PL/SQL中的事务 控制 40 3.2.1 使用COMMIT、ROLLBACK和 SAVEPOINT 40 3.2.2 将DML和事务控制相结合 43 3.3 总结 45 第4章 条件控制:IF语句 46 4.1 实验1:IF语句 46 4.1.1 IF-THEN语句 47 4.1.2 IF-THEN-ELSE语句 48 4.2 实验2:ELSIF语句 50 4.3 实验3:嵌套的IF语句 54 4.4 总结 56 第5章 条件控制:CASE语句 57 5.1 实验1:CASE语句 57 5.1.1 CASE语句 57 5.1.2 搜索CASE语句 59 5.2 实验2:CASE表达式 64 5.3 实验3:NULLIF和COALESCE 函数 67 5.3.1 NULLIF函数 67 5.3.2 COALESCE函数 69 5.4 总结 71 第6章 迭代控制:第一部分 72 6.1 实验1:简单循环 72 6.1.1 EXIT语句 73 6.1.2 EXIT WHEN语句 76 6.2 实验2:WHILE循环 77 6.2.1 使用WHILE循环 77 6.2.2 提前终止WHILE循环 80 6.3 实验3:数字FOR循环 81 6.3.1 在循环中使用IN选项 82 6.3.2 在循环中使用REVERSE选项 84 6.3.3 提前终止数字FOR循环 84 6.4 总结 85 第7章 迭代控制:第二部分 86 7.1 实验1:CONTINUE语句 86 7.1.1 使用CONTINUE语句 86 7.1.2 CONTINUE WHEN语句 89 7.2 实验2:嵌套循环 92 7.2.1 使用嵌套循环 92 7.2.2 使用循环标签 93 7.3 总结 95 第8章 错误处理和内置异常 96 8.1 实验1:处理错误 96 8.2 实验2:内置异常 98 8.3 总结 103 第9章 异常 104 9.1 实验1:异常作用域 104 9.2 实验2:用户定义的异常 107 9.3 实验3:异常传播 111 9.4 总结 116 第10章 异常:高级概念 117 10.1 实验1:RAISE_APPLICATION ERROR 117 10.2 实验2:EXCEPTION_INIT 编译指示 120 10.3 实验3:SQLCODE和 SQLERRM 122 10.4 总结 124 第11章 游标简介 125 11.1 实验1:游标类型 125 11.1.1 使用隐式游标 126 11.1.2 使用显式游标 127 11.2 实验2:游标循环 130 11.2.1 处理显式游标 130 11.2.2 使用用户定义的记录 133 11.2.3 使用游标属性 134 11.3 实验3:游标FOR循环 138 11.4 实验4:嵌套游标 139 11.5 总结 143 第12章 高级游标 144 12.1 实验1:参数化游标 144 12.2 实验2:复杂的嵌套游标 145 12.3 实验3:FOR UPDATE和WHERE CURRENT游标 147 12.3.1 FOR UPDATE游标 147 12.3.2 游标中的FOR UPDATE 触发器 151 13.1.1 数据库触发器 151 13.1.2 BEFORE触发器 154 13.1.3 AFTER触发器 159 13.1.4 自治事务 160 13.2 实验2:触发器类型 162 13.2.1 行触发器和语句触发器 162 13.2.2 INSTEAD OF触发器 163 13.3 总结 167 第14章 变异表和复合触发器 168 14.1 实验1:变异表 168 14.1.1 什么是变异表 168 14.1.2 解决变异表问题 170 14.2 实验2:复合触发器 172 14.2.1 什么是复合触发器 172 14.2.2 解决变异表问题的复合 触发器 174 14.3 总结 177 第15章 集合 178 15.1 实验1:PL/SQL表 178 15.1.1 关联数组 179 15.1.2 嵌套表 181 15.1.3 集合方法 184 15.2 实验2:变长数组 187 15.3 实验3:多级集合 190 15.4 总结 192 第16章 记录 193 16.1 实验1:记录类型 193 16.1.1 基于表和基于游标的记录 194 16.1.2 用户定义的记录 196 16.1.3 记录兼容性 197 16.2 实验2:嵌套记录 199 16.3 实验3:记录集合 202 16.4 总结 205 第17章 本地动态SQL 206 17.1 实验1:EXECUTE IMMEDIATE语句 206 17.1.1 使用EXECUTE IMMEDIATE 语句 207 17.1.2 如何避免使用EXECUTE IMMEDIATE的常见ORA错误 209 17.2 实验2:OPEN-FOR、FETCH和 CLOSE语句 216 17.2.1 打开游标 216 17.2.2 从游标中读取 217 17.2.3 关闭游标 217 17.3 总结 223 第18章 批量SQL 224 18.1 实验1:FORALL语句 224 18.1.1 使用FORALL语句 225 18.1.2 SAVE EXCEPTIONS选项 228 18.1.3 INDICES OF选项 230 18.1.4 VALUES OF选项 230 18.2 实验2:BULK COLLECT子句 232 18.3 实验3:在SQL语句中绑定集合 239 18.3.1 将集合与EXECUTE IMMEDIATE语句绑定 240 18.3.2 将集合与OPEN-FOR、FETCH和CLOSE语句绑定 245 18.4 总结 248 第19章 过程 249 19.1 模块化代码的好处 249 19.1.1 块结构 250 19.1.2 匿名块 250 19.2 实验1:创建过程 250 19.2.1 实践创建过程的语法 251 19.2.2 查询数据字典来获取过程的 信息 252 19.3 实验2:传递的过程参数IN和 OUT 253 19.4 总结 255 第20章 函数 256 20.1 实验1:创建函数 256 20.1.1 创建存储函数 257 20.1.2 使用函数 259 20.2 实验2:在SQL语句中使用函数 260 20.2.1 在SQL语句中调用函数 261 20.2.2 编写复杂函数 261 20.3 实验3:在SQL中优化函数执行 262 20.3.1 使用WITH子句定义函数 262 20.3.2 使用UDF编译指示创建函数 263 20.4 总结 263 第21章 包 264 21.1 实验1:创建包 264 21.1.1 创建包规范 265 21.1.2 创建包体 267 21.1.3 调用已存储的包 269 21.1.4 创建私有对象 270 21.2 实验2:游标变量 274 21.3 实验3:扩展包 281 21.4 实验4:包的实例化和初始化 292 21.5 实验5:SERIALLY_REUSABLE包 294 21.6 总结 296 第22章 存储代码 297 22.1 实验:收集存储代码的相关信息 297 22.1.1 从数据字典获取存储代码的信息 297 22.1.2 重载模块 300 22.2 总结 305 第23章 Oracle对象类型 306 23.1 实验1:对象类型 306 23.1.1 创建对象类型 308 23.1.2 使用对象类型与集合 310 23.2 实验2:对象类型的方法 314 23.2.1 构造方法 314 23.2.2 成员方法 316 23.2.3 静态方法 317 23.2.4 比较对象 318 23.3 总结 322 第24章 Oracle提供的包 323 24.1 实验1:利用Oracle提供的包扩展功能 323 24.1.1 在PL/SQL中利用UTL_FILE访问文件 324 24.1.2 利用DBMS_JOB调度作业 327 24.1.3 利用DBMS_XPLAN生成解释计划 329 24.1.4 利用DBMS_SQL产生隐式语句结果 333 24.2 实验2:利用Oracle提供的包报告错误 334 24.2.1 利用DBMS_UTILITY包报告错误 334 24.2.2 利用UTL_CALL_STACK
点击展开
点击收起
— 没有更多了 —
以下为对购买帮助不大的评价