Review: Murach's SQL Server 2005 for Developers
- Title: Murach's SQL Server 2005 for Developers
- Authors: Brian Syverson, Joel Murach
- Level: Beginner
- Publisher: Murach
- Pages: 702
- Rating: 3.5 of 5
Microsoft's SQL Server 2005 is the one of the most feature rich and popular database around. It makes a perfect sense for any developer to master this wonderful software. If you are comfortable with previous versions of SQL Server then you are probably aware of SQL, T-SQL, stored procedures, functions and triggers. However, if you are relatively new to SQL Server then Murach's SQL Server 2005 for Developers can be your great companion. Just like any other Murach books it is filled with friendly screen shots, tables and diagrams.
The book consists of twenty one chapters spread over five sections. The first section introduces you with basics of RDBMS and SQL. Chapter 1 covers brief theory of RDBMS, SQL, T-SQL and ADO.NET. Chapter 2 is dedicated to SQL Server management studio, the new user interface of SQL Server that replaces Enterprise Manager and Query Analyzer. Beginners will find themselves up and running with management studio with the help of handy How tos presented by this chapter.
Section 2 consists of chapters teaching you the essential SQL skills. Chapter 3, 4 , 5 and 6 covers various facets of SELECT statement. These four chapters cover things such as basic SELECT statement, JOINs, UNIONs, GROUP BY and subqueries. It also discusses ROLLUP and CUBE operators in brief. Finally chapter 7 deals with action queries - INSERT, UPDATE and DELETE. Chapter 8 provides nice summary of data types and type conversion (something that is often needed by developers).
Section 3 covers database design and implementation. Chapter 9 from this section deals with database designing in terms of normalization, primary keys and foreign keys. I would have expected this chapter to appear bit early in the book. Chapter 10 talks about creating database and indexes. I feel that there should have been some DOs and DON'Ts about indexes and they can affect performance. Finally, chapter 11 teaches you to use management studio for database manipulation tasks.
Section 4 deals with some advanced skills such as views, T-SQL programming. This is the best section from the book and consists of 7 chapters. Chapter 12 introduces you to views. Again some DOs and DONT's would have been a nice addition. Chapter 13 and 14 together cover T-SQL programming in terms of stored procedures, functions and triggers. Chapter 15 covers cursors, another frequently used technique by database developers. Many business applications need transaction management and data locking. These are the topics of chapter 16. Security is absolutely essential for today's application and chapter 17 familiarizes you with security features of SQL Server such as permissions, logins and roles. Introduction of XML data type is one of the important feature of SQL Server 2005. Using XML data type you can store XML documents directly in SQL Server 2005. You can also manipulate and validate them using the new features. All these features are introduced in chapter 18.
SQL Server 2005 allows you to write stored procedures and functions in C# or VB.NET. This feature popularly known as CLR integration is the theme of section 5. The three chapters from this section teach you how to write stored procedures, functions and triggers using C#. In my opinion VB.NET code equivalent should have included (or at least provided as a separate code download) so that VB.NET developers can be equally benefited.
Overall the book imparts a very good knowledge for beginners who wish to quickly grasp SQL Server 2005 programming techniques.