日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

一次SSIS Package的调试经历

發布時間:2025/3/15 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 一次SSIS Package的调试经历 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

SSIS Package的調試有時是一個非常艱難的過程,由于SSIS 編譯器給出的錯誤信息,可能并不完善,需要程序員根據錯誤信息抽絲撥繭,尋找錯誤的根源,進而解決問題。

第一部分:SSIS提供的調試工具

1,SSIS Package的 Control Flow 通過醒目的圖標顯示task的執行情況

在執行package的時候,如果一個Task上顯示綠色的勾,表示task執行正常,如果顯示的是紅色的X,表示task執行異常。

通常SSIS Package調試的第一步就是尋找出錯的Task,然后進入該task的data flow中查看報錯的component。

?

在Task上顯示錯誤信息,進入該task,發現Excel Source沒有指定connection manager。

?

2,在package執行時,會出現一個progress顯示執行的進度

如果錯誤,會在Progress中顯示錯誤的信息

3,Data Viewer 查看從上游組件傳遞的數據

通過 點擊藍色的數據流線,Enable Data Viewer來查看數據。

4,設置breakpoint

選中Task,點擊右鍵,選中Edit Breakpoint來設置斷點,進行調試

5,package 事件,可以在事件中寫入特殊的代碼,當錯誤出現時,發送runtime的錯誤信息或將錯誤信息寫入文檔,方便程序員捕捉錯誤信息,提高debug的效率。

6,以上5種都是非常方便的調試工具,當然SSIS提供的輔助調試工具也有很多,各有用途,如果使用得當,將會使debug更有效率。

?

第二部分:示例

在使用scripte componet的一個package,出現一個錯誤信息 “object reference not set to an instance of an object”

說明在?scripte componet的C#代碼中,并沒有將對象設置為一個有效的實例。

  DataTable dt;  

public override void PreExecute(){base.PreExecute();IDTSConnectionManager100 cnManager = Connections.Connection;SqlConnection cnn = (SqlConnection)cnManager.AcquireConnection(null);SqlCommand cmd = cnn.CreateCommand();cmd.CommandText = "select code,name from [dbo].[tbExcel]";cmd.CommandType = CommandType.Text;cmd.CommandTimeout = 60000;dt = new DataTable("dt");SqlDataAdapter sda = new SqlDataAdapter(cmd);sda.Fill(dt);}

從PreExecute函數中,可以看出,最有可能的錯誤原因是 cnManager 并沒有獲取到Package的Connection Manager

IDTSConnectionManager100 cnManager = Connections.Connection;

查看Script component的connection managers選項卡,已經設置了connection manager,那么錯誤的原因可能就是Name=Connection的Connection Manager的鏈接字符串有錯誤,導致無法連接到DB。

經驗證,最終的結果跟推測一樣,Connection Manager的鏈接字符串有錯誤,無法連接到DB,導致Script component執行失敗。?

轉載于:https://www.cnblogs.com/zhengxingpeng/p/6688035.html

總結

以上是生活随笔為你收集整理的一次SSIS Package的调试经历的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。