Oracle8 PL/SQL程序设计

Oracle8 PL/SQL程序设计 pdf epub mobi txt 电子书 下载 2026

出版者:机械工业出版社
作者:尤曼(美)
出品人:
页数:645
译者:
出版时间:1998-06
价格:99.00元
装帧:平装
isbn号码:9787111063483
丛书系列:
图书标签:
  • PL/SQL程序设计
  • 技术
  • 存储过程
  • oracle
  • Oracle8
  • 1
  • Oracle
  • PL/SQL
  • 数据库
  • 程序设计
  • 开发
  • SQL
  • Oracle8
  • 编程
  • 技术
  • 教程
想要找书就要到 图书目录大全
立刻按 ctrl+D收藏本页
你会得到大惊喜!!

具体描述

作者简介

目录信息

目录
贺辞

前言
第1章 PL/SQL 简介
1.1为什么使用PL/SSQL
1.1.1客户服务器模式
1.1.2 标准
1.2PL/SQL的功能特性
1.2.1块结构
1.2.2 变量和类型
1.2.3循环结构
1.3本书使用的约定
1.3.1PL/SQL和Oracle版本
1.3.2 Oracle文档
1.3.3在线代码
1.4示例样表
1.5小结
第2章 PL/SQL基础
2.1PL/SQL块
2.2 词法单位
2.2.1标识符
2.2.2 分界符
2.2.3文字
2.2.4注释
2.3变量声明
2.3.1声明语法
2.3.2变量初始化
2.4 PL/SQL类型
2.4.1标量类型(ScalarType)
2.4.2 复合类型
2.4.3引用类型
2.4.4 LOB类型
2.4.5使用%TYPE
2.4.6 用户定义子类型
2.4.7 在数据类型之间进行转换
2.4.8变量作用域和可见性
2.5表达式和运算符
2.5.1赋值
2.5.2 表达式
2.6PL/SQL控制结构
2.6.1IF-IHEN-ELSE
2.6.2循环
2.6.3GOTO和标号
2.6.4pragma
2.7PL/SQL风格指南
2.7.1注释风格
2.7.2变量名风格
2.7.3大写风格
2.7.4缩进风格
2.7.5常见风格
2.8 小结
第3章 记录和表
3.1PL/SQL记录
3.1.1记录赋值
3.1.2 使用%ROWTYPE
3.2表
3.2.1表和数组
3.2.2 表属性
3.2.3使用PL/SQL表的指南
3.3小结
第4章 在PL/SQ L中使用SQL
4.1 SQL语句
4.2在PL/SQL中使用DML
4.2.1SELECT
4.2.2INSERT
4.2.3UPDATE
4.2.4DELETE
4.2.5WHERE子句
4.2.6表引用
4.2.7 数据库链接
4.2.8替代名(Synonym)
4.3伪列
4.3.1CURRVAL 和NEXTVAL
4.3.2 LEVEL
4.3.3ROWID
4.3.4ROWNUM
4.4 CRANT、REVOKE和权限
4.4.1 对象和系统权限
4.4.2GRANT和REVOKE
4.4.3 角色
4.5事务控制
4.5.1 COMMIT和ROLLBACK
4.5.2 保存点
4.5.3 事务和块
4.6小结
第5章 内置SQL 函数
5.1前言
5.2字符函数――返回字符值
5.2.1CHR
5.2.2 CONCAT
5.2.3INITCAP
5.2.4LOWER
5.2.5 LPAD
5.2.6LTRIM
5.2.7NLS_INITCA P
5.2.8NLS LOW ER
5.2.9 NLS_UPPER
5.2.10 REPLACE
5.2.11RPAD
5.2.12 RTRIM
5.2.13SOU NDEX
5.2.14 SUBSTR
5.2.15 SUBS TRB
5.2.16TRANSLATE
5.2.17UPPER
5.3字符函数―――返回数字值
5.3.1ASCII
5.3.2INSIR
5.3.3INSTRB
5.3.4 LENGTH
5.3.5LENGTHB
5.3.6NLSSORT
5.4 数字函数
5.4.1ABS
5.4.2 ACOS
5.4.3ASIN
5.4.4 ATAN
5.4.5 ATAN2
5.4.6CEIL
5.4.7COS
5.4.8 COSH
5.4.9 EXP
5.4.10FLOOR
5.4.11LN
5.4.12LOG
5.4.13 MOD
5.4.14 POWER
5.4.15 ROUND
5.4.16SIGN
5.4.17 SIN
5.4.18SINH
5.4.19SQRT
5.4.20TAN
5.4.21TANH
5.4.22 TRUNC
5.5 日期函数
5.5.1ADD MONTHS
5.5.2LAST DAY
5.5 .3MONTHS BETW EEN
5.5.4NEW_TIME
5.5.5NEXT_DAY
5.5.6 ROUND
5.5.7SYSDATE
5.5.8TRUNC
5.5.9日期算术
5.6 转换函数
5.6.1CHARTOR OWID
5.6.2CONVERT
5.6.3HEXTORAW
5.6.4 RAW TOHEX
5.6.5ROWIDTOCHAR
5.6.6TO_CHAR(dates)
5.6.7TO _CHAR (labels )
5.6.8TO CHAR (numbers )
5.6.9 TO_DATE
5.6.10 TO _LABEL
5.6.11TO MUL TI BYTE
5.6.12 TO_NUMBER
5.6.13 TO _SINGLE_BYTE
5.7 分组函数
5.7.1AVG
5.7.2 COUNT
5.7.3 GLB
5.7.4LUB
5.7.5MAX
5.7.6MIN
5.7.7S1TDDEV
5.7.8SUM
5.7.9VARIANCE
5.8其他函数
5.8.1BFILENAME
5.8.2DECODE
5.8.3DUMP
5.8.4EMPTY_CLOB/ EMPTY BLOB
5.8.5GREATEST
5.7.6 GREATEST_LB
5.8.7 LEAST
5.8.8LEAST _UB
5.8.9NVL
5.8.10 UID
5.8.11USER
5.8.12 USERENV
5.8.13 VSIZE
5.9使用PL/SQL:将数字作为文本单字
进行打印
5.10小结
第6章 游标
6.1什么是游标?
6.1.1处理显式游标
6.1.2处理隐式游标
6.2游标提取循环
6.2.1简单循环
6.2.2WHILE循环
6.2.3游标式FOR循环
6.2.4NO DATA FOUND和
%NOTFOUND
6.2.5SELECTFORUPDATE游标
6.3游标变量
6.3.1声明游标变量
6.3.2为游标变量分配存储空间
6.3.3打开查询的游标变量
6.3.4关闭游标变量
6.3.5游标变量示例1
6.3.6游标变量示例2
6.3.7使用游标变量的限制
6.4小结
第7章 子程序:过程和函数
7.1创建过程和函数
7.1.1创建过程
7.1.2创建函数
7.1.3在子程序中进行异常处理
7.1.4删除过程和函数
7.2子程序位置
7.2.1内置子程序(stored Subprogram)
7.2.2本地子程序
7.3子程序依赖性
7.4权限和内置子程序
7.4.1EXECUTE权限
7.4.2内置子程序和角色
7.5小结
第8章 包
8.1包
8.1.1包规范(Package Speci fication)
8.1.2包主体(Package Body )
8.1.3包和作用域
8.1.4重载包装子程序
8.1.5包初始化
8.1.6包和相关性
8.2 在SQL语句中使用内置函数
8.2.1纯度级别
8.2.2RESTRICT REFERENCES
8.2.3缺省参数
8.3使用PL/SQL:PL/ SQL数据模式输
出程序
8.4 小结
第9章 触发器
9.1创建触发器
9.1.1触发器组件
9.1.2触发器和数据字典
9.1.3触发器点火次序
9.1.4在行级触发器中使用:old和:
9.1.5使用触发器谓词:INSERTING、
UPDATING 和DELET ING
9.2变化表
9.2.1变化表示例
9.2.2消除变化表错误
9.3使用PL/SQL:实现级联更新
9.3.1实用程序的内容
9.3.2工作原理
9.4小结
第10章 错误处理
10.1什么是异常情态
10.1.1声明异常情态
10.1.2触发异常情态
10.1.3处理异常情态
10.1.4EXCEPTION_INITPragma
10.1.5使用RAI SEAPPLICAT ION
ERROR
10.2异常情态传播
10.2.1在执行部分引发的异常情态
10.2.2在声明部分引发的异常情态
10.2.3在异常处理部分引发的
异常情态S
10.3异常处理指南
10.3.1异常情态的作用域
10.3.2避免未处理的异常情态
10.3.3屏蔽错误发生的位置
10.4使用PL/SQL:常用错误处理模块
10.5小结
第11章 对象
11.1背景介绍
11.1.1面向对象程序设计基础
11.1.2对象关系型数据库
11.2 对象类型
11.2.1定义对象类型
11.2.2声明和初始化对象
11.2.3方法
11.2.4更改和删除类型
11.2.5对象依赖性
11.3数据库中的对象
11.3.1对象位置
11.3.2在DML语句中使对象
11.3.3 MAP和ORDER方法
11.4 小结
第12章 集合(Collections)
12.1嵌套表
12.1.1声明嵌套表
12.1.2数据库中的嵌套表
12.1.3嵌套表和索引表
12.2Varrays
12.2.1声明Varray
12.2.2数据库中的Varray
12.2.3 Varray 和嵌套表
12.3集合方法
12.3.1EXISTS
12.3.2COUNT
12.3.3LIMIT
12.3.4FIRST和LAST
12.3.5 NEXT和PRIOR
12.3.6EXTEND
12.3.7TRIM
12.3.8DELETE
12.4小结
第13章 PL/SQL执行环境
13.1不同的PL/SQL引擎
13.2服务器端PL/SQL
13.2.1SQL Plus
13.2.2Oracle预编译器
13.2.3OCI
13.2.4SQL-Stat ion
13.3客户端PL/SQL
13.3.1为什么提供客户端引擎
13.3.2OracleForms
13.3 .3ProcedureBuilder
13.4 PL/ SQL Wra pper
13.4.1 运行Wra pper
13.4.2 输入和输出文件
13.4.3检查语法和语义
13.4.4 Wrapper使用指南
13.5小结
第14章 测试和调试
14.1问题诊断
14.1.1调试指南
14.1.2Debug 包
14.2插入测试表
14.3DBMS OUTP UT
14.3.1TheDBMS_OUTPUT
14.3.2 问题2
14.4PL/SQL调试器
14.5Proced ureBuilder
14.6SQL-Station
14.7 IProcedureBuilder 和SQL-Station之间
的比较
14.8程序设计方法
14.8.1模块化程序设计
14.8.2 自顶向下设计
14.8.3数据抽象
14.9小结
第15章 动态PL/SQL
15.1前言
15.1.1静态与动态SQL
15.1.2DBMS_SQL概述
15.2执行非查询DML和DDL语句
15.2.1打开游标
15.2.2分析语句
15.2.3联编输入变量
15.2.4执行语句
15.2.5关闭游标
15.2.6示例
15.2.7执行DDL语句
15.2.8执行查询
15.2.9分析语句
15.2.10 定义输出变量
15.2.11 提取行
15.2.12 将结果返回给PL/SQL变量
15.2.13示例
15.3 执行 PL/ SQL
15.3.1分析语句
15.3.2检索输出变量的取值
15.3.3示例
15.3.4 使用out value_size
15.4使用PL/SQL:执行任意内置过程
15.5对PL/ SQL 8.0 的DBMS_SQL 增强
15.5.1分析大型SQL串
15.5.2DBMS_SQL数组处理
15.5.3描述选择列表
15.6其他过程
15.6.1提取LONG型数据
15.6.2 其他的错误函数
15.7使用PL/SQL:将LONG变量写入
FILE变量中
15.8权限和DBMS_SQL
15.8.1DBMS_SQL所需的权限
15.8.2 角色和DBMS_SQL
15.9在DBMS_SQL和其他动态方法之间
进行比较
15.9.1描述选择列表
15.9.2数组处理
15.9.3关于LONG型数据的单步操作
15.9.4 接口差异
15.10提示和技巧
15.10.1重用游标
15.10.2权限
15.10.3DDL操作和挂起
15.11小结
第16章 会话间通信
16.1 DBMS PIPE
16.1.1发送消息
16.1.2接收消息
16.1.3创建和管理管道
16.1.4权限和安全性
16.1.5建立通信协议
16.1.6 示例
16.2DBMS ALERT
16.2.1发送警报
16.2.2接收警报
16.2.3其他过程
16.2.4警报和数据字典
16.3比较DBMS_PIPE和DBMSALERT
16.4小结
第17章 Oracle高级排队机制
17.1前言
17.1.1AdvancedQueuing的组件
17.1.2AdvancedQueuing的实现
17.2队列操作
17.2.1支持类型
17.2.2ENQUEUE
17.2.3DEQUEUE
17.3队列管理
17.3.1DBMS_AQADM子程序
17.3.2队列权限
17.3.3队列和数据字典
17.4综合示例
17.4.1创建队列和队列表
17.4.2简单的Enqueue和Dequeue
17.4.3清除队列
17.4.4按优先级执行enqueue和
dequeue
17.4.5按关联标识符或消息标识符执
行enqueue和dequeue
17.4.6 浏览队列
17.4.7使用异常情态队列
17.4.8 删除队列
17.5小结
第18章 数据库作业和文件I/O
18.1数据库作业
18.1.1后台进程
18.1.2运行作业
18.1.3失效作业(BrokenJobs)
18.1.4删除作业
18.1.5修改作业
18.1.6查看数据字典中的作业
18.1.7作业执行环境
18.2文件I/O
18.2.1安全性
18.2.2由UTL_FILE所引发的异常情态
18.2.3打开和关闭文件
18.2.4文件输出
18.2.5文件输入
18.2.6示例
18.3小结
第19章 Oracle的WebServer程序
19.1WebServer环境
19.1.1PL/SQL代理
19.1.2指定过程参数
19.2PL/SQLWeb工具箱
19.2.1HTP和HTF
19.2.2OWA_UTIL
19.2.3OWA_IMAGE
19.2.4OWA_COOKIE
19.3用于OWA过程的开发环境
19.3.1OWA_UTIL.SHOWPAGE
19.3.2SQL-StationCoder
19.4小结
第20章 外部过程
20.1什么是外部过程
20.1.1必需的步骤
20.1.2参数映射
20.1.3外部函数和包装过程
20.2数据库的回调
20.2.1服务例程
20.2.2在外部过程中执行SQL
20.3提示、指南和限制
20.3.1调试外部过程
20.3.2指南
20.3.3限制
20.4小结
第21章 大型对象
21.1什么是LOB
21.1.1LOB存储
21.1.2在DML中使用LOB
21.2操纵BFILE
21.2.1目录
21.2.2打开和关闭BFILE
21.2.3在DML中使用BFILE
21.3DBMS_LOB包
21.3.1DBMS_LOB例程
21.3.2由DBMS_LOB例程引发的异
常情态
21.3.3DBMS_LOB和OCI
21.4使用PL/SQL:将LONG型数据复
制到LOB变量中
21.5小结
第22章 性能和调整
22.1共享池
22.1.1Oracle实例的结构
22.1.2共享池的工作原理
22.1.3估计共享池的大小
22.1.4插入对象
22.2SQL语句调整
22.2.1确定执行方案
22.2.2使用方案
22.3网络问题
22.3.1使用客户端PL/SQL
22.3.2避免不必要的重新分析
22.3.3数组处理
22.4小结
附录A PL/SQL保留字
附录B 包使用指南
B.1创建包
B.2包说明
附录C PL/SQL特性的字汇表
附录D 数据字典
D.1什么是数据字典
D.2All/User/DBA字典视图
D.3其他数据字典
D.4 dbms_alert_info
D.5出ct_columns
· · · · · · (收起)

读后感

评分

评分

评分

评分

评分

用户评价

评分

我当初翻开这本书,主要目的其实是想搞清楚当年Oracle 8i环境下,那些晦涩难懂的存储过程是如何实现跨会话数据一致性管理的。这本书的行文风格,怎么说呢,有一种学院派的严谨,但又不像纯理论教科书那样枯燥。作者在阐述一个新概念时,往往会先用一段非常精炼的、近乎于定义的语言来定调,紧接着就是一串篇幅可观、注释详尽的代码示例。这些示例代码,读起来就像是精密仪器的操作手册,每一步都有迹可循,但你也必须全神贯注,因为一旦错过一个分号或者一个关键字的大小写,整个逻辑链条就会断裂。我尤其欣赏的是它对异常处理机制的剖析,作者没有停留在抛出和捕获的表面,而是深入到了事务回滚段的工作原理,用非常形象的比喻解释了“何时可以安全地回滚”这个关键问题。对于我这种实战经验尚浅的开发者来说,这种深挖底层原理的讲解,提供了极大的信心支撑,让我明白自己写的PL/SQL块背后到底发生了什么“魔法”。当然,这也意味着阅读速度不快,需要频繁地对照官方文档的术语表来校准理解,但最终的收获绝对值得这份心力。

评分

这本书的封面设计简直是老派数据库书籍的典范,那种深蓝配上金色的字体,让人一下就联想起上个世纪末那种厚重、严肃的技术手册。我拿到手的时候,首先被它的重量震撼了一下,这可不是那种可以轻松塞进背包的轻薄读物,更像是镇纸一样的存在。内页的纸张质量中规中矩,略带一点点泛黄的趋势,这倒是给它增添了几分“经典”的味道。装订方面,虽然看得出是为经久耐用而设计的,但翻阅起来,尤其是在处理那些大块的示例代码时,书页之间的阻力感还是挺明显的。整体来说,这本书的物理形态,完美地诠释了它所涵盖的技术栈的年代感——扎实、不花哨,目标明确,就是让你去啃硬骨头的。我记得我第一次在图书馆的书架上看到它时,几乎是凭着直觉就知道,这玩意儿绝对不是给初学者用来“快速入门”的速食读物,它散发着一种“你需要投入大量时间才能征服我”的气场。那些厚厚的章节目录,每一个标题都像是对未来数小时甚至数天学习的承诺。光是看着目录,就能感觉到作者在结构组织上的用心,那种层层递进的逻辑感,是现代那些碎片化学习资料里很难找到的踏实感。

评分

这本书在介绍复杂控制结构和游标管理的部分,简直是教科书级别的展示。我记得有一章专门讲动态SQL(DBMS_SQL包),那部分内容简直是“劝退警告”。作者没有避开这个绕口的模块,反而将其视为理解数据库执行引擎的关键一步。他用了一种对比的手法,将静态SQL的便利性与动态SQL的强大能力进行了细致的权衡,并特别强调了在8i时代,动态SQL在性能优化和灵活度上扮演的角色。我特别留意了书中关于“隐式游标”和“显式游标”的讨论,作者在解释为什么在某些特定的批处理场景下,即使代码量增加,也必须采用显式游标来控制内存消耗和执行效率时,其论证过程非常具有说服力。这种说服力不是基于“别人都这么做”,而是基于对底层资源分配的深刻洞察。阅读过程中,我甚至能想象出作者当年在写下这些代码时,是如何在本地环境中不断测试、微调,才最终确定出这个最优解的。这本书不是教你“怎么写”,而是教你“为什么这样写是最好的”。

评分

这本书的附录部分,是我后来反复参考的宝藏。尤其是在处理那些遗留系统维护工作时,它提供的内置函数和包的详尽参考,比任何在线搜索都要来得直接和可靠。不像很多现代技术书籍只关注最新版本的新特性,这本书对于Oracle 8这个特定版本下的数据字典视图(如`*_objects`和`*_source`)的结构描述,细致入微,这在调试那些被时间掩埋的存储过程时,简直是救命稻草。我曾遇到一个难题,需要追溯一个在三层架构中被频繁调用的函数,但该函数的源代码在数据库中已经丢失,我不得不通过直接查询数据字典视图来重构逻辑。如果不是这本书里对相关系统表字段的解释清晰到位,我可能需要花费数倍的时间去盲目地试探。可以说,这本书超越了单纯的“编程指南”范畴,变成了一本深入理解8i数据库内部运作机制的“诊断手册”。它的厚重感,在需要硬核技术支持时,才真正体现出它的分量。

评分

从学习体验的角度来看,这本书更像是一个需要高度自律的私人导师。它不会时时刻刻在你身边轻声提醒你“记得提交事务”或者“别忘了关闭游标”。相反,它会给你一堆严苛的规范和强大的工具,然后等你犯错。我的第一次大型项目实践中,就因为没有完全吃透书中关于LOB(大对象)数据类型在PL/SQL中传递的限制,导致了好几次内存溢出。回头查阅,书中对LOB的“Pass-by-reference”特性有非常明确的警告,只是当时我理解得过于表面化了。这本书的价值就在于,它把那些在现代版本中可能已经被优化或隐藏起来的“陷阱”和“边界条件”都清晰地标注了出来。它迫使读者去理解数据库引擎的局限性,而不是盲目相信编译器的自动修正能力。所以,这本书的阅读过程,与其说是学习编程语言特性,不如说是学习一种在特定、严苛的数据库版本环境下进行高效、健壮编程的哲学。

评分

和初学者指南一样,在刚使用pl/sql时常翻的书,虽然现在看很浅显

评分

和初学者指南一样,在刚使用pl/sql时常翻的书,虽然现在看很浅显

评分

和初学者指南一样,在刚使用pl/sql时常翻的书,虽然现在看很浅显

评分

和初学者指南一样,在刚使用pl/sql时常翻的书,虽然现在看很浅显

评分

和初学者指南一样,在刚使用pl/sql时常翻的书,虽然现在看很浅显

相关图书

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2026 book.wenda123.org All Rights Reserved. 图书目录大全 版权所有