如何在儲存過程中執行DTS包

2021-06-16 01:00:52 字數 1554 閱讀 3700

資料轉換服務(

dts)在管理和開發的多種領域都有會涉及

dts:            資料倉儲-將資料從原始的處理系統和**中提取出來以供報表使用    建立olap    將大量資料從文字檔案或其它非資料庫格式的檔案中拷貝到資料庫    生成microsoftoffice文件報表    使用distributedtransactioncoordinator(dtc)實現多資料庫操作    在客戶的桌面程式或上,經常需要允許使用者按需執行

dts包。在這種情況下,在部署

dts包時,你應該決定將

dts包安置在何處,以及通過何種手段呼叫它。        你的選擇    要建立乙個按需執行的

dts包,可以有多種選擇。下面就對這些選擇進行逐一說明。        sqlserverjob    你可以在sqlserver裡建立乙個job,並呼叫sp_start_job儲存過程。使用sp_start_job的不足之處在於它是乙個非同步過程。由於它不能返回成功或失敗指示,你必須強制使用sp_help_job系統儲存過程查詢job的結果。除非不關心job呼叫後的結果,否則非同步的job將使桌面程式或web程式變得很複雜。乙個job可以被設定成非管理員(sa)模式,但需要一些額外的步驟。        在客戶端桌面使用

dtsdlls    第二種方法是使用者電腦載入enterprisemanager或

dtsdlls,在使用者的電腦上呼叫

dts包。雖然使用者電腦執行

dts包有一定可行性,但也有不足:必須考慮到公升級

dts包帶來的分發和安裝問題。        在伺服器上使用sp_oa擴充套件儲存過程    第三種選擇,也就是本文所介紹的核心內容,就是使用sp_oa系統儲存過程族並有計畫的呼叫

dts包。這種方案可以有效的避免上兩種方案的弊端。        使用vbscript呼叫

dts包    實現乙個可以執行

dts包的儲存過程的第一步是,編寫一段vbscript**。因為sp_oa儲存過程使用起來有些麻煩,因此在利用sp_oa儲存過程實現目標之前,要用vbscript編寫你希望實現的**。一般傾向於使用進行簡單的指令碼開發工作。如圖a所示,通過在專案引用視窗中加入

dts包物件庫,就可以在指令碼中引用

dts包物件了。                圖a:

dts物件庫    在**中使用了loadfromstoragefile函式。一般說,開發工作應該在乙個測試環境進行。了解

dts格式的結構化,對將測試產品變為實際產品時很有幫助。        sp_oa實現    寫好了vbscript**,就可用sp_oa擴充套件儲存過程實現**。和vbscript類似,sp_oa系統儲存過程允許與物件庫的com+api進行互動。        sp_oacreate和在vb或vbscript中呼叫的createobject函式類似。sp_oagetproperty、sp_oasetproperty以及sp_oamethod用來連線物件庫中的特性和函式。和vb或vbscript不同的是,sp_oa儲存過程導致的com+錯誤不會令sql語句失敗,因此必須手動檢查每個使用sp_oa的函式是否工作正常。        同時,很多sp_oa儲存過程都會引用引數,因此必須在sp_oa儲存過程中的適當引數後共2頁  第1頁 

如何在QTP執行過程中遮蔽滑鼠

在執行qtp指令碼的過程中,有些操作可能是對滑鼠 鍵盤敏感的,需要在qtp執行過程中遮蔽滑鼠或鍵盤輸入。這是可用systemutil物件的blockinput方法,如下 所示 systemutil.blockinput browser welcome mercury tours page welco...

如何在系統執行過程中修改核心引數

linux向管理員提供了非常好的方法,使我們可以在系統執行時更改核心引數,而不需要重新引導系統。這是通過 proc虛擬檔案系統實現的。proc sys目 錄下存放著大多數的核心引數,並且設計成可以在系統執行的同時進行更改。下面我們以開啟核心的 ip 功能為例說明在系統執行時修改核心引數的兩種方法。i...

如何在儲存過程中實現插入更新資料

儲存過程的功能非常強大,在某種程度上甚至可以替代業務邏輯層,接下來就乙個小例子來說明,用儲存過程插入或更新語句。1 資料庫表結構 所用資料庫為sql server2008。2 建立儲存過程 1 實現功能 有相同的資料,直接返回 返回值 0 有主鍵相同,但是資料不同的資料,進行更新處理 返回值 2 沒...