When Microsoft introduced SQL Server 2005, it was the first major update in almost five years to its SQL Server line. It became their next generation data management and analysis solution. For the developer, it also came with a huge amount of changes that increased security, scalability, and power.
The goal of Programming SQL Server 2005 is to provide you the resource that you need to learn the ins and outs of programming SQL Server 2005. Its premise is that you do not need to know programming in SQL 2000 — which is so radically different than the new version — in fact, just a basic understanding of SQL is required.
Programming SQL Server 2005 is contained in 21 chapters and an appendix. In order to save some time and space, I will be combining some of the chapters that contain similar topics and provide an overview. The code provided is C# and is compiled using Microsoft Visual Studio 2005.
Chapters 1, 2, and 3, provide an introduction to the book and what the chapters contain. It provides an introduction to both the new, as well as enhanced tools that come with SQL Server 2005. It also covers the topic of what the T-SQL enhancements are. This includes the data types, changes to the T-SQL programming language, new DDL triggers and catalog views.
Chapters 4,5 and 6 covers the CLR, Common Language Runtime, by introducing you to how SQL Server now hosts the .NET Framework CLR in the database engine, and what that means to you. It also provides you with the information needed to program the different types of CLR routines as well as introducing you to the client side of .NET programming.
Chapters 7 and 8, explain both XML Data and how SQL Server 2005 handles native support for XML data storage and processing, and how it also supports native XML web services so that you can send SOAP messages directly to SQL Server 2005. You will also learn how to create and manage HTTP endpoints as well as handling performance.
Chapters 9, 10, 11 and 12 introduce Server Management Objects (SMO), which are a collection of namespaces used for programmatically managing all aspects of SQL Server 2005. You will learn about SMO instance classes to access data such as triggers, tables and indexes, and utility classes to perform tasks that are independent of a SQL instance.
Chapter 13 describes the classes that you use to access Windows Management Instrumentation (WMI) and shows you how to program these classes. WMI can be used to manage SQL services, network, and alias settings
Chapter 14 introduces you to SQL Server Reporting Services (SSRS) which is a reporting service that runs on top of IIS. From this you can build reports from any source. It then can be accessed from a parameterized URL, or through the report viewer control via Windows or Web forms.
Chapter 15 describes SQL Server Integration Services (SSIS) which is a platform for building data-integration and workflow solutions from which you can merge data from different sources as well as perform administrative tasks such as backing up and copying data.
Chapter 16, 17, 18 and 19 will show you how to work with SQL Server Agent to automate administrative tasks such as running jobs and monitoring SQL Server. You will learn about Service Broker and how you can use the technology to build scalable, loosely coupled database applications. By using Notification Services you can learn how to generate and send messages to subscribers on a variety of devices. And by using replication, you will see how to copy and distribute data and database objects between databases.
Chapter 20 will expose you to SQL Server Analysis Services (SSAS) to provide online Analytical Processing (OLAP) and data-mining functionality. You will learn how to programmatically query data and metadata.
Chapter 21 gives an overview of working with SQL Server Mobile Edition to run database applications on mobile devices. It will show how to create and manage databases and objects as well as programmatically synchronizing data.
The appendix is all about ADO.NET 2.0 and the collection of classes that let .NET applications access data stored in a wide variety of data sources. ADO.NET 2.0 is a new update and this appendix describes the new functionality.
Programming SQL Server 2005 is not a reference book, nor does it cover any administration of SQL Server nor does it cover conversion from SQL 2000 to 2005. Also, it does not cover the differences between 2000 and 2005 in any great detail.
What it does do well, very well in fact, is to introduce all of the things new to 2005. Obviously, to go into detail of all the topics here would require five volumes. I think that this book is a perfect volume for the person who has worked with and is comfortable with SQL Server 2000 and now wants to learn 2005. While it will be good for those with SQL knowledge and no experience with any Microsoft SQL Sever platform, they may want to also get Learning SQL on SQL Server 2005 also by O'Reilly to fill in some of the gaps.