Certain types of database applications development were not possible before SQL Server 2005 — for example, messages-based applications for a service-oriented type of architecture, or creating user-defined types in the database. Starting with SQL Server 2005 and continuing with SQL Server 2008, many programming features have been added, including Service Broker, CLR, and many enhancements in T-SQL. One of the most remarkable new technologies is Service Broker, which makes it possible to build database-intensive distributed applications. Service Broker implements a set of distributed communication patterns to add messaging capabilities to SQL Server applications. The other remarkable feature is the integration of the Common Language Runtime (CLR) component of the .NET Framework for Microsoft Windows with the SQL Server database engine. This integration enables developers to write procedures, triggers, and functions in any of the CLR languages, particularly Microsoft Visual C# .NET, Microsoft Visual Basic .NET, and Microsoft Visual C++. It also enables developers to extend the database with new types and aggregates.
In this chapter, we first explain how these new features work, and then show you how to administer them. We begin with Service Broker, and then move on to CLR integration.