This week's book giveaway is in the OO, Patterns, UML and Refactoring forum.
We're giving away four copies of Five Lines of Code and have Christian Clausen on-line!
See this thread for details.
Win a copy of Five Lines of Code this week in the OO, Patterns, UML and Refactoring forum!

Lynn Beighley

author
+ Follow
since Sep 12, 2007
Cows and Likes
Cows
Total received
0
In last 30 days
0
Total given
0
Likes
Total received
0
Received in last 30 days
0
Total given
0
Given in last 30 days
0
Forums and Threads
Scavenger Hunt
expand Ranch Hand Scavenger Hunt
expand Greenhorn Scavenger Hunt

Recent posts by Lynn Beighley

Right 9, Left 10
12 years ago
It's been a pleasure. And I've gotten a list of topics that might work for an advanced book out of it. Sorry, it won't be open source, and it won't cover object oriented SQL (to be honest, I didn't know there was an OO SQL, and I couldn't find any useful information on it). But I do have some great ideas for a future advanced SQL book. Maybe after my current one is finished...

Thanks again, it's been a pleasure!
It's not the SQL statements that are submitted that are usually a problem. If your tables are designed correctly, in general there aren't all that many options for how to get at your data. The variations in SQL commands can cause your processes to be slower, but that's something that can be tested and fine tuned.

I think the biggest problem many developers encounter when first using SQL is not taking the time to understand normalization and having a tendency to build ugly, unnormalized tables that cause them pain as they actually try to use them. For example, there's a thread somewhere on this board from yesterday when someone was asking how to remove duplicate records, something that can only happen when your table is poorly designed.

And those of you who have taken over a database from someone who didn't know what they were doing also get to feel the pain of poor execution.

Nothing particularly bizarre stands out, except for a few really badly designed tables. Recently I encountered duplicate data, non-atomic data, miscast data types, all in a single, misbegotten table. Horrible!
Hi Kevin,
I believe so. The things I find I forget after a long absence include joins, and I expect to be using my own book to refresh me after a year or more away. Plus there (hopefully) are topics you didn't encounter before that might be useful, perhaps grants and roles.
In HF SQL, we deal with presenting some subqueries as joins, and vice versa, but do not offer an opinion on the difference in performance.
I'm not familiar with the content of that exam, and I imagine there are better resources out there for it.
Really good expression for it. HF SQL stays strictly on the data side of the line, and doesn't look out into the battlefield.
Of course I have a bias towards O'Reilly books. While I don't know if I'd call it an advanced book, precisely, one that I find especially useful is:
SQL in a Nutshell

Two others that get into theory and are well written:
Database in Depth by C.J. Date
which gets into the fundamentals of what "relational" is
and
The Art of SQL by Stephane Faroult
which approaches controlling your data strategically. Very cool.

I picked up a book that I'm really enjoying the other day,
PHP and MySQL Web Development by Welling and Thomson. It's a great guide to actually using that SQL you just learned with PHP. Goes from simple to fairly complicated. It's a bit thick and dense, but if you are willing to work at it, I think it's worth the effort.
Thanks Jothi,
I do think the chapter on normalization is especially clear and Head Firsty!
Stored procedures are not included in the book. In the future, as Head First publishes books that discuss practically using SQL in your applications, they will be discussed.
[ October 18, 2007: Message edited by: Lynn Beighley ]
Or more simply, learn the concepts and then get a good reference book for your particular flavor. I think it's safe to say that most people will only be working with one RDBMS at any particular time, and learning your system's syntax is not going to be that difficult.
Hi Jeff,
I do go through user permissions in great detail, but not triggers or procedural SQL or triggers. As far as syntax, I stick as closely to ANSI SQL as possible, and trust that the reader can pick up a reference book for their specific database. We felt that for the reader, going to a reference to check syntax was far better than us focusing on nuances of syntax at the expense of deeper conceptual learning.
I'm not certain. I'll see if I can get one of the HF editors to step in and address this question...