Book Review: Programming SQL Server 2005 by Bill Hamilton
Published May 19, 2006
The major databases have all become more ecosystems than mere data storage mechanisms. Oracle's vertical push is comparable to IBM's Websphere-centric world, while Microsoft has steadily built a respectable technical infrastructure for complex, web-based data-intensive applications.
Microsoft SQL Server 2005 is a powerful, feature-rich platform for these applications, having seen rapid adoption since its release last year. Despite this adoption rate, users have held off thus far from comprehensive migration projects, partly due to extensive investments in their current systems (if it ain't broke, don't upgrade it), and partly because of documentation & developer readiness.
The feature complexity and strong performance are spurring upgrades. In this environment, developers need a comprehensive guide to the tools and enhancements available on the new platform. The ever-reliable folks at O'Reilly have a book that provides a well-detailed guide map through the SQL Server 2005 landscape, Programming SQL Server 2005.
The book commences with a look at the utilities available, such as the new Management Studio, which provides a comprehensive interface to manage the different server objects, and the Configuration Manager, which manages the services. In addition, it references the Visual Studio .NET IDE, which provides wizards to work with the new programmatic interface for SQL Server, the embedded Common Library Runtime, or in more familiar terms, .NET integration.
Once the framework is established, subsequent chapters replete with working examples and tips explore enhancements in T-SQL, the CLR Integration, and the intrinsic XML data type, among others. SQL Server 2005 now provides native XML Web Services, making it very easy to consume RDBMS-based data through a web service in other applications.
This helps minimize the redundant code that developers inevitably end up writing in project after project. It also provides an easy mechanism for heterogeneous clients to access SQL Server data - basically a client need only support HTTP and XML to access SQL Server native XML web services, a point driven home quite clearly by the book.
A critical section in the book explores the wide variety of SQL Server Management Objects that provide a collection of namespaces to program all aspects of SQL Server 2005 management. Programmatic access to server management opens up the system to manifold third-party applications, as well as illustrating further the deep developer commitment Microsoft has made over this current generation of developer tools and applications.
There is even a set of utility classes like Scripter that enable the generation of T-SQL scripts for backup, environment setup, etc. Thus, for example, the following code snippet allows you to check database tables for integrity using SMO
Server server = new Server ("servername");
DatabaseCollection dbs = server.Databases;
foreach(Database db in dbs)
{
StringCollection sc = db.CheckTables(RepairType.None);
foreach (object o in sc)
Console.WriteLine("{0}",o);
}
The next section explores the SQL Server 2005 Reporting Services and Integration Services, although the descriptions are mostly limited to the available sample reports and examples. This is probably the weakest section of the book as a result.
The Service Broker is also explored. This provides a message-based communications platform enabling loosely coupled applications - the wave of the future. The section, as it were, wraps up with detailed coverage of Notification Services and changes in Replication.
A couple of tag-along chapters cover Analysis Services and the SQL Server Mobile Edition, though not in very convincing detail, each requiring it's own book to truly do justice to these facets of the ecosystem.
The book is a good guide to keep by the side of any active SQL Server 2005 developer, as well as a satisfactory appetizer for the curious technophile, Oracle developer, or insomniac.
- Book Review: Programming SQL Server 2005 by Bill Hamilton
- Published: May 19, 2006
- Type: Review
- Section: Books
- Filed Under: Books: Computers and Internet, Sci/Tech: Programming, Sci/Tech: Software
- Writer: Aaman Lamba
- Aaman Lamba's BC Writer page
- Aaman Lamba's personal site
- Spread the Word
- Like this article?
- Email this
Save to del.icio.us








