Book description
Oracle is the most popular database management system in use today, and PL/SQL plays a pivotal role in current and projected Oracle products and applications. PL/SQL is a programming language providing procedural extensions to the SQL relational database language and to an ever-growing number of oracle development tools. originally a rather limited tool, PL/SQL became with Oracle7 a mature and effective language for developers. now, with the introduction of Oracle8, PL/SQL has taken the next step towards becoming a fully realized programming language providing sophisticated object-oriented capabilities. Steven Feuerstein's Oracle PL/SQL Programming is a comprehensive guide to building applications with PL/SQL. That book has become the bible for PL/SQL developers who have raved about its completeness, readability, and practicality. Built-in packages are collections of PL/SQL objects built by Oracle Corporation and stored directly in the Oracle database. The functionality of these packages is available from any programming environment that can call PL/SQL stored procedures, including Visual Basic, Oracle Developer/2000, Oracle Application Server (for web-based development), and, of course, the Oracle database itself. Built-in packages extend the capabilities and power of PL/SQL in many significant ways. for example:
DBMS_SQL executes dynamically constructed SQL statements and PL/SQL blocks of code.
DBMS_PIPE communicates between different Oracle sessions through a pipe in the RDBMS shared memory.
DBMS_JOB submits and manages regularly scheduled jobs for execution inside the database.
DBMS_LOB accesses and manipulates Oracle8's large objects (LOBs) from within PL/SQL programs.
1. Introduction
Executing Dynamic SQL and PL/SQL
Intersession Communication
User Lock and Transaction Management
Oracle Advanced Queuing
Generating Output from PL/SQL Programs
Defining an Application Profile
Managing Large Objects
Datatype Packages
Miscellaneous Packages
Managing Session Information
Managing Server Resources
Job Scheduling in the Database
Snapshots
Advanced Replication
Conflict Resolution
Deferred Transactions and Remote Procedure Calls
The first edition of Oracle PL/SQL Programming contained a chapter on Oracle's built-in packages. but there is much more to say about the basic PL/SQL packages than Feuerstein could fit in his first book. In addition, now that Oracle8 has been released, there are many new Oracle8 built-in packages not described in the PL/SQL book. There are also packages extensions for specific oracle environments such as distributed database. hence this book. Oracle Built-in Packages pulls together information about how to use the calling interface (API) to Oracle's Built-in Packages, and provides extensive examples on using the built-in packages effectively. The windows diskette included with the book contains the companion guide, an online tool developed by RevealNet, Inc., that provides point-and-click access to the many files of source code and online documentation developed by the authors. The table of contents follows: Preface Part I: Overview
Part II: Application Development Packages
Part III: Server Management Packages
Part IV: Distributed Database Packages
Appendix. What's on the companion disk?
Publisher resources
Table of contents
-
Oracle Built-in Packages
- SPECIAL OFFER: Upgrade this ebook with O’Reilly
- A Note Regarding Supplemental Files
- Dedication
- Preface
-
I. Overview
-
1. Introduction
- The Power of Built-in Packages
- Built-in Packages Covered in This Book
- Using Built-in Packages
- Examining Built-in Package Source Code
-
1. Introduction
-
II. Application Development Packages
-
2. Executing Dynamic SQL and PL/SQL
- Examples of Dynamic SQL
- Getting Started with DBMS_SQL
- The DBMS_SQL Interface
- Tips on Using Dynamic SQL
- DBMS_SQL Examples
-
3. Intersession Communication
-
DBMS_PIPE: Communicating Between Sessions
- Getting Started with DBMS_PIPE
- How Database Pipes Work
- Managing Pipes and the Message Buffer
- Packing and Unpacking Messages
- Sending and Receiving Messages
- Tips on Using DBMS_PIPE
- DBMS_PIPE Examples
-
DBMS_ALERT: Broadcasting Alerts to Users
- Getting Started with DBMS_ALERT
- The DBMS_ALERT Interface
- DBMS_ALERT Examples
-
DBMS_PIPE: Communicating Between Sessions
-
4. User Lock and Transaction Management
- DBMS_LOCK: Creating and Managing Resource Locks
- DBMS_TRANSACTION: Interfacing to SQL Transaction Statements
-
5. Oracle Advanced Queuing
- Oracle AQ Concepts
- Getting Started with Oracle AQ
- Oracle AQ Nonprogram Elements
- DBMS_AQ: Interfacing to Oracle AQ (Oracle8 only)
- DBMS_AQADM: Performing AQ Administrative Tasks (Oracle8 only)
- Oracle AQ Database Objects
- Oracle AQ Examples
-
6. Generating Output from PL/SQL Programs
- DBMS_OUTPUT: Displaying Output
- UTL_FILE: Reading and Writing Server-side Files
-
7. Defining an Application Profile
- Getting Started with DBMS_APPLICATION_INFO
-
DBMS_APPLICATION_INFO Interface
- The DBMS_APPLICATION_INFO.READ_CLIENT_INFO procedure
- The DBMS_APPLICATION_INFO.READ_MODULE procedure
- The DBMS_APPLICATION_INFO.SET_ACTION procedure
- The DBMS_APPLICATION_INFO.SET_CLIENT_INFO procedure
- The DBMS_APPLICATION_INFO.SET_MODULE procedure
- The DBMS_APPLICATION_INFO.SET_SESSION_LONGOPS procedure
- DBMS_APPLICATION_INFO Examples
-
8. Managing Large Objects
- Getting Started with DBMS_LOB
- LOB Concepts
-
DBMS_LOB Interface
- Working with BFILEs
- Reading and Examining LOBs
- Updating BLOBs, CLOBs, and NCLOBs
-
9. Datatype Packages
-
DBMS_ROWID: Working with the ROWID Pseudo-Column (Oracle8 only)
- Getting Started with DBMS_ROWID
- ROWID Concepts
-
The DBMS_ROWID Interface
- The DBMS_ROWID.ROWID_BLOCK_NUMBER function
- The DBMS_ROWID.CREATE_ROWID function
- The DBMS_ROWID.ROWID_INFO procedure
- The DBMS_ROWID.ROWID_OBJECT function
- The DBMS_ROWID.ROWID_RELATIVE_FNO function
- The DBMS_ROWID.ROWID_ROW_NUMBER function
- The DBMS_ROWID.ROWID_TO_ABSOLUTE_FNO function
- The DBMS_ROWID.ROWID_TO_EXTENDED function
- The DBMS_ROWID.ROWID_TO_RESTRICTED function
- The DBMS_ROWID.ROWID_TYPE function
- The DBMS_ROWID. ROWID_VERIFY function
-
UTL_RAW: Manipulating Raw Data
- Getting Started with UTL_RAW
- Raw Data Manipulation Concepts
-
The UTL_RAW Interface
- The UTL_RAW.BIT_AND function
- The UTL_RAW.BIT_COMPLEMENT function
- The UTL_RAW.BIT_OR function
- The UTL_RAW.BIT_XOR function
- The UTL_RAW.CAST_TO_RAW function
- The UTL_RAW.CAST_TO_VARCHAR2 function
- The UTL_RAW. COMPARE function
- The UTL_RAW.CONCAT function
- The UTL_RAW.CONVERT function
- The UTL_RAW.COPIES function
- The UTL_RAW.LENGTH function
- The UTL_RAW.OVERLAY function
- The UTL_RAW.REVERSE function
- The UTL_RAW.SUBSTR function
- The UTL_RAW.TRANSLATE function
- The UTL_RAW.TRANSLITERATE function
- The UTL_RAW.XRANGE function
- UTL_REF: Referencing Objects (Oracle8.0.4)
-
DBMS_ROWID: Working with the ROWID Pseudo-Column (Oracle8 only)
-
10. Miscellaneous Packages
-
DBMS_UTILITY: Performing Miscellaneous Operations
- Getting Started with DBMS_UTILITY
-
The DBMS_UTILITY Interface
- The DBMS_UTILITY.ANALYZE_DATABASE procedure
- The DBMS_UTILITY. ANALYZE_SCHEMA procedure
- The DBMS_UTILITY. ANALYZE_PART_OBJECT procedure (Oracle8 Only)
- The DBMS_UTILITY.COMMA_TO_TABLE procedure
- The DBMS_UTILITY. COMPILE_SCHEMA procedure
- The DBMS_UTILITY. DATA_BLOCK_ADDRESS_BLOCK function
- The DBMS_UTILITY. DATA_BLOCK_ADDRESS_FILE function
- The DBMS_UTILITY. DB_VERSION procedure
- The DBMS_UTILITY. EXEC_DDL_STATEMENT procedure
- The DBMS_UTILITY. FORMAT_CALL_STACK function
- The DBMS_UTILITY.FORMAT_ERROR_STACK function
- The DBMS_UTILITY. GET_HASH_VALUE function
- The DBMS_UTILITY. GET_PARAMETER_VALUE function
- The DBMS_UTILITY. GET_TIME function
- The DBMS_UTILITY. IS_PARALLEL_SERVER function
- The DBMS_UTILITY. MAKE_DATA_BLOCK_ADDRESS function
- The DBMS_UTILITY. NAME_RESOLVE procedure
- The DBMS_UTILITY.NAME_TOKENIZE procedure
- The DBMS_UTILITY.PORT_STRING function
- The DBMS_UTILITY.TABLE_TO_COMMA procedure
- DBMS_DESCRIBE: Describing PL/SQL Program Headers
- DBMS_DDL: Compiling and Analyzing Objects
- DBMS_RANDOM: Generating Random Numbers (Oracle8 Only)
-
DBMS_UTILITY: Performing Miscellaneous Operations
-
2. Executing Dynamic SQL and PL/SQL
-
III. Server Management Packages
-
11. Managing Session Information
-
DBMS_SESSION: Managing Session Information
- Getting Started with DBMS_SESSION
- Modifying Session Settings
- Obtaining Session Information
- Managing Session Resources
- DBMS_SESSION Examples
- DBMS_SYSTEM: Setting Events for Debugging
-
DBMS_SESSION: Managing Session Information
- 12. Managing Server Resources
-
13. Job Scheduling in the Database
- Getting Started with DBMS_ JOB
- Job Queue Architecture
- Tips on Using DBMS_JOB
- DBMS_JOB Examples
-
11. Managing Session Information
-
IV. Distributed Database Packages
-
14. Snapshots
- DBMS_SNAPSHOT: Managing Snapshots
- DBMS_REFRESH: Managing Snapshot Groups
- DBMS_OFFLINE_SNAPSHOT: Performing Offline Snapshot Instantiation
- DBMS_REPCAT: Managing Snapshot Replication Groups
-
15. Advanced Replication
- DBMS_REPCAT_AUTH: Setting Up Administrative Accounts
- DBMS_REPCAT_ADMIN: Setting Up More Administrator Accounts
-
DBMS_REPCAT: Replication Environment Administration
- Getting Started with DBMS_REPCAT
- Replication Groups with DBMS_REPCAT
- Replicated Objects with DBMS_REPCAT
- Replication Support with DBMS_REPCAT
- Adding and Removing Master Sites with DBMS_REPCAT
- Maintaining the Repcatlog Queue with DBMS_REPCAT
- Quiescence with DBMS_REPCAT
- Miscellaneous DBMS_REPCAT Procedures
- DBMS_OFFLINE_OG: Performing Site Instantiation
- DBMS_RECTIFIER_DIFF: Comparing Replicated Tables
- DBMS_REPUTIL: Enabling and Disabling Replication
-
16. Conflict Resolution
- Getting Started with DBMS_REPCAT
- Column Groups with DBMS_REPCAT
-
Priority Groups with DBMS_REPCAT
- About Priority Groups
- Creating, Maintaining, and Dropping Priority Groups
- Creating and Maintaining Priorities Within a Priority Group
- Dropping Priorities from a Priority Group
- Site Priority Groups with DBMS_REPCAT
- Assigning Resolution Methods with DBMS_REPCAT
- Monitoring Conflict Resolution with DBMS_REPCAT
-
17. Deferred Transactions and Remote Procedure Calls
- About Deferred Transactions and RPCs
-
DBMS_DEFER_SYS: Managing Deferred Transactions
- Getting Started with DBMS_DEFER_SYS
- Adding and Deleting Default Destinations
- Copying Deferred Transactions to New Destinations
- Maintenance Procedures
- Propagating Deferred RPCs
-
Scheduling Propagation (Oracle8 only)
- The DBMS_DEFER_SYS.EXCLUDE_PUSH function (Oracle8 only)
- The DBMS_DEFER_SYS.PURGE function (Oracle8 only)
- The DBMS_DEFER_SYS.PUSH function
- The DBMS_DEFER_SYS.SCHEDULE_PURGE procedure (Oracle8 only)
- The DBMS_DEFER_SYS.SCHEDULE_PUSH procedure (Oracle8 only)
- The DBMS_DEFER_SYS.UNSCHEDULE_PURGE procedure (Oracle8 only)
- The DBMS_DEFER_SYS.UNSCHEDULE_PUSH procedure (Oracle8 only)
- The DBMS_DEFER_SYS.REGISTER_PROPAGATOR procedure (Oracle8 only)
- The DBMS_DEFER_SYS.UNREGISTER_PROPAGATOR procedure (Oracle8 only)
- DBMS_DEFER: Building Deferred Calls
- DBMS_DEFER_QUERY: Performing Diagnostics and Maintenance
-
14. Snapshots
- A. What’s on the Companion Disk?
- Index
- About the Authors
- Colophon
- SPECIAL OFFER: Upgrade this ebook with O’Reilly
Product information
- Title: Oracle Built-in Packages
- Author(s):
- Release date: May 1998
- Publisher(s): O'Reilly Media, Inc.
- ISBN: 9781565923751
You might also like
book
Designing Data-Intensive Applications
Data is at the center of many challenges in system design today. Difficult issues need to …
book
Generative Deep Learning, 2nd Edition
Generative AI is the hottest topic in tech. This practical book teaches machine learning engineers and …
book
Introduction to JavaScript Object Notation
What is JavaScript Object Notation (JSON) and how can you put it to work? This concise …
book
Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow, 3rd Edition
Through a recent series of breakthroughs, deep learning has boosted the entire field of machine learning. …