SQL Server 2000 の DTS パッケージをまとめて構造化ストレージ ファイル(.dts)として保存する
SQL Server 2000 の DTS(データ変換サービス)パッケージをまとめて構造化ストレージ ファイル(.dts)として保存するには、WSH(VBScript)を使って、次のように記述します。
Const DTSSQLStgFlag_UseTrustedConnection=256 Set cn = WScript.CreateObject("ADODB.Connection") cn.Open "Provider=SQLOLEDB;" _ & "Server=(local);" _ & "Integrated Security=SSPI;" Set rs = cn.Execute("msdb..sp_enum_dtspackages") Do Until rs.EOF pkgName = "c:\" & rs("name") & ".dts" pkgID = rs("id") Set obj = WScript.CreateObject("DTS.Package") obj.LoadFromSQLServer "(local)", "", "", _ DTSSQLStgFlag_UseTrustedConnection, _ "", pkgID obj.SaveToStorageFile pkgName Set obj = Nothing rs.MoveNext Loop Set rs = Nothing Set cn = Nothing
sp_enum_dtspackages ストアド プロシージャでパッケージの一覧を取得して、LoadFromSQLServer メソッドで DTS パッケージの取得、SaveToStorageFile メソッドで構造化ストレージ ファイル(.dts)として保存しています。
このスクリプトは、DTS パッケージを別のマシン(SQL Server 2000)へ移動したい場合や、SQL Server 2005 や SQL Server 2008 へアップグレードしたい場合に便利です。なお、SQL Server 2005/2008 へアップグレードするには、Integration Services の「DTS 2000 パッケージ実行タスク」を利用するか、「パッケージ移行ウィザード」を利用して Integration Services パッケージへ変換するようにします。