0
我在SQL &文件系統(.dts文件)中都有dts pacakege。我想要查詢這兩個軟件包以獲取包裹名稱,任務信息(任務名稱等)的信息。如何查詢SQL dts包
這樣做的正確方法是什麼?
我試着執行給出dts包列表的命令。但是我不知道如何檢索其餘的信息。 EXEC msdb..sp_enum_dtspackages
阿圖爾
我在SQL &文件系統(.dts文件)中都有dts pacakege。我想要查詢這兩個軟件包以獲取包裹名稱,任務信息(任務名稱等)的信息。如何查詢SQL dts包
這樣做的正確方法是什麼?
我試着執行給出dts包列表的命令。但是我不知道如何檢索其餘的信息。 EXEC msdb..sp_enum_dtspackages
阿圖爾
前一陣子我有同樣的問題,發現我的回答。請看看我的腳本,看看它是否有用。
dim strInputFile, strOutputFile
for each arg in WScript.Arguments
select case mid(arg, 1, 3)
case "/i:"
strInputFile = mid(arg, 4)
case "/o:"
strOutputFile = mid(arg, 4)
end select
next
dim oPackage
set oPackage = CreateObject("DTS.Package2")
oPackage.LoadFromStorageFile strInputFile, "", "", "", ""
dim FileSys, OutputFile
set FileSys = CreateObject("Scripting.FileSystemObject")
set OutputFile = FileSys.OpenTextFile (strOutputFile, 2, 1)
dim oTasks, oProperties
set oTasks = oPackage.Tasks
for each oTask in oTasks
OutputFile.write (vbCrLf)
OutputFile.write (string(12 + len(oTask.Description), "-"))
OutputFile.write (vbCrLf)
OutputFile.write ("-- Task: " & oTask.Description & " --")
OutputFile.write (vbCrLf)
OutputFile.write (string(12 + len(oTask.Description), "-"))
OutputFile.write (vbCrLf)
set oProperties = oTask.Properties
for each oProperty in oProperties
OutputFile.write (oProperty.Name & " = [" & trim(oProperty.Value) & "]")
OutputFile.write (vbCrLf)
next
next
OutputFile.close
set OutputFile = Nothing
set oTasks = Nothing
set oProperties = Nothing
set oPackage = Nothing
set FileSys = Nothing
關鍵是要知道從文件系統或SQL Server加載DTS包的方法。
例如
...
dim oPackage
set oPackage = CreateObject("DTS.Package2")
oPackage.LoadFromStorageFile strInputFile, "", "", "", ""
...
更多細節可以在MSDN上找到:
http://msdn.microsoft.com/en-us/library/aa197290%28v=sql.80%29.aspx(LoadFromSQLServer方法)
http://msdn.microsoft.com/en-us/library/aa197287%28v=sql.80%29.aspx(LoadFromStorageFile方法)
使用'msdb..sysdtspackages' – praveen 2013-04-04 06:12:04
感謝烏爾響應,我執行了以下查詢,但只有第一個查詢返回數據,其餘查詢中沒有返回行。 SELECT * FROM msdb..sysdtspackages - 這回的數據 SELECT * FROM msdb..sysdtscategories SELECT * FROM msdb..sysdtspackagelog SELECT * FROM msdb..sysdtstasklog SELECT * FROM msdb..sysdtssteplog 此外如何獲得信息關於獨立的dts文件。 – 2013-04-04 06:24:24
我得到這個鏈接查詢獨立軟件包,但我無法註冊「Microsoft DTSPackage對象庫」,我試圖註冊它給出這個錯誤消息「該模塊」dtspkg.dll「被加載但調用DllRegisterServer失敗錯誤代碼0x8002801c「msdn鏈接http://support.microsoft.com/kb/241249 – 2013-04-04 06:32:18