Part 1 PL/SQL - what, when and where: what is PL/SQL?; why use PL/SQL?; what you need to get started with PL/SQL. Part 2 Fundamentals: PL/lingo; running your first PL/SQL program; introduction to program structure; variables; common operators; conditional logic; executing in circles - loop statements; code formatting - requirements and guidelines; some advanced fundamentals. Part 3 Let's code!: some backrgound on the example; a first programming exercise; retrieving a book count with a function; make your code resilient; using PL/SQL packages to organize code; going to the next level; now what?. Part 4 Go web, young man: introduction to HTML; using PL/SQL to create web pages; what else?. Part 5 Fetch!: what's the big deal?; a simple-minded approach to retrieving one row; retrieving more than one row using a cursor; presenting query results via a web page; building a web-based search page using dynamic SQL; advanced data retrieval topics. Part 6 Keeping house: organize your code; use tools to write code effectively. Part 7 Security - keep the bad guys out: Oracle security primer; organizing accounts to improve security; analyzing the library system's requirements; keeping a trail of database changes; special security topics for PL/SQL developers. Part 8 Communicating with the outside world: sending Internet e-mail from PL/SQL; using the mail sender in the library system; receiving e-mail inside the database; fetching data from a remote web site; integration with other languages. Part 9 Intermediate topics and other diversions: riding the software lifecycle; lists o' stuff (collections) in PL/SQL; exception-handling packages; transaction control; the PL/SQL compiler; managing patron and librarian privileges; still more PL/SQL features. Part 10 "Making good" of database programming: the evidence; the problem; answering the objections; what to do.