(Note: I wasn't a fan of the sample chapter, as it didn't provide any `flavor' of the book. When I look at a sample chapter I want see to the way things are being presented in the middle of the book, when things are really rolling.)

Introduction

I'm a database programmer of several years, and was interested in getting a handle on how to program in Oracle PL/SQL. I wanted to know PL/SQL's take on how to do the common operations of retrieving, manipulating, and storing data to and from the database.

As a primer, this book is quite good. It starts out by explaining that it isn't for complete novices; some database or programming experience is expected. It's tone is `let's get down to business' without being too dry. And it does go through many of the basic PL/SQL issues I was looking for in a book of this kind, such as packages, loops, data structures, and coding conventions.

What I liked

I was looking for four things from this book:
  1. What PL/SQL does really well. This includes things like data retrieval from tables into the program, object collections, and code packages.

  2. Gotchas that could trip me up in the future. I found 8-10 cases that this book where PL/SQL either doesn't follow standard language conventions or does things in a non-intuitive way. Big points for identifying them to the new PL/SQL user in advance. Would have liked to see them listed together in the back of the book for easy reference.

  3. Code samples to allow me to understand the flow of the language. There were many small examples, but I would have liked to see the complete finished product at the end of the chapter. I know the examples are on the web, it's a convenience and concentration thing (I prefer everything together and at my disposal in one unit).

  4. Oracle standards and conventions, so one would learn a correct `style' from the outset. Several examples of naming conventions and preferred styles were mentioned. Would like to have seen more, but that is probably as much as should be expected in a primer.

What I didn't like

I would have liked to see some more emphasis on object-oriented programming. The book mentions it, but doesn't go into any detail.

The programming example through the book was creating a library application with a web interface. As functionality was built into the application, more code chunks were added to previous work. Nearing the end of the application I had occasional trouble following what piece of code was getting updated and where it fit into the application framework. I would have found it useful to have a small graphic or flowchart representing the code objects with the object being worked on highlighted.

Summary

This book gets a 6.5 out of 10 from me. It didn't touch on every issue or feature I would have liked and there are a few issues that could be a bit more polished, but the underlying concepts were well defined and explained, there were plenty of examples, and the writing style was for the most part tight and concise. A good read for the novice PL/SQL user.