程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> 在SQL Server中使用命令調用SSIS包

在SQL Server中使用命令調用SSIS包

編輯:關於SqlServer

       在SQL Server中可以使用dtexec命令運行SSIS包(2005以上版本),當然也可以通過系統過程:xp_cmdshell調用dtexec運行SSIS包。

      具體操作步驟如下:

      1.首先,當然是要在Business Intelligence中設計好包,並調試通過。

      2.然後,有兩種方式可以在SQL Server中使用命令運行SSIS包

      第一種是直接執行ssis包文件,命令如: exec xp_cmdshell 'dtexec /f "c:test.dtsx"'

      第二種是將包文件發布或者導入到Integration Services服務中,然後再執行。

      發布包是在Business Intelligence中生成發布文件,並發布到Integration Services服務中。生成發布文件後,雙擊發布文件,選擇[部署到SQL Server],然後輸入服務器名稱,用戶名,密碼,並選擇包路徑為"/",並選擇[依靠服務器存儲進行加密],點擊[下一步],選擇要安裝到的位置即可。

      導入包是在Managemenet Studio,選擇接Integration Services服務,選擇"已存儲的包"-"MSDB",右鍵導入包,選擇文件系統,指定要導入的包,保護級別要選擇[依靠服務器存儲和角色進行訪問控制].

      發布包和導入包的作用和目的是一致的,都為為了將包放入到Integration Services服務中。

      包發布或者導入後,就可以使用如下命令進行調用了:

      exec xp_cmdshell 'dtexec /DTS "MSDBtest" /SERVER "servername" /MAXCONCURRENT " -1 " /CHECKPOINTING OFF /REPORTING V '

      注意點:

      1.以上操作中用到的系統過程xp_cmdshell默認是禁用的,要想使用,必須先開啟

      2.發布包或者導入包時,必須選擇正確的保護級別,發布包時選擇[依靠服務器存儲進行加密],導入包時選擇[依靠服務器存儲和角色進行訪問控制],否則會出現錯誤:[ 說明: 無法解密受保護的 XML 節點"DTS:Password",錯誤為 0x8009000B"該項不適於在指定狀態下使用。".可能您無權訪問此信息。當發生加密錯誤時會出現此錯誤。請確保提供正確的密鑰。]

    1. 上一頁:
    2. 下一頁:
    Copyright © 程式師世界 All Rights Reserved