About the Contents
The third edition of Oracle PL/SQL Programming is divided into six parts:
Part I, Programming in PL/SQL
We start from the very beginning in Chapter 1: where did PL/SQL come from? What is it good for? We offer a very quick review of some of the main features of the PL/SQL language. Chapter 2 is designed to get you and up and running PL/SQL programs as quickly as possible: it contains clear, straightforward instructions for executing PL/SQL code in SQL*Plus and a few other common environments. Chapter 3 reviews fundamentals of the PL/SQL language: what makes up a PL/SQL statement, an introduction to the block structure, how to write comments in PL/SQL, and so on.
Part II, PL/SQL Program Structure
Chapter 4 through Chapter 6 explore conditional (IF and CASE) and sequential (e.g., GOTO and NULL) control statements, loops, and exception handling in the PL/SQL language. This section of the book will teach you to construct blocks of code that correlate to the complex requirements of your applications.
Part III, PL/SQL Program Data
Just about every program you write will manipulate data, and much of that data will be local to (defined in) your PL/SQL procedure or function. Chapter 7 through Chapter 12 concentrate exhaustively on the various types of program data you can define in PL/SQL, such as numbers, strings, records, and collections. You will learn about the new datatypes introduced in Oracle9i, such as INTERVAL, TIMESTAMP, XMLType, and others. These chapters also cover the various built-in functions provided by Oracle that allow you to manipulate and modify data.
Part IV, SQL in PL/SQL
Chapter 13 through Chapter 15 address one of the most central elements of PL/SQL code construction: the connection to the underlying database, which takes place through SQL. These chapters show you how to define transactions that update, insert, and delete tables in the database; how to query information from the database for processing in a PL/SQL program; and how to execute SQL statements dynamically, using native dynamic SQL (NDS), which was introduced in Oracle8i.
Part V, PL/SQL Application Construction
This is where it all comes together. You know about declaring and working with variables, and you're an expert in error handling and loop construction. Now, in Chapter 16 through Chapter 19, you'll learn about the building blocks of applications, which include procedures, functions, triggers, and packages. Chapter 19 discusses how to manage your PL/SQL code base, including suggestions for tuning and debugging that code.
Part VI, Advanced PL/SQL Topics
A language as mature and rich as PL/SQL is full of features that you may not use on a day-to-day basis, but that may sometimes be the difference between success and failure. Chapter 20 contains an exploration into the PL/SQL runtime architecture, including PL/SQL's use of memory and the differences between server-side and client-side PL/SQL. Chapter 21 offers an in-depth guide to the object-oriented features of Oracle (object types and object views). Chapter 22 and Chapter 23 show you how to invoke Java and C code from your PL/SQL applications.
If you are an accomplished programmer who is just new to PL/SQL, reading this book from beginning to end should improve your skills and deepen your understanding. If you're already a proficient PL/SQL programmer, you'll probably want to dip into the appropriate sections to extract particular techniques for immediate application. Whether you use this book as a teaching guide or as a reference, we hope that it will help you to use PL/SQL effectively.