Author: Ryan Stephens, Ron Plew & Arie D. Jones
Aimed at: Novices in SQL
Pros:Good coverage of the ANSI standard with examples in real world SQL dialects
Cons: You might prefer a book aimed at the particular dialect you’ll be working with
Reviewed by: Kay Ewbank
A vendor-neutral approach to SQL. Does it work in practice?
Teach Yourself SQL in 24 hours follows the familiar pattern of 24 one hour long lessons, in this case to cover the whole of SQL. It’s worth pointing out that the book covers ANSI SQL with nods towards Oracle, Microsoft SQL Server and MySQL, so you’re going to learn the core of the language rather than the particular dialect of whatever database you’re working with. The writers get around this limitation by including short discussions on how the different implementations deal with particular problems. For example, when discussing auto-incrementing columns, you’re shown how MySQL deals with it, then how SQL Server does it, then how Oracle doesn’t let you do it directly. This vendor neutrality can actually be quite helpful, especially if you have to take code written for one dialect and work out how to do it in another.
The initial couple of chapters covering the generalities seemed to me to be the weakest in the book, and I wouldn’t want to try to understand data structures and database objects just from what’s covered here. If you don’t understand what a database is, this isn’t the book to use to learn. Instead, get the general concepts into place and skim read the opening chapters.
Once into the nitty gritty of SQL, the chapters are much stronger and generally clear and understandable. All the chapters include quizzes and exercises to check you’ve understood the concepts, along with points to watch out for, and interesting ‘by the way’ asides. In some ways the most useful information in the whole book is to be found in the Watch Out and By the Way boxouts, particularly in the more advanced chapters on complex queries and performance tuning.
The chapters on SQL start with simple queries and work up through subqueries, performance tuning, using SQL to manage users and security, and using views and the system catalog. The final part of the book looks at advanced SQL topics such as cursors, stored procedures and triggers, XML, and using SQL on the Internet and Intranet. The chapter on SQL and the Intranet seemed a bit theoretical but would be a useful pointer to the sort of things you might want to do; it wouldn’t be enough to let you build an app without finding out more.
To developers the basic commands of SQL will appear pretty trivial, and I think this book would be a good companion to get you up to speed on some of the more advanced topics. You won’t come out as a SQL expert, but you will know enough to make the SQL in your applications work, and work pretty well.