iT邦幫忙

0

SSIS 如何擷取錯誤訊息

  • 分享至 

  • xImage

假設我用三個「執行SQL工作」工具,有固定的執行順序,我希望當執行失敗時,可以取得錯誤的訊息,並且可以insert進我用來記錄的table。

ex. 其中一個「執行SQL工作」執行"select 1/0",會出現錯誤訊息:"發現除以零的錯誤。"
要如何取得「"發現除以零的錯誤。"」這一段訊息?

看更多先前的討論...收起先前的討論...
HenryC iT邦新手 5 級 ‧ 2023-07-06 15:51:51 檢舉
我希望是三個「執行SQL工作」工具,可以做一次工得到錯誤訊息,因為我目前的做法是在每一個「執行SQL工作」工具中使用try catch。
sam0407 iT邦大師 1 級 ‧ 2023-07-07 11:23:53 檢舉
catch到Exception就看Exception.Message呀,裡面什麼都有
HenryC iT邦新手 5 級 ‧ 2023-07-07 11:51:57 檢舉
我目前做法是在每一個「執行SQL工作」工具中使用try catch,這樣可以catch到錯誤訊息沒錯。

我現在的問題是如何在「執行SQL工作」工具,外部使用try catch或其他方式,可以一次得到多個「執行SQL工作」工具,可能產生的錯誤訊息。

ex.
我現在是用以下方式:
「執行SQL工作」工具1:begin try select 1 end try begin catch set @error = error_message() end catch
「執行SQL工作」工具2:begin try select 2/0 end try begin catch set @error = error_message() end catch
「執行SQL工作」工具3:begin try select 3 end try begin catch set @error = error_message() end catch
froce iT邦大師 1 級 ‧ 2023-07-07 14:51:57 檢舉
1. 你舉的例子應該可以寫出不會產生錯誤的SQL,如果有辦法的話建議朝這方向努力。
2. 你是要外部譬如從程式語言取得執行結果?這樣取得應該只會吐1個error出來。執行到2的時候就會吐error了,不會繼續執行下去。
HenryC iT邦新手 5 級 ‧ 2023-07-07 15:09:43 檢舉
有進展了,上方工具列 > SSIS > 紀錄 > 設定一些東西 > 完成
HenryC iT邦新手 5 級 ‧ 2023-07-07 15:15:56 檢舉
我實際上程式會比較複雜,我的目的是要在出錯時抓出錯誤訊息,將程式開始執行時間、結束時間、紀錄Log時間、錯誤訊息、等等...存成各個參數,給另一支程式去寄信之類的發出警示。
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友回答

立即登入回答