Symbols
| A
| B
| C
| D
| E
| F
| G
| H
| I
| K
| L
| M
| N
| O
| P
| Q
| R
| S
| T
| U
| V
| W
| Y
| Z
Index: P
- p package
- 2.8.1.1. Supporting many data combinations
- 4.2.1. Building Blocks
- 5.2. p: a DBMS_OUTPUT Substitute
- 7. p: A Powerful Substitute for DBMS_OUTPUT
- l
: (see l procedure)
- output from
: 7.4. Controlling Output from p
- package libraries
: 1.5.2. Prebuilt Packages
- packages
- (see also modularizing)
- A.1.6. Builtin Packages
- 1.1. What Is a PL/SQL Package?
- 2.9. Modularizing for Maintainable Packages
- 5.13.6. Generating a package
- access to elements
: 1.4.4. Access to Package Elements
- building
: 1.6. Building Packages
- built-in
: A.2.6. Builtin Packages
- codependency
: 2.4.1. Creating Codependent Packages
- effective coding of
: 2. Best Practices for Packages
- exception
: (see PLVexc packages)
- exception section
: 1.6.3.2. The exception section
- flexibility
: 2.6. Building Flexibility Into Your Packages
- generating
: 16.2.1. Generating a Package
- help
: (see documentation)
- hiding elements of
-
1.3.1. Enforced Information Hiding
- 2.7. Building Windows Into Your Packages
- 2.10. Hiding Package Data
- in PL/Vision
- 4.2. PL/Vision Package Bundles
- 4.3.5. Creating the PL/Vision Packages
- 5. PL/Vision Package Specifications
- initializing
- 1.6.3. The Initialization Section
- 1.6.5.2. Asserting the purity level of the initialization section
- interface
-
2.5. Constructing the Optimal Interface to Your Package
- 2.10.3. Simplifying Package Interfaces
- layering
: 2.9. Modularizing for Maintainable Packages
- memory architecture
: 1.4.3. The Memory-Resident Architecture of Packages
- memory requirements
: 4.3.2. Storage Requirements
- multiple, constructing
: 2.11. Simultaneous Construction of Multiple Packages
- naming
: 2.3. Selecting Package Names
- online help
: (see PLVhlp package)
- ordering elements of
: 2.2.1. Choosing the Order of Elements
- package body
- 1.6. Building Packages
- 1.6.2. The Package Body
- package specification
- 1.4.1. The Package Specification
- 1.6. Building Packages
- PL/SQL
: 19.2. Declarative Programming in PL/SQL
- PLVctlg table
: 18.2.2.1. PLVctlg table
- recompiling
: 2.4. Organizing Package Source Code
- referencing elements of
: 1.4.2. Referencing Package Elements
- synonyms for
: 4.3.6. Granting Access to PL/Vision
- windows in
: 2.7. Building Windows Into Your Packages
- working with large
: 1.6.4. Working with Large Packages
- page size
- 17.4.2. Setting the Page Size
- 17.5.6.4. Maintaining the current page variables
- online help
: 5.14.2. Setting the page size
- pagesize function
: 17.4.2. Setting the Page Size
- paragraphs
- 5.21.2. Wrapping long strings into paragraphs
- 10.1.4. Wrapping Strings into Paragraphs
- parallelization of programs
: 1.5.1.1. Leveraging builtin packages
- parameter list
: 16.2.2.2. A procedure with parameter list and executable code
- PARSE procedure
: 19.5.6.1. Open and parse
- parse tree
: 1.6.4. Working with Large Packages
- parse_delete procedure
- 5.9.3. Bundled, low-level operations
- 19.5.6.3. Parse for delete
- parse_name procedure
- 5.11.13. Miscellaneous operations
- 13.2.3. Parsing the File Name
- parsing
- code
: 5.22. PLVprsps: PL/SQL Source Code Parsing
- delimiter, defining
: 10.1.2. Customizing the Delimiter Set
- file name
: 13.2.3. Parsing the File Name
- PL/SQL code
: 10.3.2. Parsing PL/SQL Code
- program names
: 11.3.2. Converting the Program Name
- strings
- 5.16. PLVlex: Lexical Analysis
- 5.21. PLVprs: String Parsing
- 10. PLVprs, PLVtkn, and PLVprsps: Parsing Strings
- partial installation
: 4.4.4. A Warning About Partial Installation
- pauding programs
: 5.3.6. Miscellaneous programs
- pause procedure
- 5.3.6. Miscellaneous programs
- 6.4.4. Pausing Your Program
- pausing
help text
(see more procedure)
- pausing programs
- 6.4.4. Pausing Your Program
- A.2.6. Builtin Packages
- perform_commit procedure
- 5.7.3. Performing commits
- 20.1.2. The COMMIT Substitute
- perform_rollback function
- 5.23.3. Performing rollbacks
- 20.2.4. Performing Rollbacks
- performance
- A.2.6. Builtin Packages
- 1.3.6. Performance Improvement
- 3.10. Choosing the Best Performer
- 5.27.6. Calibration and timing scripts
- 14. PLVtmr: Analyzing Program Performance
- dynamic PL/SQL
: 19.5.5.3. The overhead of dynamic PL/SQL
- package size
: 1.6.4. Working with Large Packages
- permissions
: (see access)
- persistence
- 1.3.4. Object Persistence
- 1.6.1.3. Need global data structures for your PL/SQL programs
- pinning code into memory
: 1.4.3.1. Managing packages in shared memory
- pkg procedure
- 5.13.6. Generating a package
- 16.2.1. Generating a Package
- pky procedure
: 5.8.3. Dumping the DDL
- PL/SQL
- call stack
: 21.2.2. Accessing the PL/SQL Call Stack
- code, parsing
: 10.3.2. Parsing PL/SQL Code
- declarative programming
: 19.2. Declarative Programming in PL/SQL
- dynamic code
: 19.5.5. Executing Dynamic PL/SQL Code
- objects
: 11. PLVobj: A Packaged Interface to ALL_OBJECTS
- performance and
: 19.5.5.3. The overhead of dynamic PL/SQL
- reserved words
: 5.26. PLVtkn: Token Table Interface
- source code repositories
: 12. PLVio: Reading and Writing PL/SQL Source Code
- tokens
: (see reserved words)
- PL/Vision
: 4.1. What Is PL/Vision?
- bindobj procedure in
: 11.5.3. Using bindobj in PL/Vision
- cataloging
: 18.2.3.4. Cataloguing PL/Vision
- enhancing PLVexc with
: 22.3.4. Revamping the PLVexc Package
- installing
: 4.3. Installation Instructions
- logging
: (see logging)
- loopexec procedure in
: 11.7.4. Applying loopexec in PL/Vision
- packages of
- 4.2. PL/Vision Package Bundles
- 4.3.5. Creating the PL/Vision Packages
- 5. PL/Vision Package Specifications
- PLVgen and
: 16.4.6. Leveraging PL/Vision in PLVgen
- PLVmsg with
: 9.5.1. Using PLVmsg in PL/Vision
- sharing among users
: 4.3.6. Granting Access to PL/Vision
- tracing
: (see tracing)
- PL/Vision Lite
: 4.2. PL/Vision Package Bundles
- placeholder function
: 5.9.7. Miscellaneous programs
- plsql procedure
- 5.8.3. Dumping the DDL
- 5.9.6. Executing dynamic PL/SQL
- 19.5.5. Executing Dynamic PL/SQL Code
- plsql_block function
- 5.9.7. Miscellaneous programs
- 19.5.5.1. Implementation of PLVdyn.plsql
- plsql_delimiters constant
- 5.21.1. Package constants
- 10.1.2. Customizing the Delimiter Set
- plsql_identifier variable
- 5.3.2. Anchoring datatypes
- 6.5. The Predefined Datatypes
- 19.5.5.2. Scope of a dynamic PL/SQL block
- plsql_string procedure
- 5.22.3. Parsing PL/SQL source code
- 10.3.2.1. plsql_string procedure
- plug-and-play packages
- 4.2.3. Plug-and-Play Components
- 19. PLVdyn and PLVfk: Dynamic SQL and PL/SQL
- PLV package
: 4.2.1. Building Blocks
- constants and functions
: 6. PLV: Top-Level Constants and Functions
- PLV_token table
: 10.2.1. Keeping Track of PL/SQL Keywords
- PLVcase package
- 4.2.2. Developer Utilities
- 5.4. PLVcase: PL/SQL Code Conversion
- 18.1. PLVcase: Converting the Case of PL/SQL Programs
- PLVcat package
- 4.2.2. Developer Utilities
- 5.5. PLVcat: PL/SQL Code Cataloguing
- 10.3.1. Selecting Token Types for Parsing
- 18.2. PLVcat: Cataloguing PL/SQL Source Code
- references and dependencies
: 18.2.4. Identifying References and Dependencies
- plvcat.sql script
: 18.2.3.4. Cataloguing PL/Vision
- PLVchar package
: 4.2.1. Building Blocks
- PLVchr package
: 5.6. PLVchr: Operations on Single Characters
- PLVcmt package
- 4.2.3. Plug-and-Play Components
- 5.7. PLVcmt: Commit Processing
- 20.1. PLVcmt: Enhancing Commit Processing
- 21.1.2.1. Using put_line
- PLVctlg table
: 18.2.2. The PLVcat Database Tables
- PLVddd package
- 4.2.2. Developer Utilities
- 5.8. PLVddd: DDL Syntax Dump
- PLVdyn package
- 2.7. Building Windows Into Your Packages
- 4.2.3. Plug-and-Play Components
- 4.4.1. Special Handling for PLVdyn
- 5.9. PLVdyn: Dynamic SQL Operations
- 19.4. PLVdyn: A Code Layer over DBMS_SQL
- compiling code with
: 19.4.1.7. Compiling source code with PLVdyn
- displaying table contents
: 19.5.7. Displaying a Table
- schemas and
: 19.5.10. Executing PLVdyn in Different Schemas
- PLVdyn1 package
: 4.2.3. Plug-and-Play Components
- PLVexc package
- 4.2.3. Plug-and-Play Components
- 5.10. PLVexc: Exception Handling
- 16.3.5. Using the PLVexc Exception Handler
- 19.1. About Plug-and-Play
- 21.1.2.1. Using put_line
- 22. Exception Handling
- enhancing with PL/Vision
: 22.3.4. Revamping the PLVexc Package
- PLVlog package and
: 22.3.4.1. Leveraging PLVLog
- PLVmsg with
: 9.5. Integrating PLVmsg with Error Handling
- PLVtrc package and
: 22.1.6.5. Integrating PLVexc with PLVtrc
- PLVfile package
- 4.2.1. Building Blocks
- 5.11. PLVfile: Operating System I/O Manager
- 13. PLVfile: Reading and Writing Operating System Files
- PLVfk package
- 4.2.3. Plug-and-Play Components
- 5.12. PLVfk: Foreign Key Interface
- 19.6. PLVfk: Generic Foreign Key Lookups
- PLVgen package
- 2.2. Using Effective Coding Style for Packages
- 2.6.2. Toggles for Code Generation
- 4.2.2. Developer Utilities
- 5.13. PLVgen: PL/SQL Code Generator
- 16. PLVgen: Generating PL/SQL Programs
- overloading in
: 16.4.4. Overloading in PLVgen
- plvgrant.sql script
: 4.3.6. Granting Access to PL/Vision
- PLVhlp
: 4.2.2. Developer Utilities
- PLVhlp package
: 5.1. Common Package Elements
- PLVhlp package
- 4.4. Installing Online Help for PL/Vision
- 4.5. Using Online Help
- 5.14. PLVhlp: Online Help Architechture
- 12.1. Why PLVio?
- 16.2.5.1. Generating help text stubs
- 17. PLVhlp: Online Help for PL/SQL Programs
- plvins23.sql script
: 4.3.5. Creating the PL/Vision Packages
- plvinst.sql script
: 4.3.5. Creating the PL/Vision Packages
- PLVio package
- 4.2.1. Building Blocks
- 5.15. PLVio: Input/Output Processing
- 12. PLVio: Reading and Writing PL/SQL Source Code
- PLVhlp package and
: 17.5.5. Constructing an Online Help Package
- PLVlex package
- 4.2.1. Building Blocks
- 5.16. PLVlex: Lexical Analysis
- PLVlog package
- 2.6.3. Changing Package Behavior Without Changing the Application
- 4.2.3. Plug-and-Play Components
- 5.17. PLVlog: Logging Facility
- 21.1. PLVlog: Logging Activity in PL/SQL Programs
- PLVexc package and
- 22.1.7.1. Logging errors
- 22.3.4.1. Leveraging PLVLog
- rollbacks
: 21.1.5. Rolling Back with PLVlog
- PLVlst package
- 4.2.1. Building Blocks
- 5.18. PLVlst: List Manager
- PLVmsg package
- 4.2.1. Building Blocks
- 5.19. PLVmsg: Message Handling
- 9. PLVmsg: Single-Sourcing PL/SQL Message Text
- 22.1.6.4. Defining error messages with PLVmsg
- PLVobj package
- 4.2.1. Building Blocks
- 5.20. PLVobj: Object Interface
- 11. PLVobj: A Packaged Interface to ALL_OBJECTS
- PLVprs package
- 4.2.1. Building Blocks
- 5.21. PLVprs: String Parsing
- 10.1. PLVprs: Useful String Parsing Extensions
- PLVprsps
: 4.2.1. Building Blocks
- PLVprsps package
: 10.3. PLVprsps: Parsing PL/SQL Strings
- plvpsyn.sql script
: 4.3.6. Granting Access to PL/Vision
- PLVrb package
- 4.2.3. Plug-and-Play Components
- 5.23. PLVrb: Rollback Processing
- 20.2. PLVrb: Performing Rollbacks
- PLVrfrnc table
: 18.2.4.1. Examining the references
- PLVstk package
- 4.2.1. Building Blocks
- 5.24. PLVstk: Stack Manager
- PLVtab package
- 2.6. Building Flexibility Into Your Packages
- 2.8.1.1. Supporting many data combinations
- 4.2.1. Building Blocks
- 5.25. PLVtab: Table Interface
- 8. PLVtab: Easy Access to PL/SQL Tables
- PLVtkn package
- 4.2.1. Building Blocks
- 5.26. PLVtkn: Token Table Interface
- 10.2. PLVtkn: Managing PL/SQL Tokens
- PLVtmr package
- 4.2.2. Developer Utilities
- 5.27. PLVtmr: Program Performance Analyzer
- 14. PLVtmr: Analyzing Program Performance
- 16.2.9. Generating a Timer Script
- 18.2.3.3. Examining the catalogue
- 19.5.5.3. The overhead of dynamic PL/SQL
- PLVtrc package
- 4.2.3. Plug-and-Play Components
- 5.28. PLVtrc: Trace Facility
- 16.3.4. Using the Program Trace
- 21.2. PLVtrc: Tracing Execution of PL/SQL Programs
- PLVexc package and
: 22.1.6.5. Integrating PLVexc with PLVtrc
- PLVvu package
- 4.2.2. Developer Utilities
- 5.29. PLVvu: Code and Error Viewing
- 15. PLVvu: Viewing Source Code and Compile Errors
- 17.2. Current Sources of Information
- pop procedure
: 5.24.3. Modifying stack contents
- post-insert savepoint
: 21.1.5.7. Setting the post-insert savepoint
- pragmas
: 1.6.5.1. RESTRICT_REFERENCES pragma
- EXCEPTION_INIT
: 5.10.2. Package-based exceptions
- prebuilt packages
: 1.5.2. Prebuilt Packages
- predefined exceptions
: 22.1.3. Impact of Predefined Exceptions
- prefix
table row value
: 8.5. Setting the Display Prefix
- prefix function
- 5.2.3. Setting the line prefix
- 5.25.6. Setting the row prefix
- prefixes to package element names
: 2.3.3. Avoiding Superfluous Naming Elements
- prependitem procedure
: 5.18.3. Modifying list contents
- prevmod function
- 5.28.6. Tracing PL/SQL code execution
- 21.2.4.4. Previous module
- private
PL/Vision package synonyms
: 4.3.6. Granting Access to PL/Vision
- private elements
- 1.4.4.1. Public and private data
- 2.7. Building Windows Into Your Packages
- 2.10. Hiding Package Data
- declaring before public
: 2.2.1. Choosing the Order of Elements
- package elements
- 1.3.1. Enforced Information Hiding
- 1.4.4. Access to Package Elements
- privileges, DDL execution
: 19.4.1. DDL Operations
- proc procedure
- 5.13.7. Generating a procedure
- 16.2.2. Generating a Procedure
- 16.4.2. Implementing the Procedure Generator
- procedures
: (see functions)
- execute authority
: 1.3.5. Guaranteeing Transaction Integrity
- generating
- 16.2.2. Generating a Procedure
- 16.4.2. Implementing the Procedure Generator
- help
: 16.2.5.2. Generating a help procedure
- process_halted exception
- 5.10.2. Package-based exceptions
- 22.1.10. Bailing Out with PLVexc
- 22.1.2. Package-Based Exceptions
- productivity
: 4.1.1. The Benefits of PL/Vision
- programming technique
- A. Appendix: PL/SQL Exercises
- 1.2.1. The Iceberg Approach to Coding
- 10.1.3.6. numinstr function
- analyzing performance
: (see performance)
- avoiding hard-coded literals
: 3.12. Obliterating the Literals
- avoiding redundancy
: (see redundancy)
- backward compatibility
- 3.3. Supplying Backward Compatibility
- 3.11. Don't Forget Backward Compatibility
- coding packages
: 2. Best Practices for Packages
- consistent error data
: 22.2.1.1. Recording consistent error data
- cover package
: 1.6.4. Working with Large Packages
- declarative programming
: 19.2. Declarative Programming in PL/SQL
- handling exceptions
: 22.3.1. Analyzing the Need
- handling fatal errors
: 22.1.10. Bailing Out with PLVexc
- hard-coded transaction processing
: 20.1.1. Who Needs PLVcmt?
- logging
: (see logging)
- modularizing
: 2.9. Modularizing for Maintainable Packages
- object-oriented design
: 1.3.2. Object-Oriented Design
- overloading
: 2.8.1. When to Overload
- simultaneous package construction
: 2.11. Simultaneous Construction of Multiple Packages
- testing/debugging
: 2.6.3.1. The test/debug cycle in PL/SQL
- toggles
: 2.6.1. Toggling Package Behavior
- top-down design
: 1.3.3. Top-Down Design
- user interface
: 3.4. Improving the User Interface
- using package initialization section
: 1.6.3.1. When to use the initialization section
- using packages
: 1.6.1. When Should You Build a Package?
- windows
: 2.7. Building Windows Into Your Packages
- programs
: (see code)
- ps2db procedure
- 5.17.6. Managing the log
- 21.1.4.3. Transferring a PL/SQL table log to a database table
- ps_callstack function
- 5.28.5. Accessing the PL/SQL call stack
- 21.2.2. Accessing the PL/SQL Call Stack
- ps_module function
- 5.28.5. Accessing the PL/SQL call stack
- 21.2.2. Accessing the PL/SQL Call Stack
- psformat procedure
: 4.1.2. The Origins of PL/Vision
- pstab constant
: 5.3.1. PL/Vision constants
- pstab2file procedure
- 5.11.11. Copying a file
- 13.7.4. Copying PL/SQL Table to File
- pstab_count function
- 5.17.6. Managing the log
- 21.1.4.1. Counting and clearing the PL/SQL table
- public
PL/Vision package synonyms
: 4.3.6. Granting Access to PL/Vision
- public data
package elements
: 1.4.4. Access to Package Elements
- public elements
- 1.4.4.1. Public and private data
- 2.7. Building Windows Into Your Packages
- 2.10. Hiding Package Data
- 2.10.4. When to Make Data Public
- anchored declarations
: 2.10.5. Anchoring to Public Variables
- declaring before private
: 2.2.1. Choosing the Order of Elements
- package elements
- 1.3.1. Enforced Information Hiding
- 1.4.1. The Package Specification
- purity levels
: 1.6.5.1. RESTRICT_REFERENCES pragma
- push procedure
: 5.24.3. Modifying stack contents
- PUT_LINE package
- (see also p package)
-
7. p: A Powerful Substitute for DBMS_OUTPUT
- 5.2. p: a DBMS_OUTPUT Substitute
- put_line procedure
- 5.11.10. Writing to a file
- 5.15.7. Reading and writing lines
- 5.17.4. Writing to the log
- 12.7. Writing to the Target
- 13.6. Writing to a File
- 16.4.3. put_line Procedure
- 21.1.2. Writing to the Log
- specifying rollbacks
: 21.1.5.5. Specifying rollbacks when calling put_line
- PUT_LINE procedure
: 2.8.1.1. Supporting many data combinations
- put_line repository
: 12.7.3. Displaying the Target Repository
Symbols
| A
| B
| C
| D
| E
| F
| G
| H
| I
| K
| L
| M
| N
| O
| P
| Q
| R
| S
| T
| U
| V
| W
| Y
| Z
Copyright (c) 2000 O'Reilly & Associates. All rights reserved.