SSISExecuteSQLTask用法-創(chuàng)新互聯(lián)

Execute Sql Task組件是一個非常有用的Control Flow Task,可以直接執(zhí)行SQL語句,例如,可以執(zhí)行數(shù)據(jù)更新命令(update,delete,insert),也可以執(zhí)行select查詢語句,返回結果集,結果集可以是一行,也可以是多行。

我們提供的服務有:成都做網(wǎng)站、網(wǎng)站制作、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認證、深圳ssl等。為近千家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務,是有科學管理、有技術的深圳網(wǎng)站制作公司

一,General 選項卡

1,返回結果集(Result Set)

  1. None:表示不返回結果,在執(zhí)行Update,delete或insert命令時,使用該選項;

  2. Single row:返回單行結果,可以在Result Set 選項卡中,將結果集返回到1個或多個變量中

  3. Full result set:返回多行結果,結果集存儲在object對象中

SSIS Execute SQL Task 用法

2,組件執(zhí)行的SQL命令(SQL Statement)

  • ConnectionType:連接到數(shù)據(jù)源的鏈接類型,如果是OLEDB鏈接,選中OLE DB;

  • Connection:鏈接字符串

  • SQLSourceType:SQL數(shù)據(jù)源的類型,共有三個選項:Direct Input,F(xiàn)ile Connection 和 Variable。Direct Input表示:直接輸入SQL命令;FileConnection表示:將SQL命令保存在.sql文件中;Variable表示:SQL命令保存在SSIS的變量中,如果Execute SQL Task執(zhí)行的SQL命令是動態(tài)變化的,使用Variable選項較好;

  • SQLStatement:要執(zhí)行的SQL語句,根據(jù)SQLSourceType的不同,有三種不同的值:SQL語句,.sql文件路徑,或SSIS變量;

 3,示例:SQLSourceType=Variable

SSIS Execute SQL Task 用法

SSIS Execute SQL Task 用法

二,Expressions選項卡

SSIS Package的屬性,既可以在General Tab中手動配置,也可以在Expressions Tab中配置,將配置屬性的值保存到變量中,可以動態(tài)控制包的執(zhí)行,

示例,將SqlStatementSource的值存儲在變量中,結果和SqlSourceType=Variable是一樣的,只不過實現(xiàn)方式不同,并且SSIS在執(zhí)行過程中,使用Expressions的屬性覆蓋General中配置的屬性值。

SSIS Execute SQL Task 用法

三,Result Set選項卡

如果在General選項卡中,將Result Set設置為Singel Row,可以將結果值存儲在變量中

SSIS Execute SQL Task 用法

四,Parameter Mapping 選項卡

如果sql命令在執(zhí)行的過程中需要傳遞參數(shù),可以在Parameter Mapping 選項卡中進行配置。如果使用的OLE DB 鏈接,需要使用 ?代表第一個參數(shù),并且在Parameter Mapping 中將parameter name設置為參數(shù)的序號,第一個? 的序號是0,即序號從0依次遞增

SSIS Execute SQL Task 用法

SSIS Execute SQL Task 用法

五,返回受影響數(shù)據(jù)的行數(shù)

ExecValueVariable 屬性是Task的標準屬性。有些Task在執(zhí)行完成后,會返回輸出結果,為了獲取Task的輸出結果,我們可以定義一個變量,存儲輸出結果。Task的ExecValueVariable屬性就是用來指定存儲Task輸出結果的變量名。默認屬性值是none,表示task的輸出結果不會被存儲。

Execute SQL Task 返回被更新的數(shù)據(jù)的行數(shù),我們可以為ExecValueVariable屬性指定一個變量,用來接收Task的輸出值(Execution value),在下游組件中可以引用該變量,獲取 Execute SQL Task 更新的數(shù)據(jù)行數(shù)。

Returns the number of rows affected by the SQL statement(s).The ExecValue is using the @@ROWCOUNT to assign the value of the variable and absent a @@ROWCOUNT the value returned is -1.

示例 Execute Sql Task的ExecValueVariable 用法

1,設計Package的Control Flow

SSIS Execute SQL Task 用法

SSIS Execute SQL Task 用法

Execute Sql Task的屬性:ExecValueVariable的值是變量varCount,該Task執(zhí)行的SQL語句如下:

insert into dbo.delay_testVALUES(1),(2),(3)insert into dbo.delay_testVALUES(2),(3)

SSIS Execute SQL Task 用法

Task:insert Data執(zhí)行的SQL語句是,傳入的參數(shù)是User::varCount

insert into dbo.dt_testvalues(?)

SSIS Execute SQL Task 用法

2,查看結果,第一個Task返回的結果是varCount是2,這個結果實際上是@@RowCount,SSIS在執(zhí)行語句之后,將@@RowCount賦值到Execute SQL Task 屬性ExecValueVariable指定的變量中。

另外有需要云服務器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。

網(wǎng)站題目:SSISExecuteSQLTask用法-創(chuàng)新互聯(lián)
分享網(wǎng)址:http://muchs.cn/article20/diedco.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供定制開發(fā)、虛擬主機、云服務器、建站公司、網(wǎng)站設計公司微信小程序

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設公司