The Microsoft Servers Web site (http://www.microsoft.net/servers) lists SQL Server 2000 as one of the company's new .NET Enterprise Servers. How can this be, considering that Microsoft developed and released this latest version of SQL Server before it launched its recent .NET campaign in September 2000? With software turnover approaching lightning speed, you might think that Microsoft rewrote history a bit or sneaked in a SQL Server point release when you weren't looking. Actually, Microsoft did add support for XML Updategrams and XML Bulk Load in January 2001 with its XML for SQL Server 2000 Web Release 1 (WR1), which you can download along with the even more recent Web Release 2 (WR2) beta 1 from http://www.microsoft.com/sql/downloads/default.asp. But XML for SQL Server 2000 WR1's enhanced XML integration features didn't boost SQL Server into .NET land.
So, is SQL Server 2000's inclusion as a .NET Server more "marketecture" than architecture? Yes—and no. Although Microsoft announced the .NET Framework in September 2000, the company started working on XML 5 years ago. Microsoft announced the first public beta of Visual Studio.NET and the .NET Framework at the Microsoft Professional Developers Conference in July 2000. At this conference, Microsoft began to articulate its vision of the .NET Framework—a software technology to build, deploy, integrate, and consume XML-based Web Services. Web Services extend the component programming model across the Web, with components interacting through the XML-based Simple Object Access Protocol (SOAP).
Although .NET came to light after the release of SQL Server 2000, Microsoft was working on .NET while SQL Server 2000 was in beta. The SQL Server development team kept its focus on fulfilling a SQL Server design specification already in place. Still, SQL Server developers were able to implement parts of the fledgling .NET components into the final release of SQL Server 2000.
So is SQL Server 2000, with its partial support for some .NET components, a true .NET Server? As I see it, three main attributes define a .NET Server. First, a .NET Server requires deep Web and XML integration. Second, a .NET Server supports Web Services access through SOAP. And third, a .NET Server provides integration with the .NET Framework and the Common Language Runtime (CLR).
SQL Server 2000 clearly meets the first requirement of a .NET Server, providing Web and XML integration even apart from XML for SQL Server 2000 WR1. However, SQL Server 2000 doesn't natively support Web Services through SOAP nor does it have any CLR integration except that .NET applications can access SQL Server as a client application. If you examine SQL Server 2000 as it stands today, the database system provides just enough .NET Server attributes to let marketing call it a .NET Server. But just wait. Microsoft plans to include all these attributes in the next release of SQL Server, code-named Yukon, currently under development.