This is poor. I expect more from O'Reilly books. The ugly bias towards avoiding stored procedures sums up the book. Many developers writing DB apps want to get the maximum performance out of their database. They really don't care whether the code ports well to other vendors, because that is outside their remit. Worse still, the chapter on Meta data is very lightweight. The author glosses over implementation details. The fact that every JDBC driver I have seen calls SQL under the bonnet, then wraps that in a Java API should be explained. Often you can do better by writing your own MetaData classes.... Some JDBC drivers simply return the ** WRONG ** Meta Data. That should be pointed out. A serious DB developer needs to know what is going on under the bonnet and this book does not help.