2700 pages and still writing! Sometimes I feel like the Energizer Bunny of PL/SQL. But Oracle keeps the features coming, and after all these years, I'm still enthusiastic about what PL/SQL can do to improve the quality of life for developers. Even with the coming of Java(TM) in Oracle8i, I believe strongly that the future is bright for PL/SQL developers.
This short book is something of a departure for me -- those of you who have read my larger tomes may wonder if I've found a ghostwriter! Now that Oracle8i is here, it's my intention to update Oracle PL/SQL Programming (now in its second edition) to cover the new version of the Oracle database. Along with developing a third edition of that book (with my coauthor Bill Pribyl), I'm taking a critical look at all of my books to make sure that the O'Reilly & Associates PL/SQL series offers a comprehensive resource for PL/SQL developers.
For now, though, PL/SQL developers need current and useful information about the latest PL/SQL features; there are a lot of them, and some represent major changes in the language. This small book is intended to get you started on understanding these features and using them to best advantage.
For many people, the big news about Oracle8i is Java, and the big question for many PL/SQL developers is how (and whether) to use Java in conjunction with PL/SQL. Chapter 9, Calling Java from PL/SQL, is a roadmap showing PL/SQL developers how to employ Java right now. It doesn't attempt to teach you the basics of Java -- there are many other books that serve that purpose -- but it does teach you how to access Java from within PL/SQL.
This book is divided into ten chapters and one appendix, as follows.
Chapter 1, Oracle8i: A Bounty for PL/SQL Developers, introduces Oracle8i and summarizes the new PL/SQL-related features.
Chapter 2, Choose Your Transaction!, describes autonomous transactions. This feature lets PL/SQL developers execute and then save or cancel certain statements without affecting the overall session's transaction.
Chapter 3, Invoker Rights: Your Schema or Mine? , describes a new feature of PL/SQL that lets you decide at the time of compilation whether a program, or all of the programs in a package, should run under the authority of the definer or the invoker of the program.
Chapter 4, Native Dynamic SQL in Oracle8i, unveils a powerful replacement for (or at least an alternative to) the use of the DBMS_SQL built-in package.
Chapter 5, Bulking Up with PL/SQL 8.1, describes bulk binds and collects. Bulk binds let you bundle DML operations (via the new FORALL statement) for bulk passing to the SQL layer; bulk collects let you retrieve multiple rows with an absolute minimum of context switches.
Chapter 6, New Trigger Features in Oracle8i, discusses how Oracle8i has expanded the use of triggers to perform database- and schema-level operations and "publish" information about events taking place within the database.
Chapter 7, New and Enhanced Built-in Packages in Oracle8i, describes the new built-in packages available in Oracle8i and discusses changes to existing packages.
Chapter 8, Deploying Fine-Grained Access Control, examines a new Oracle8i feature that allows you to implement security policies with functions and then use those policies to implement row-level security on tables and views.
Chapter 9, takes a look at what many people think is the most exciting feature of Oracle8i -- the interface to Java. This chapter focuses on how you can call Java stored procedures ( JSPs) from within PL/SQL.
Chapter 10, More Goodies for Oracle8i PL/SQL Developers, describes a variety of new features and performance improvements that don't fit into any other category.
The appendix, What's on the Companion Disk?, explains how to install and use the software on the companion diskette.
Copyright (c) 2000 O'Reilly & Associates. All rights reserved.