Testing has identified some issues connecting to versions of SQL Server 2008 from applications using the .NET Framework v2.0 SP1 or developers using Visual Studio 2005 or Visual Studio 2008. These connectivity issues should be considered before upgrading any end-user systems to Vista SP1 Beta or Windows Server 2008 RC0, upgrading a backend database to SQL Server 2008, or upgrading developer systems to use Visual Studio  2008 Beta 2 or RTM.

Design-Time Connectivity Between Visual Studio and SQL Server 2008

Developers using Visual Studio 2005 or any version of Visual Studio 2008 will be unable to connect to any instance of SQL Server 2008. This is most significant for Visual Basic and C# developers as it will effectively block the use of any RAD features to aid in the development of their project.

 

This connectivity issue is principally caused by an incompatibility between the SMO layer that ships in Visual Studio and the SMO support provided in SQL Server 2008. Future updates will replace the appropriate Visual Studio components and allow connectivity and RAD feature support to the SQL Server 2008 November CTP and later.

Runtime Connectivity to SQL Server 2008 Using System.Data.SqlClient

On systems that have installed the .NET Framework v2.0 SP1, applications that use System.Data.SqlClient to provide data access will be unable to connect to certain versions of SQL Server 2008 depending on the .NET Framework version installed on the client and the SQL Server 2008 version installed on the server. If either end of the connection is updated without consideration of the system as a whole, applications that were previously working would no longer be able to connect.

 

System.Data.dll, which contains the System.Data.SqlClient namespace, ships as part of the .NET Framework v2.0 SP1. This version of the .NET Framework ships with Visual Studio 2008, Vista SP1, and Windows Server 2008 and with each release of these products (beta, CTP, or release) there is a slightly different version of the .NET Framework. This is not unexpected with pre-release bits, as this is a normal part of the development cycle for each of these products. The released versions of these products will be interoperable and will allow for limited support of other pre-release components.

 

Below is a chart that identifies whether or not a connection can be established between managed data access applications using System.Data.SqlClient and particular versions of SQL Server 2008 (Katmai).

 

 

SQL Server 2008

June CTP

July CTP

Nov CTP

Any OS with

.NET Framework v2.0 SP1 RTM redistributable1

(System.Data.SqlClient, version 2.0. 50727.1433)

No

No

Yes

Any OS with

.NET Framework v2.0 SP1 Beta2 redistributable2 (System.Data.SqlClient, version 2.0. 50727.1378)

No

Yes

No

Vista SP1 Beta
(System.Data.SqlClient, version 2.0.50727.1427)

No

No

Yes

Windows Server 2008 RC0
(System.Data.SqlClient, version 2.0.50727.1427)

No

No

Yes

Any OS with

Visual Studio 2005 RTM

Or

.NET Framework v2.0 RTM3
(System.Data.SqlClient, version 2.0.50727.42)

Yes

Yes

Yes

Any OS with

Visual Studio 2005 SP13
(System.Data.SqlClient, version 2.0.50727.832)

Yes

Yes

Yes

 

1 the .NET Framework v2.0 SP1 RTM redistributable is installed as a pre-requisite for the RTM versions of Visual Studio 2008, .NET Framework v3.0 SP1, and .NET Framework v3.5
2 the .NET Framework v2.0 SP1 Beta 2 redistributable is installed as a pre-requisite for the Beta 2 versions of Visual Studio 2008, .NET Framework v3.0 SP1, and .NET Framework v3.5
3 connection utilizes SQL Server 2005 data type compatibility

 

How Does this Impact Feature Availability

The chart below identifies the SQL Server 2008 features that are supported between different combinations of the .NET Framework v2.0 SP1 releases and SQL Server 2008 (Katmai) releases.

 

 

SQL Server 2008

July CTP

Nov CTP

Future CTP/RTM

Any OS with

.NET Framework v2.0 SP1

RTM redistributable1

(System.Data.dll,

version 2.0.50727.1433)

No connectivity

Table-Valued Parameters3

New date/time data types3

Large UDT3

Filestream3

Table-Valued Parameters

New date/time data types

Large UDT

Filestream

Any OS with

.NET Framework v2.0 SP1

Beta 2 redistributable2

(System.Data.dll,

version 2.0.50727.1378)

Table-Valued Parameters3

New date/time data types3

No connectivity

No connectivity

Vista SP1 Beta
(System.Data.dll,

version 2.0.50727.1427)

No connectivity

Table-Valued Parameters3

New date/time data types3

Large UDT3

Filestream3

Table-Valued Parameters

New date/time data types

Large UDT

Filestream

Windows Server 2008 RC0
(System.Data.dll,

version 2.0.50727.1427)

No connectivity

Table-Valued Parameters3

New date/time data types3

Large UDT3

Filestream3

Table-Valued Parameters

New date/time data types

Large UDT

Filestream

1 the .NET Framework v2.0 SP1 RTM redistributable is installed as a pre-requisite for the RTM versions of Visual Studio 2008, .NET Framework v3.0 SP1, and .NET Framework v3.5
2 the .NET Framework v2.0 SP1 Beta 2 redistributable is installed as a pre-requisite for the Beta 2 versions of Visual Studio 2008, .NET Framework v3.0 SP1, and .NET Framework v3.5
3this feature not available in managed stored procedures

 

 

Note that Vista RTM ships with the RTM version of .NET Framework v2.0 and, as such, does not contain support for any of the new SQL Server 2008 (Katmai) features that were introduced in .NET Framework v2.0 SP1.

Jason Smith
Development Lead, Data Programmability