婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁(yè) > 知識(shí)庫(kù) > 基于SSIS 事件的向上傳遞(詳解)

基于SSIS 事件的向上傳遞(詳解)

熱門標(biāo)簽:優(yōu)質(zhì)地圖標(biāo)注 奧威地圖標(biāo)注多個(gè)地方 武漢長(zhǎng)沙外呼系統(tǒng)方法和技巧 千呼電銷機(jī)器人價(jià)格 智能語(yǔ)音外呼系統(tǒng)選哪家 京華物流公司地圖標(biāo)注 怎樣在地圖上標(biāo)注路線圖標(biāo) 百度地圖標(biāo)注不同路線 外呼系統(tǒng)電銷專用

在SSIS中,Package是Task組件的有序組合,具有層次結(jié)構(gòu),Package處于層次結(jié)構(gòu)的頂層(Root Level),對(duì)于父子包結(jié)構(gòu),父包(Parent Package)通過(guò)Execute Package Task組件調(diào)用其他Package,被調(diào)用的Package是子包,父包是子包的上層級(jí)別,最頂層的Package,處于層次結(jié)構(gòu)的頂層,叫做根包(Root Package);容器(Container)組件包含其他Task組件,容器是被包含的Task組件的父級(jí)別(Parent Level);Task組件是層次結(jié)構(gòu)的最底層,處于葉級(jí)別(Leaf Level)。事件就是沿著Package的層次結(jié)構(gòu)向上傳遞的。

在Package中,每一個(gè)Task組件都是一個(gè)可執(zhí)行程序(Executable),所有的數(shù)據(jù)處理任務(wù)都是由Task組件完成的。在Package運(yùn)行(runtime)時(shí),SSIS引擎為了監(jiān)控和追蹤Task組件的運(yùn)行狀態(tài),預(yù)先創(chuàng)建了12個(gè)系統(tǒng)事件(Event),這些事件都是在Package運(yùn)行時(shí)(runtime)被可執(zhí)行程序(Executable)觸發(fā)的,每個(gè)事件都會(huì)產(chǎn)生相應(yīng)的消息,用于描述Executable的運(yùn)行狀態(tài),供開(kāi)發(fā)工程師對(duì)Package進(jìn)行調(diào)試和性能調(diào)優(yōu)。一旦有事件被觸發(fā),SSIS會(huì)執(zhí)行相應(yīng)的事件處理程序(Event Handler),SSIS為每個(gè)事件都創(chuàng)建了默認(rèn)的事件處理程序,命名規(guī)范是:On+EventName,用戶可以創(chuàng)建自定義的事件處理程序,以擴(kuò)展Package的功能,使Package在運(yùn)行時(shí)更容易管理,以完成數(shù)據(jù)處理任務(wù)。在ETL開(kāi)發(fā)中,最常用的事件是錯(cuò)誤(Error)事件,該事件在Executable運(yùn)行出現(xiàn)錯(cuò)誤時(shí)觸發(fā),對(duì)應(yīng)的事件處理程序是OnError。

在Package的層次結(jié)構(gòu)中,事件處理具有向上傳遞(Propagate)的特性。發(fā)生在Task組件的事件,首先會(huì)被該Task組件的Event Handler捕獲和處理;如果該Task組件沒(méi)有創(chuàng)建Event Handler,那么SSIS把該Event向上傳遞到其父級(jí)別的Executable,由其父級(jí)別的Event Handler來(lái)處理;如果該Executable有Event Handler,那么由該Event Handler負(fù)責(zé)響應(yīng)和處理該事件。事件會(huì)依次向上傳遞,直到事件被處理,或者傳遞到頂層被默認(rèn)處理,事件向上傳遞的頂層是根包(Root Package)。

引用MSDN官方文檔的例子,Package的層次結(jié)構(gòu)如下圖所示:

在層次結(jié)構(gòu)中,如果相應(yīng)的Task組件沒(méi)有定義事件處理程序,那么事件向上傳遞的過(guò)程如下圖所示:

注:事件向上傳遞的條件是沒(méi)有創(chuàng)建自定義的事件處理程序,默認(rèn)情況下,該圖示有誤,事件被Event Handler處理之后,將繼續(xù)向上傳遞,我會(huì)在下文詳細(xì)解釋。

MSDN對(duì)圖示做了說(shuō)明:

If an event has no event handler, the event is raised to the next container up the container hierarchy in a package. If this container has an event handler, the event handler runs in response to the event. If not, the event is raised to the next container up the container hierarchy. Only the package has an event handler, for its OnError event. If an error occurs when the Execute SQL task runs, the OnError event handler for the package runs. 

把事件依次向上傳遞的特性,是由事件處理程序(Event Handler)的系統(tǒng)變量 Propagate 控制的,變量Propagate的默認(rèn)值是True,這意味著,默認(rèn)情況下,該事件將會(huì)被傳遞到上層級(jí)別的Event Handler中進(jìn)行處理。有一個(gè)例外是在父子包結(jié)構(gòu)中,子Package在進(jìn)行包驗(yàn)證(Validation)時(shí),不管子包的Propagate變量的值如何設(shè)置,都會(huì)把驗(yàn)證事件傳遞到父包中,父包繼續(xù)執(zhí)行驗(yàn)證。

當(dāng)前Task組件必須創(chuàng)建事件處理程序,才能查看和修改變量Propagate的值。如果把事件處理程序(Event Handler)的Propagate變量設(shè)置為False,那么該事件只會(huì)被當(dāng)前的事件處理程序處理和響應(yīng),不會(huì)被傳遞到上層級(jí)別的事件處理程序中。但是,如果沒(méi)有為“肇事”的Task組件創(chuàng)建事件處理程序(Event Handler),那么事件總是向上傳遞,直到被事件處理程序響應(yīng),如果Package的層次結(jié)構(gòu)沒(méi)有定義任何事件處理程序,那么事件最終被根包(Root Package)默認(rèn)處理。

一,錯(cuò)誤事件處理程序(OnError)向上傳遞

默認(rèn)情況下,當(dāng)前Task組件的事件處理程序中把錯(cuò)誤(Error)事件處理之后,SSIS引擎仍然把錯(cuò)誤事件向上層事件處理程序傳遞,直到包層次結(jié)構(gòu)的最頂層,如下圖,在ChildPackage的Package級(jí)別和Executable級(jí)別上分別創(chuàng)建了OnError事件處理程序,Executable級(jí)別是child Execute SQL Task:

執(zhí)行Package,在child Execute SQL Task中觸發(fā)錯(cuò)誤事件,被該Task的事件處理程序捕獲和處理,下圖是Executable級(jí)別的OnError事件處理程序,其成功執(zhí)行一個(gè)Task:

但是,錯(cuò)誤事件沒(méi)有停止,而是繼續(xù)向上傳遞,被其直接上級(jí),也就是Package級(jí)別的OnError事件處理程序捕獲,如下圖,來(lái)自子Task組件的錯(cuò)誤事件被父級(jí)處理之后,Package仍然報(bào)錯(cuò),錯(cuò)誤消息是:Package execution completed with error.

錯(cuò)誤事件處理程序把錯(cuò)誤事件(Error)向上傳遞(Propagate)的過(guò)程類似“冒泡”,從觸發(fā)錯(cuò)誤事件的“肇事”Task組件開(kāi)始,逐級(jí)向上傳遞到最頂層的可執(zhí)行程序(Executable),最頂層的Executable是 Package 本身。這意味著,如果在Package 級(jí)別定義了一個(gè)錯(cuò)誤事件處理程序(OnError),每當(dāng)Package中的任意一個(gè)Task組件觸發(fā)錯(cuò)誤事件(Error),最終都會(huì)觸發(fā)Package級(jí)別的錯(cuò)誤事件處理程序。在父子包結(jié)構(gòu)中,如果父Package通過(guò)Execute Package Task調(diào)用子Package,那么,錯(cuò)誤事件會(huì)發(fā)生相同的過(guò)程,子Package的錯(cuò)誤事件會(huì)向上傳遞(Propagate)到父Package中。

二,禁用錯(cuò)誤事件的向上傳遞

如果想要禁用事件的向上傳遞過(guò)程,可以在Task組件的事件處理程序中,把系統(tǒng)變量Propagate設(shè)置為False,這樣,事件將不再向上傳遞,只觸發(fā)當(dāng)前Task組件的事件處理程序,只有在Task組件中創(chuàng)建事件處理程序之后,才能修改系統(tǒng)變量Propagate的默認(rèn)值。

1,修改系統(tǒng)變量Propagate的默認(rèn)值

step1,呈現(xiàn)系統(tǒng)變量

打開(kāi)Event Handlers Tab,在Variables 窗體中,點(diǎn)擊網(wǎng)格選項(xiàng)(Grid Options)按鈕,打開(kāi)Variable Grid Options 窗體,在Filter選項(xiàng)中勾選"Show system variables",點(diǎn)擊“OK”,返回到Variables窗體:

step2,設(shè)置Propagate的值

在 Variables 窗體中,找到 Propagate 系統(tǒng)變量(Scope是OnError),把Value設(shè)置為False

2,禁用事件處理的向上傳遞

禁用Task組件的事件處理的向上傳遞(Propagate)特性之后,在當(dāng)前Task組件中觸發(fā)的事件,只會(huì)被當(dāng)前Task組件的事件處理程序捕獲和處理,而不傳遞到上層Task組件的事件處理程序。

再次執(zhí)行Package,由于錯(cuò)誤事件是被child Execute SQL Task觸發(fā)的,其事件處理程序自動(dòng)捕獲并處理該Error事件:

而Package級(jí)別的事件處理程序沒(méi)有捕獲到Error事件,Package沒(méi)有執(zhí)行OnError事件處理程序,最終的執(zhí)行結(jié)果是:Package execution completed with success。

三,沒(méi)有創(chuàng)建事件處理程序

如果沒(méi)有為Task組件創(chuàng)建事件處理程序(Event Handler),那么事件總是從當(dāng)前Task組件向上傳遞。用戶創(chuàng)建事件處理程序,并不意味著,需要在其中添加Task組件,做數(shù)據(jù)處理任務(wù),空的事件處理程序是允許的。在空的事件處理程序中把系統(tǒng)變量Propagate設(shè)置為False,那么事件將不會(huì)向上傳遞,也不會(huì)被顯式處理,錯(cuò)誤消息仍然會(huì)被SSISDB記錄,但強(qiáng)烈建議不要這樣做。

參考文檔:

Integration Services (SSIS) Event Handlers

System Variables

以上這篇基于SSIS 事件的向上傳遞(詳解)就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

標(biāo)簽:銅仁 益陽(yáng) 防疫戰(zhàn)設(shè) 威海 天水 宿州 來(lái)賓 七臺(tái)河

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《基于SSIS 事件的向上傳遞(詳解)》,本文關(guān)鍵詞  基于,SSIS,事件,的,向上,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《基于SSIS 事件的向上傳遞(詳解)》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于基于SSIS 事件的向上傳遞(詳解)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    国产午夜久久久久| 欧美日韩综合一区| 日本美女一区二区三区视频| 一区二区欧美国产| 午夜精品福利一区二区三区蜜桃| 亚洲欧美另类图片小说| 亚洲精品欧美在线| 亚洲香肠在线观看| 免费精品视频在线| 韩国成人在线视频| 成人av电影免费在线播放| 成人丝袜高跟foot| 91色乱码一区二区三区| 色美美综合视频| 欧美日韩国产一级片| 欧美一区二区三区四区在线观看| 日韩久久精品一区| 久久亚洲精品国产精品紫薇| 久久精品人人做人人爽人人| 国产精品天天看| 亚洲日本欧美天堂| 日本欧美一区二区| 福利一区在线观看| 在线区一区二视频| 日韩一级在线观看| 国产欧美日韩在线看| 亚洲日本丝袜连裤袜办公室| 亚洲aaa精品| 国产一区二区三区电影在线观看| 成人激情文学综合网| 欧美日韩一区二区在线观看| 日韩视频国产视频| 国产精品免费久久| 亚洲国产视频直播| 国产传媒一区在线| 欧美日韩电影一区| 日韩—二三区免费观看av| 国产一区二区三区视频在线播放| 91在线小视频| 日韩精品一区二区三区在线| 亚洲欧美另类小说| 国产综合久久久久影院| 欧美中文一区二区三区| 国产婷婷色一区二区三区四区| 亚洲在线视频免费观看| 国产成人精品一区二| 欧美精品1区2区| 成人免费在线观看入口| 国产麻豆精品在线| 91精品国模一区二区三区| 亚洲视频一区二区免费在线观看| 麻豆精品新av中文字幕| 欧美中文字幕一二三区视频| 中文字幕高清一区| 韩国一区二区视频| 91精品国产入口| 亚洲午夜视频在线观看| 成人的网站免费观看| 日韩精品一区二区三区老鸭窝 | 亚洲成人自拍网| 99国产精品久久久久久久久久久| 久久久夜色精品亚洲| 美女久久久精品| 7878成人国产在线观看| 午夜私人影院久久久久| 欧美伊人精品成人久久综合97| 自拍偷拍国产亚洲| 99视频国产精品| 国产精品久久久久久一区二区三区| 久久国产欧美日韩精品| 91精品国产欧美一区二区| 午夜天堂影视香蕉久久| 欧美剧情片在线观看| 日韩成人免费看| 日韩欧美一区电影| 久久精品国产精品亚洲精品| 日韩欧美一区二区视频| 国产在线视频精品一区| 久久色成人在线| 国产成人综合在线观看| 国产精品国产a| 99这里只有久久精品视频| 《视频一区视频二区| 色婷婷综合久久久久中文| 一级特黄大欧美久久久| 欧美午夜视频网站| 男人的天堂亚洲一区| 久久久久久久免费视频了| 国产成人av福利| 亚洲男同性视频| 欧美丰满嫩嫩电影| 国产乱人伦偷精品视频免下载| 国产色产综合色产在线视频| 99精品一区二区三区| 调教+趴+乳夹+国产+精品| 欧美大尺度电影在线| 成人黄色av电影| 五月激情六月综合| 欧美mv和日韩mv国产网站| 国产精品 日产精品 欧美精品| 最新国产の精品合集bt伙计| 欧美日韩久久不卡| 欧美一区二区在线看| 激情六月婷婷久久| 一区二区三区欧美在线观看| 欧美丰满一区二区免费视频| 国产69精品久久久久毛片| 亚洲午夜精品网| 久久久久久久久久久久久久久99| 色琪琪一区二区三区亚洲区| 另类小说一区二区三区| 一区二区三区蜜桃网| 久久午夜免费电影| 欧美日本在线看| 99国产欧美另类久久久精品| 秋霞电影网一区二区| 日韩美女精品在线| 欧美zozozo| 欧美日韩成人一区二区| 不卡电影免费在线播放一区| 美女尤物国产一区| 亚洲午夜一二三区视频| 国产精品美女一区二区在线观看| 日韩亚洲欧美在线| 欧美日韩黄视频| 91精彩视频在线观看| 成人免费高清在线| 国产在线播放一区三区四| 午夜精品一区二区三区免费视频 | 一区二区三区在线视频观看| 亚洲精品一线二线三线| 666欧美在线视频| 欧美性生活久久| 91香蕉视频污在线| 福利电影一区二区| 国产成人一级电影| 韩国在线一区二区| 欧美三级午夜理伦三级中视频| 国产日韩精品久久久| 99热国产精品| 成人永久aaa| 成人高清在线视频| 成人一区在线看| 国产成人av一区二区三区在线| 九色综合国产一区二区三区| 免费在线欧美视频| 免费欧美在线视频| 激情小说亚洲一区| 狠狠色伊人亚洲综合成人| 老鸭窝一区二区久久精品| 麻豆视频观看网址久久| 免费成人你懂的| 久久99久久久久久久久久久| 蜜臀av性久久久久av蜜臀妖精 | 日韩三级电影网址| 日韩一区二区影院| 亚洲综合一二三区| 亚洲午夜久久久久中文字幕久| 亚洲狠狠爱一区二区三区| 亚洲国产精品欧美一二99| 丝袜脚交一区二区| 久久精品久久99精品久久| 国产在线视频一区二区三区| 成人性生交大片免费看视频在线 | 欧美日韩电影在线| 69久久99精品久久久久婷婷| 精品乱人伦小说| 国产欧美一区二区精品婷婷| 亚洲天堂免费看| 日韩黄色一级片| 狠狠色综合日日| 色伊人久久综合中文字幕| 欧美精品久久99久久在免费线| 久久综合色一综合色88| 亚洲欧美日韩国产手机在线| 午夜欧美电影在线观看| 国产精品一二三| 欧洲国产伦久久久久久久| 日韩一区二区精品葵司在线| 国产精品久久久一本精品| 亚洲丰满少妇videoshd| 国内成+人亚洲+欧美+综合在线| 91麻豆免费观看| 日韩欧美高清在线| 亚洲免费观看高清完整版在线观看 | 久久91精品国产91久久小草 | 婷婷综合在线观看| 懂色av中文字幕一区二区三区| 欧美午夜一区二区| 国产欧美日本一区视频| 天天综合色天天综合色h| 成人sese在线| 日韩欧美国产一区二区三区| 亚洲女与黑人做爰| 国产成人av电影在线观看| 91麻豆精品91久久久久同性| 亚洲天堂2016| 国产精品91xxx| 精品欧美一区二区三区精品久久| 亚洲丝袜美腿综合|