SMO の旧バージョンとの互換性

SQL Server 2005 または SQL Server 2008 で記述されている SMO アプリケーションは、SQL Server 2008 R2 の SMO を使って再コンパイルできます。

SMO アプリケーションの移行

SQL Server 2005 または SQL Server 2008 の SMO dll への参照は削除し、SQL Server 2008 R2 で提供される新しい SMO dll への参照を含める必要があります。

少なくとも、以下の参照を設定してください。

  • Microsoft.SqlServer.ConnectionInfo

  • Microsoft.SqlServer.Smo

  • Microsoft.SqlServer.Management.Sdk.Sfc

これらのファイルは、接続クラス、SMO ユーティリティ クラス、および基盤クラスのために必要です。

注意

SmoEnum.dll は削除されたため、この dll への参照は SMO SQL Server 2008 R2 プロジェクトから削除する必要があります。

名前空間も変更されたため、以下のものを使ってください。

Visual C# 用

using Microsoft.SqlServer.Management.Smo;
using Microsoft.SqlServer.Management.Common;

Visual Basic 用

Imports Microsoft.SqlServer.Management.Smo
Imports Microsoft.SqlServer.Management.Common

コードで Server.GetSqlSmoObject(Urn) のような Urn 機能が使われている場合は、Microsoft.SqlServer.Management.Sdk.Sfc 名前空間へのリンクを設定する必要があります。

コードで Transfer オブジェクトを直接使用している場合は、Microsoft.SqlServer.Management.SmoExtended 名前空間へのリンクが必要になります。

コードを移行するときに、コードの修正が必要になる場合があります。これは、SQL Server 2008 R2 ではいくつかの SQL Server 2005 機能および SQL Server 2008 機能が非推奨になっているためです。非推奨の機能の詳細については、SQL Server 2008 R2 オンライン ブックの「SQL Server 2008 R2 データベース エンジンの非推奨機能」を参照してください。