Review: Beginning SQL Server 2005 Programming
- Title: Beginning SQL Server 2005 Programming
- Author: Robert Vieira
- Level: Beginner
- Publisher: Wrox
- Pages: 688
- Rating: 3.5 of 5
SQL Server 2005 is another big release for SQL Server. It contains many new
enhancements and additions. If you are targeting software development with .NET
framework (or any MS technology) then you should have solid understanding of SQL
Server. This book is intended for beginners and gives good understanding about
RDBMS basics, various flavors SQL statements, stored procedures, functions and
triggers. I found the writing style of the author a bit verbose at places but
that's not a major issue.
The book comprises of nineteen chapters and five appendixes. Although the
book has not divided itself into parts I would group the chapters in the
- Using SQL with SQL Server 2005 (Chapters 1-7, 10)
- Programming SQL Server 2005 using T-SQL (Chapters 9,11-15)
- New and add-on features of SQL Server 2005 (Chapters 16-18)
- Administrative activities (Chapters 8,9,19)
The book begins by explaining the basic concepts of RDBMS as applied to SQL
Server along with SQL Server vocabulary for database objects and data types.
Though the title of the Chapter 1 contains "RDBMS Basics" what it really gives
is an introduction to SQL Server specific terminologies.
The Chapter 2 covers SQL Server tools and utilities such as Management Studio
(an expanded and enhanced version of Enterprise Manager) however this
introduction is rather brief. I would have expected more detailed explanation
about Management Studio and tasks that you can accomplish with it. Beginners are
most likely to use it to design tables rather than raw queries.
Chapter 3, 4 and 7 are dedicated to SELECT statement. Simple SELECTs, JOINs
and Subqueries are covered in reasonable details. Especially JOINs are explained
clearly. Beginners often get confused while working with JOINs.
Chapter 5, 6 and 10 are devoted to creating tables, constraints and views.
Statements such as CREATE TABLE, ALTER TABLE and DROP TABLE are covered in
Chapter 5. Chapter 6 explains constraints such as PRIMARY KEY, FOREIGN KEY,
CHECK, DEFAULT are covered. The need and use of Views is the subject of Chapter
Database designing and normalization are covered in Chapter 8 while Chapter 9
covers indexes. These two topics are often difficult to understand to beginners
and are neatly covered in these chapters.
From Chapter 11 onwards the real "programming" starts. Chapter 11 kicks off
the topic by introducing scripts, batches and EXEC command. Chapter 12 is
dedicated to stored procedures. Though the chapter covers basics of stored
procedures some pieces such as CURSORS are missing. Author has just mentioned
about .NET assemblies here but it would have been great to incorporate at least
a "hello world" example that gives some idea about what they are and how they
work. Chapter 13 covers User Defined Functions (UDFs). An extensive (or at least
reasonably expanded) list of inbuilt stored procedures and functions would have
Chapter 14 covers another important and misunderstood topic - Transactions.
Issues such as locks, concurrency and deadlocks are dealt with neatly.
Chapter 15 explains the purpose and use of triggers. Along with common tasks
with the triggers the author has also covered the impact of triggers on
performance (which is important to understand).
Chapter 16 onwards the book takes you through the new features and add-ons of
SQL Server 2005. Chapter 16 covers XML related clauses. However, there is no
illustration or discussion of the new XML data type. Some real world explanation
of how these features can be utilized would have been helpful.
Chapter 17 covers Reporting Services and introduces you to creating simple
reports. On the same lines Chapter 18 covers Integration Services and introduces
you with data import and export with external systems.
Most of the developers deal with SQL queries, stored procedures and functions
as a part of their job however knowing DBA side of SQL Server is helpful at
times. Chapter 19 gives you quick understanding of DBA tasks such as scheduling
jobs, backup and recovery.
Overall I would say it is a good book for beginners in SQL Server 2005. If
you are a beginner wanting to kick start programming using T-SQL then this book
can guide you nicely on your journey. The author is also working on the sequel
of this book titled "Professional SQL Server 2005 Programming" which you may
pick at some later date.