Megosztás:


SQL-feladat végrehajtása

A következőkre vonatkozik:SQL Server SSIS integrációs futtatókörnyezet az Azure Data Factory-ban

Az SQL-feladat végrehajtása SQL-utasításokat vagy tárolt eljárásokat futtat egy csomagból. A feladat tartalmazhat egyetlen SQL-utasítást vagy több egymás után futó SQL-utasítást. Az SQL-feladat végrehajtása a következő célokra használható:

  • Táblázat vagy nézet csonkítása az adatok beillesztésére való felkészüléshez.

  • Adatbázis-objektumok, például táblák és nézetek létrehozása, módosítása és elvetése.

  • Hozzon létre újra tény- és dimenziótáblákat, mielőtt adatokat tölt be azokba.

  • Tárolt eljárások futtatása. Ha az SQL-utasítás olyan tárolt eljárást hív meg, amely egy ideiglenes táblából származó eredményeket ad vissza, az EREDMÉNYKÉSZLETTEL lehetőséggel definiálhatja az eredményhalmaz metaadatait.

  • Mentse a lekérdezésből visszaadott sorhalmazt egy változóba.

Az SQL-feladat végrehajtása a Foreach hurokkal és a For Loop-tárolókkal kombinálva több SQL-utasítás futtatására használható. Ezek a tárolók ismétlődő vezérlőfolyamatokat implementálnak egy csomagban, és ismétlődően futtathatják az SQL-feladat végrehajtását. A Foreach Loop-tároló használatával például egy csomag számba vehet fájlokat egy mappában, és ismétlődően futtathat egy SQL-feladatot az egyes fájlokban tárolt SQL-utasítás végrehajtásához.

Kapcsolódás adatforráshoz

Az SQL-feladat végrehajtása különböző típusú kapcsolatkezelőkkel csatlakozhat ahhoz az adatforráshoz, ahol az SQL-utasítást vagy a tárolt eljárást futtatja. A feladat az alábbi táblázatban felsorolt kapcsolattípusokat használhatja.

Kapcsolat típusa Kapcsolatkezelő
EXCEL Excel Connection Manager
OLE DB OLE DB Connection Manager
ODBC ODBC-kapcsolatkezelő
ADO ADO Connection Manager
ADO.NET ADO.NET Connection Manager
SQLMOBILE SQL Server Compact Edition Connection Manager

SQL-utasítások létrehozása

A feladat által használt SQL-utasítások forrása lehet egy utasítást tartalmazó tevékenységtulajdonság, egy egy vagy több utasítást tartalmazó fájlhoz való kapcsolat, vagy egy utasítást tartalmazó változó neve. Az SQL-utasításokat a forrásadatbázis-kezelő rendszer (DBMS) dialektusába kell írni. További információ: Integration Services (SSIS) lekérdezések.

Ha az SQL-utasítások egy fájlban vannak tárolva, a feladat egy Fájlkapcsolatkezelő használatával csatlakozik a fájlhoz. További információ: File Connection Manager.

Az SSIS Designerben az SQL-feladatszerkesztő végrehajtása párbeszédpanelen SQL-utasítások beírására, illetve sql-lekérdezések létrehozására szolgáló grafikus felhasználói felület, a Query Builder használatával is beírhatja az sql-lekérdezéseket.

Megjegyzés:

Előfordulhat, hogy az SQL-feladat végrehajtásán kívül írt érvényes SQL-utasítások nem elemezhetők sikeresen az SQL-feladat végrehajtása során.

Megjegyzés:

Az SQL-feladat végrehajtása a RecognizeAll ParseMode enumerálási értéket használja. További információ: ManagedBatchParser Namespace.

Több utasítás küldése csomagban

Ha több utasítást is belefoglal egy SQL-feladat végrehajtásába, csoportosíthatja és futtathatja őket kötegként. A köteg végének jelzéséhez használja a GO parancsot. A két GO-parancs közötti ÖSSZES SQL-utasítást egy kötegben küldi el a rendszer a futtatandó OLE DB-szolgáltatónak. Az SQL-parancs több, GO-parancsokkal elválasztott köteget is tartalmazhat.

A kötegekbe csoportosítható SQL-utasítások típusaira korlátozások vonatkoznak. További információ: Nyilatkozatok kötegei.

Ha az SQL-feladat végrehajtása SQL-utasítások kötegét futtatja, a kötegre a következő szabályok vonatkoznak:

  • Csak egy utasítás adhat vissza eredményhalmazt, és az utasítássorozat első utasításának kell lennie.

  • Ha az eredményhalmaz eredménykötéseket használ, a lekérdezéseknek ugyanannyi oszlopot kell visszaadnia. Ha a lekérdezések eltérő számú oszlopot adnak vissza, a feladat meghiúsul. A futtatott lekérdezések( például a DELETE vagy az INSERT lekérdezések) azonban akkor is sikeresek lehetnek, ha a feladat meghiúsul.

  • Ha az eredménykötések oszlopneveket használnak, a lekérdezésnek olyan oszlopokat kell visszaadnia, amelyek neve megegyezik a tevékenységben használt eredményhalmaz-névvel. Ha az oszlopok hiányoznak, a feladat meghiúsul.

  • Ha a tevékenység paraméterkötést használ, a kötegben lévő összes lekérdezésnek azonos számú és típusú paramétert kell tartalmaznia.

Paraméteres SQL-parancsok futtatása

Az SQL-utasítások és a tárolt eljárások gyakran használnak bemeneti paramétereket, kimeneti paramétereket és visszatérési kódokat. Az SQL-feladat végrehajtása támogatja az Input, Output és ReturnValue paramétertípusokat. A Input típust használja bemeneti paraméterekhez, a Output típust kimeneti paraméterekhez, és a ReturnValue típust a visszatérési kódokhoz.

Megjegyzés:

Paramétereket csak akkor használhat az SQL-feladatok végrehajtásakor, ha az adatszolgáltató támogatja őket.

Eredményhalmaz típusának megadása

Az SQL-parancs típusától függően előfordulhat, hogy egy eredményhalmaz visszakerül az SQL végrehajtási feladathoz. A SELECT utasítás például általában eredményhalmazt ad vissza, de az INSERT utasítás nem. A SELECT utasítás eredményhalmaza nulla sort, egy sort vagy több sort tartalmazhat. A tárolt eljárások egy egész számot is visszaadhatnak, úgynevezett visszatérési kódot, amely az eljárás végrehajtási állapotát jelzi. Ebben az esetben az eredményhalmaz egyetlen sorból áll.

Az SQL-feladat végrehajtásának konfigurálása

Az SQL-feladat végrehajtása a következő módokon konfigurálható:

  • Adja meg az adatbázishoz való csatlakozáshoz használni kívánt kapcsolatkezelő típusát.

  • Adja meg az SQL-utasítás által visszaadott eredményhalmaz típusát.

  • Adjon meg időtúllépést az SQL-utasításokhoz.

  • Adja meg az SQL-utasítás forrását.

  • Jelzi, hogy a tevékenység kihagyja-e az SQL-utasítás előkészítési fázisát.

  • Ha az ADO kapcsolattípust használja, meg kell adnia, hogy az SQL-utasítás tárolt eljárás-e. Más kapcsolattípusok esetén ez a tulajdonság írásvédett, értéke pedig mindig hamis.

A tulajdonságokat programozott módon vagy az SSIS Designer használatával is beállíthatja.

Általános lap – SQL-feladatszerkesztő végrehajtása

Az SQL Feladatszerkesztő végrehajtása párbeszédpanel Általános lapján konfigurálhatja az SQL-feladat végrehajtását, és megadhatja a feladat futtatására szolgáló SQL-utasítást.

A Transact-SQL lekérdezési nyelvről további információt a Transact-SQL referencia (adatbázismotor) című témakörben talál.

Statikus beállítások

Név
Adjon meg egy egyedi nevet az SQL-feladat végrehajtásához a munkafolyamatban. A megadott név megjelenik az SSIS Designerben.

Leírás
Az SQL-feladat végrehajtásának leírása. Ajánlott gyakorlatként, hogy a csomagok önmagukat dokumentálóak és könnyebben karbantarthatók legyenek, írja le a feladatot a célja szerint.

Időkorlát
Adja meg, hogy a tevékenység hány másodpercig fusson, mielőtt túllépi az időkorlátot. A 0 érték végtelen időt jelöl. Az alapértelmezett érték 0.

Megjegyzés:

A tárolt eljárások nem időkorlátba futnak, ha az alvó funkciót emulálják azáltal, hogy időt biztosítanak a kapcsolatok létrejöttéhez és a tranzakciók befejezéséhez, ami meghaladja a TimeOut által megadott másodpercek számát. A lekérdezéseket végrehajtó tárolt eljárásokra azonban mindig a TimeOut által meghatározott időkorlátozás vonatkozik.

CodePage
Adja meg a unicode-értékek változókban való lefordításakor használni kívánt kódlapot. Az alapértelmezett érték a helyi számítógép kódlapja.

Megjegyzés:

Ha az SQL-feladat végrehajtása ADO- vagy ODBC-kapcsolatkezelőt használ, a CodePage tulajdonság nem érhető el. Ha a megoldáshoz kódlap használata szükséges, használjon OLE DB-t vagy ADO.NET kapcsolatkezelőt az SQL-feladat végrehajtásával.

TypeConversionMode
Ha ezt a tulajdonságot Engedélyezett értékre állítja, az SQL-feladat végrehajtása megkísérli konvertálni a kimeneti paramétert és a lekérdezési eredményeket annak a változónak az adattípusára, amelyhez az eredmények hozzá vannak rendelve. Ez az egysoros eredményhalmaz típusára vonatkozik.

ResultSet
Adja meg a futtatott SQL-utasítás által várt eredménytípust. Válasszon az egysoros, a teljes eredménykészlet, az XML vagy a Nincs lehetőség közül.

KapcsolatTípus
Válassza ki az adatforráshoz való csatlakozáshoz használni kívánt kapcsolatkezelő típusát. Az elérhető kapcsolattípusok közé tartozik az OLE DB, az ODBC, az ADO, a ADO.NET és az SQLMOBILE.

Kapcsolódó témakörök:OLE DB Connection Manager, ODBC Connection Manager, ADO Connection Manager, ADO.NET Connection Manager, SQL Server Compact Edition Connection Manager

Kapcsolat
Válassza ki a kapcsolatot a megadott kapcsolatkezelők listájából. Új kapcsolat létrehozásához válassza az < lehetőséget>.

SQLSourceType
Válassza ki a feladat által futtatott SQL-utasítás forrástípusát.

Az SQL-feladat végrehajtása által használt kapcsolatkezelő típustól függően adott paraméterjelölőket kell használnia a paraméteres SQL-utasításokban.

Ez a tulajdonság az alábbi táblázatban felsorolt lehetőségeket tartalmazza.

Érték Description
Közvetlen bemenet Állítsa be a forrást egy Transact-SQL utasításra. Ha ezt az értéket választja, megjelenik az SQLStatement dinamikus beállítás.
Fájlkapcsolat Jelöljön ki egy Transact-SQL utasítást tartalmazó fájlt. Ha ezt a beállítást választja, megjelenik a Dinamikus beállítás, a FileConnection.
Változó Állítsa a forrást egy olyan változóra, amely meghatározza a Transact-SQL utasítást. Ha ezt az értéket választja, megjelenik a SourceVariable dinamikus beállítás.

QueryIsStoredProcedure
Azt jelzi, hogy a megadott futtatandó SQL-utasítás tárolt eljárás-e. Ez a tulajdonság csak akkor olvasható/írható, ha a feladat az ADO kapcsolatkezelőt használja. Ellenkező esetben a tulajdonság írásvédett lesz, és értéke false.

BypassPrepare
Adja meg, hogy az SQL-utasítás elkészült-e. true kihagyja az előkészítést, hamis pedig előkészíti az SQL-utasítást a futtatás előtt. Ez a lehetőség csak az előkészítést támogató OLE DB-kapcsolatok esetén érhető el.

Kapcsolódó témakörök:Előkészített végrehajtás

Böngészik
Keresse meg az SQL-utasítást tartalmazó fájlt a Megnyitás párbeszédpanelen. Jelöljön ki egy fájlt a fájl tartalmának SQL-utasításként való másolásához az SQLStatement tulajdonságba.

Lekérdezés összeállítása
Sql-utasítás létrehozása a lekérdezések létrehozásához használt grafikus eszköz, a Lekérdezésszerkesztő párbeszédpanel használatával. Ez a beállítás akkor érhető el, ha az SQLSourceType beállítás Direct bemenetre van állítva.

Lekérdezés elemzése
Ellenőrizze az SQL-utasítás szintaxisát.

SQLSourceType dinamikus beállításai

SQLSourceType = Közvetlen bemenet

SQLStatement
Írja be a végrehajtandó SQL-utasítást a beállításmezőbe, vagy kattintson a tallózás gombra (...) az SQL-utasítás beírásához az SQL-lekérdezés megadása párbeszédpanelen, vagy a Lekérdezés összeállítása gombra kattintva írja meg az utasítást a Lekérdezésszerkesztő párbeszédpanelen.

Kapcsolódó témakörök:Lekérdezésszerkesztő

SQLSourceType = Fájlkapcsolat

FileConnection
Válasszon ki egy meglévő Fájlkapcsolat-kezelőt, vagy kattintson az < gombra > egy új kapcsolatkezelő létrehozásához.

Kapcsolódó témakörök:Fájlkapcsolatkezelő, Fájlkapcsolatkezelő szerkesztő

SQLSourceType = változó

SourceVariable
Válasszon ki egy meglévő változót, vagy kattintson az < gombra egy > új változó létrehozásához.

Kapcsolódó témakörök:Integration Services (SSIS) változók, változó hozzáadása

Paraméterleképezési oldal – SQL-feladatszerkesztő végrehajtása

Az SQL Feladatszerkesztő végrehajtása párbeszédpanel Paraméterleképezés lapján változókat képezhet le az SQL-utasítás paramétereire.

Beállítások

Változó neve
Miután hozzáadott egy paraméterleképezést a Hozzáadás gombra kattintva, válasszon ki egy rendszer- vagy felhasználó által definiált változót a listából, vagy kattintson < az Új változó elemre...> ha új változót szeretne hozzáadni a Változó hozzáadása párbeszédpanelen.

Kapcsolódó témakörök:Integrációs szolgáltatások (SSIS) változói

Irány
Válassza ki a paraméter irányát. Az egyes változók leképezése bemeneti paraméterre, kimeneti paraméterre vagy visszatérési kódra.

Adattípus
Válassza ki a paraméter adattípusát. Az elérhető adattípusok listája a feladat által használt kapcsolatkezelőben kiválasztott szolgáltatóra vonatkozik.

Paraméternév
Adjon meg egy paraméternevet.

A tevékenység által használt kapcsolatkezelő típusától függően számokat vagy paraméterneveket kell használnia. Egyes kapcsolatkezelő-típusok esetében a paraméternév első karakterének a @ jelnek kell lennie. Különleges neveket, mint például @Param1, vagy oszlopneveket is lehet használni paraméternévként.

Paraméter mérete
Adja meg a változó hosszúságú paraméterek( például sztringek és bináris mezők) méretét.

Ez a beállítás biztosítja, hogy a szolgáltató elegendő helyet foglal le a változó hosszúságú paraméterértékekhez.

Add
Ide kattintva adhat hozzá egy paraméterleképezést.

Remove
Válasszon ki egy paraméterleképezést a listában, majd kattintson az Eltávolítás gombra.

Eredményhalmaz lap – SQL-feladatszerkesztő végrehajtása

Az SQL Feladatszerkesztő végrehajtása párbeszédpanel Eredménykészlet lapján az SQL-utasítás eredményét új vagy meglévő változókra képezheti le. A párbeszédpanel beállításai le vannak tiltva, ha az Általános lapon a ResultSet értéke Nincs.

Beállítások

Eredmény neve
Miután hozzáadott egy eredménykészlet-térképezést a Hozzáadás gombra kattintva, adjon nevet az eredménynek. Az eredményhalmaz típusától függően adott eredményneveket kell használnia.

Ha az eredményhalmaz típusa egysoros, használhatja a lekérdezés által visszaadott oszlop nevét, vagy azt a számot, amely a lekérdezés által visszaadott oszlop oszloplistájában egy oszlop pozícióját jelöli.

Ha az eredményhalmaz típusa Teljes eredménykészlet vagy XML, akkor az eredményhalmaz neveként a 0 értéket kell használnia.

Változó neve
Az eredményhalmazt egy változóra képezheti le. Ehhez válasszon ki egy változót, vagy kattintson az < gombra. > Új változó hozzáadásához használja a Változó hozzáadása párbeszédpanelt.

Add
Ide kattintva hozzáadhat egy eredményhalmaz-leképezést.

Remove
Válasszon ki egy eredményhalmaz-megfeleltetést a listában, majd kattintson az Eltávolítás gombra.

Paraméterek az SQL-feladat végrehajtásában

Az SQL-utasítások és a tárolt eljárások gyakran használnak bemeneti paramétereket, kimeneti paramétereket és visszatérési kódokat. Az Integration Servicesben az Sql-feladat végrehajtása támogatja az Input, Output és ReturnValue paramétertípusokat. A Input típust használja bemeneti paraméterekhez, a Output típust kimeneti paraméterekhez, és a ReturnValue típust a visszatérési kódokhoz.

Megjegyzés:

Paramétereket csak akkor használhat az SQL-feladatok végrehajtásakor, ha az adatszolgáltató támogatja őket.

Az SQL-parancsok paraméterei, beleértve a lekérdezéseket és a tárolt eljárásokat, a felhasználó által definiált változókra vannak leképezve, amelyek az SQL-feladat végrehajtása, egy szülőtároló vagy a csomag hatókörén belül jönnek létre. A változók értékei beállíthatók a tervezéskor, vagy futtatáskor dinamikusan feltölthetők. A paramétereket rendszerváltozókra is megfeleltetheti. További információ: Integration Services (SSIS) változók és rendszerváltozók.

A paraméterekkel és a visszatérési kódokkal való munka azonban nem csupán annak ismerete, hogy a tevékenység milyen paramétertípusokat támogat, és hogyan lesznek megfeleltetve ezek a paraméterek. További használati követelmények és irányelvek vonatkoznak a paraméterek és a visszatérési kódok sikeres használatára az SQL-feladat végrehajtása során. A témakör további része az alábbi használati követelményeket és irányelveket ismerteti:

Paraméternevek és jelölők

Az SQL-feladat végrehajtásának kapcsolattípusától függően az SQL-parancs szintaxisa különböző paraméterjelölőket használ. A ADO.NET kapcsolatkezelő típusa például megköveteli, hogy az SQL-parancs paraméterjelölőt használjon @varParameter formátumban, míg az OLE DB kapcsolattípushoz a kérdőjel (?) paraméterjelölő szükséges.

A változók és paraméterek közötti leképezésekben paraméternévként használható nevek a kapcsolatkezelő típusától függően is változnak. A ADO.NET kapcsolatkezelő típusa például egy @ előtaggal rendelkező felhasználó által definiált nevet használ, míg az OLE DB kapcsolatkezelő típusa megköveteli, hogy paraméternévként egy 0-alapú sorszám numerikus értékét használja.

Az alábbi táblázat összefoglalja az SQL-parancsok azon kapcsolatkezelő-típusok követelményeit, amelyeket az SQL-feladat végrehajtása használhat.

Kapcsolat típusa Paraméterjelölő Paraméter neve Példa SQL parancs
ADO ? Param1, Param2, ... SELECT FirstName, LastName, Title FROM Person.Contact WHERE ContactID = ?
ADO.NET @<paraméter neve> @<paraméter neve> SELECT FirstName, LastName, Title FROM Person.Contact WHERE ContactID = @parmContactID
ODBC ? 1, 2, 3, ... SELECT FirstName, LastName, Title FROM Person.Contact WHERE ContactID = ?
EXCEL és OLE DB ? 0, 1, 2, 3, ... SELECT FirstName, LastName, Title FROM Person.Contact WHERE ContactID = ?

Paraméterek használata ADO.NET és ADO kapcsolatkezelőkkel

A ADO.NET és az ADO kapcsolatkezelőinek speciális követelményei vannak a paramétereket használó SQL-parancsokra vonatkozóan:

  • ADO.NET kapcsolatkezelők megkövetelik, hogy az SQL-parancs paraméterneveket használjon paraméterjelölőként. Ez azt jelenti, hogy a változók közvetlenül paraméterekhez rendelhetők. A változó @varName például a névvel ellátott @parName paraméterre van leképezve, és értéket ad a paraméternek @parName.

  • Az ADO-kapcsolatkezelők megkövetelik, hogy az SQL-parancs kérdőjeleket (?) használjon paraméterjelölőként. Az egész számértékek kivételével azonban bármilyen felhasználó által definiált nevet használhat paraméternévként.

A paraméterek értékeinek megadásához a változók paraméternevekre vannak leképezve. Ezután az SQL-feladat végrehajtása a paraméterlistában szereplő paraméternév sorszámértékével tölti be a változóktól a paraméterekig az értékeket.

Paraméterek használata excel, ODBC és OLE DB kapcsolatkezelőkkel

Az EXCEL, az ODBC és az OLE DB kapcsolatkezelőinek meg kell követelniük, hogy az SQL-parancs kérdőjeleket (?) használjon paraméterjelölőként, a 0- vagy 1-alapú numerikus értékeket pedig paraméternévként. Ha az SQL-feladat végrehajtása az ODBC kapcsolatkezelőt használja, a lekérdezés első paraméteréhez leképezett paraméter neve 1; ellenkező esetben a paraméter neve 0. Az ezt követő paraméterek esetében a paraméternév numerikus értéke azt a paramétert jelzi az SQL-parancsban, amelybe a paraméter neve leképezi. A 3 nevű paraméter például a harmadik paraméterre van leképezve, amelyet az SQL-parancs harmadik kérdőjele (?) jelöl.

A paraméterek értékeinek megadásához a változók paraméternevekre vannak leképezve, és az Sql-feladat végrehajtása a paraméternév sorszámértékével tölti be az értékeket a változóktól a paraméterekig.

A kapcsolatkezelő által használt szolgáltatótól függően előfordulhat, hogy egyes OLE DB-adattípusok nem támogatottak. Az Excel-illesztő például csak korlátozott adattípusokat ismer fel. A Jet-szolgáltató Excel-illesztővel való működésével kapcsolatos további információkért tekintse meg az Excel forrását.

Paraméterek használata az OLE DB kapcsolatkezelőivel

Ha az SQL-feladat végrehajtása az OLE DB kapcsolatkezelőt használja, a tevékenység BypassPrepare tulajdonsága elérhető. Ezt a tulajdonságot igaz értékre kell állítania, ha az SQL-feladat sql-utasításokat használ paraméterekkel.

OLE DB kapcsolatkezelő használata esetén nem használhat paraméteres részlekérdezéseket, mert az SQL-feladat végrehajtása nem tud paraméteradatokat kinyerni az OLE DB-szolgáltatón keresztül. Egy kifejezéssel azonban összefűzheti a paraméterértékeket a lekérdezési sztringben, és beállíthatja a feladat SqlStatementSource tulajdonságát.

Paraméterek használata dátum- és időadattípusokkal

Dátum- és időparaméterek használata ADO.NET és ADO kapcsolatkezelőkkel

Az SQL Server-típusok, az idő és a datetimeoffset adatainak olvasásakor egy ADO.NET vagy ADO kapcsolatkezelőt használó SQL-feladat végrehajtása a következő további követelményekkel rendelkezik:

  • Az időadatok esetében a ADO.NET kapcsolatkezelő megköveteli, hogy ezeket az adatokat olyan paraméterben tárolja, amelynek paramétertípusa bemenet vagy kimenet, és amelynek adattípusa sztring.

  • A datetimeoffset-adatok esetében egy ADO.NET kapcsolatkezelőnek az alábbi paraméterek egyikében kell tárolnia ezeket az adatokat:

    • Olyan paraméter, amelynek paramétertípusa bemenet , és amelynek adattípusa sztring.

    • Olyan paraméter, amelynek paramétertípusa Output vagy ReturnValue, és amelynek adattípusa datetimeoffset, sztring vagy datetime2. Ha olyan paramétert választ ki, amelynek adattípusa sztring vagy datetime2, az Integration Services sztringgé vagy datetime2-vé alakítja az adatokat.

  • Az ADO-kapcsolatkezelőknek idő- vagy datetimeoffset-adatokat kell tárolniuk egy olyan paraméterben, amelynek paramétertípusa bemenet vagy kimenet, és amelynek adattípusa adVarWchar.

Az SQL Server adattípusairól és az Integration Services-adattípusokra való leképezésükről további információt az Adattípusok (Transact-SQL) és az Integration Services adattípusai című témakörben talál.

Dátum- és időparaméterek használata az OLE DB kapcsolatkezelőivel

OLE DB-kapcsolatkezelő használata esetén az SQL-feladat végrehajtása speciális tárolási követelményekkel rendelkezik az SQL Server-adattípusok, a dátum, az idő, a datetime, a datetime2 és a datetimeoffset adataihoz. Ezeket az adatokat a következő paramétertípusok egyikében kell tárolnia:

  • Az NVARCHAR adattípus bemeneti paramétere.

  • A megfelelő adattípusú kimeneti paraméter az alábbi táblázatban leírtak szerint.

    Kimeneti paraméter típusa Dátum adattípusa
    DBDATE date
    DBTIME2 time
    DBTIMESTAMP datetime, datetime2
    DBTIMESTAMPOFFSET datetimeoffset

Ha az adatokat nem a megfelelő bemeneti vagy kimeneti paraméter tárolja, a csomag meghiúsul.

Dátum- és időparaméterek használata az ODBC-kapcsolatkezelőkkel

ODBC-kapcsolatkezelő használata esetén az SQL-feladat végrehajtása speciális tárolási követelményekkel rendelkezik az SQL Server-adattípusok, dátum, idő, dátum/idő, datetime2 vagy datetimeoffset típusú adatokhoz. Ezeket az adatokat a következő paramétertípusok egyikében kell tárolnia:

  • A SQL_WVARCHAR adattípus bemeneti paramétere

  • Egy kimeneti paraméter a megfelelő adattípussal, az alábbi táblázatban leírtak szerint.

    Kimeneti paraméter típusa Dátum adattípusa
    SQL_DATE date
    SQL_SS_TIME2 time
    SQL_TYPE_TIMESTAMP

    -vagy-

    SQL_TIMESTAMP
    datetime, datetime2
    SQL_SS_TIMESTAMPOFFSET datetimeoffset

Ha az adatokat nem a megfelelő bemeneti vagy kimeneti paraméter tárolja, a csomag meghiúsul.

Paraméterek használata a WHERE záradékokban

A SELECT, INSERT, UPDATE és DELETE parancsok gyakran tartalmaznak WHERE záradékokat, amelyek olyan szűrőket határoznak meg, amelyek meghatározzák, hogy a forrástáblák egyes sorainak milyen feltételeknek kell megfelelniük ahhoz, hogy jogosultak legyenek egy SQL-parancsra. A paraméterek a WHERE záradékokban adják meg a szűrőértékeket.

Paraméterjelölőkkel dinamikusan adhat meg paraméterértékeket. Azok a szabályok, amelyekhez paraméterjelölők és paraméternevek használhatók az SQL-utasításban, attól függ, hogy milyen típusú kapcsolatkezelőt használ az SQL végrehajtása.

Az alábbi táblázat példákat sorol fel a SELECT parancsra a kapcsolatkezelő típusa szerint. Az INSERT, UPDATE és DELETE utasítások hasonlóak. A példák a SELECT használatával olyan termékeket adnak vissza a Product táblából AdventureWorks2025 , amelyek termékazonosítója nagyobb és kisebb, mint a két paraméter által megadott érték.

Kapcsolat típusa SELECT szintaxis
EXCEL, ODBC és OLEDB SELECT* FROM Production.Product WHERE ProductId > ? AND ProductID < ?
ADO SELECT* FROM Production.Product WHERE ProductId > ? AND ProductID < ?
ADO.NET SELECT* FROM Production.Product WHERE ProductId > @parmMinProductID AND ProductID < @parmMaxProductID

A példákhoz az alábbi neveket tartalmazó paraméterek szükségesek:

  • Az EXCEL és az OLED DB kapcsolatkezelői a 0 és az 1 paraméterneveket használják. Az ODBC-kapcsolat típusa 1 és 2.

  • Az ADO-kapcsolattípus két paraméternevet használhat, például a Param1 és a Param2 nevet, de a paramétereket le kell képezni a paraméterlistában elfoglalt sorrendjük alapján.

  • A ADO.NET kapcsolattípus a @parmMinProductID és @parmMaxProductID paraméterneveket használja.

Paraméterek használata tárolt eljárásokkal

A tárolt eljárásokat futtató SQL-parancsok paraméterleképezést is használhatnak. A paraméterjelölők és paraméternevek használatára vonatkozó szabályok az SQL végrehajtása által használt kapcsolatkezelő típusától függnek, ugyanúgy, mint a paraméteres lekérdezések szabályai.

Az alábbi táblázat példákat sorol fel az EXEC parancsra a kapcsolatkezelő típusa szerint. A példák az uspGetBillOfMaterials tárolt eljárást futtatják a következőben: AdventureWorks2025. A tárolt eljárás a @StartProductID@CheckDate paramétereket használja.

Kapcsolat típusa EXEC szintaxis
EXCEL és OLEDB EXEC uspGetBillOfMaterials ?, ?
ODBC {call uspGetBillOfMaterials(?, ?)}

Az ODBC hívásszintaxisával kapcsolatos további információkért tekintse meg az ELJÁRÁSparaméterek című témakört az ODBC programozói hivatkozásában az MSDN-kódtárban.
ADO Ha az IsQueryStoredProcedure értéke False, EXEC uspGetBillOfMaterials ?, ?

Ha az IsQueryStoredProcedure értéke True, uspGetBillOfMaterials
ADO.NET Ha az IsQueryStoredProcedure értéke False, EXEC uspGetBillOfMaterials @StartProductID, @CheckDate

Ha az IsQueryStoredProcedure értéke True, uspGetBillOfMaterials

A kimeneti paraméterek használatához a szintaxis megköveteli, hogy a OUTPUT kulcsszó kövesse az egyes paraméterjelölőket. Például a következő kimeneti paraméter szintaxisa helyes: EXEC myStoredProcedure ? OUTPUT.

További információ a bemeneti és kimeneti paraméterek Transact-SQL tárolt eljárásokkal való használatáról: EXECUTE (Transact-SQL).

Lekérdezési paraméterek leképezése változókra

Ez a szakasz azt ismerteti, hogyan használhat paraméteres SQL-utasítást az SQL-feladat végrehajtása során, és hogyan hozhat létre leképezéseket a változók és a paraméterek között az SQL-utasításban.

  1. Az SQL Server Data Tools (SSDT) alkalmazásban nyissa meg a használni kívánt Integration Services-csomagot.

  2. A Megoldáskezelőben kattintson duplán a csomagra a megnyitásához.

  3. Kattintson a Control Flow fülre.

  4. Ha a csomag még nem tartalmaz végrehajtási SQL-feladatot, adjon hozzá egyet a csomag vezérlőfolyamatához. További információ: Tevékenység vagy tároló hozzáadása vagy törlése egy vezérlőfolyamatban.

  5. Kattintson duplán az SQL-feladat végrehajtására.

  6. Adjon meg egy paraméteres SQL-parancsot az alábbi módok egyikén:

    • Használjon közvetlen bemenetet, és írja be az SQL parancsot az SQLStatement tulajdonságba.

    • Használjon közvetlen bemenetet, kattintson a Lekérdezés összeállítása elemre, majd hozzon létre egy SQL-parancsot a Lekérdezésszerkesztő által biztosított grafikus eszközökkel.

    • Használjon fájlkapcsolatot, majd hivatkozzon az SQL-parancsot tartalmazó fájlra.

    • Használjon egy változót, majd hivatkozzon az SQL-parancsot tartalmazó változóra.

    A paraméteres SQL-utasításokban használt paraméterjelölők az SQL-feladat végrehajtása által használt kapcsolattípustól függnek.

    Kapcsolat típusa Paraméterjelölő
    ADO ?
    ADO.NET és SQLMOBILE @<paraméter neve>
    ODBC ?
    EXCEL és OLE DB ?

    Az alábbi táblázat példákat sorol fel a SELECT parancsra a kapcsolatkezelő típusa szerint. A paraméterek a WHERE záradékokban adják meg a szűrőértékeket. A példák a SELECT használatával olyan termékeket adnak vissza a Product táblából AdventureWorks2025 , amelyek termékazonosítója nagyobb és kisebb, mint a két paraméter által megadott érték.

    Kapcsolat típusa SELECT szintaxis
    EXCEL, ODBC és OLEDB SELECT* FROM Production.Product WHERE ProductId > ? AND ProductID < ?
    ADO SELECT* FROM Production.Product WHERE ProductId > ? AND ProductID < ?
    ADO.NET SELECT* FROM Production.Product WHERE ProductId > @parmMinProductID AND ProductID < @parmMaxProductID
  7. Kattintson a Paraméterleképezés elemre.

  8. Paraméterleképezés hozzáadásához kattintson a Hozzáadás gombra.

  9. Adjon meg egy nevet a Paraméternév mezőben.

    A használt paraméternevek az SQL-feladat végrehajtása által használt kapcsolattípustól függnek.

    Kapcsolat típusa Paraméter neve
    ADO Param1, Param2, ...
    ADO.NET és SQLMOBILE @<paraméter neve>
    ODBC 1, 2, 3, ...
    EXCEL és OLE DB 0, 1, 2, 3, ...
  10. A Változónév listában válasszon ki egy változót. További információ: Felhasználó által definiált változó hozzáadása, törlése, hatókörének módosítása a csomagban.

  11. Az Irány listában adja meg, hogy a paraméter bemenet, kimenet vagy visszatérési érték-e.

  12. Az Adattípus listában adja meg a paraméter adattípusát.

    Fontos

    A paraméter adattípusának kompatibilisnek kell lennie a változó adattípusával.

  13. Ismételje meg a 8–11. lépést az SQL-utasítás minden paraméteréhez.

    Fontos

    A paraméterleképezések sorrendjének meg kell egyeznie azzal a sorrenddel, amelyben a paraméterek megjelennek az SQL-utasításban.

  14. Kattintson az OK gombra.

A visszatérési kódok értékeinek lekérése

A tárolt eljárások visszaadhatnak egy egész számot, úgynevezett visszatérési kódot az eljárás végrehajtási állapotának jelzésére. Visszatérési kódok implementálásához az SQL-feladat végrehajtásához a ReturnValue típusú paramétereket kell használnia.

Az alábbi táblázat kapcsolattípusonként felsorol néhány példát a visszatérési kódokat implementáló EXEC-parancsokra. Minden példa egy bemeneti paramétert használ. A paraméterjelölők és paraméternevek használatára vonatkozó szabályok az összes paramétertípusra vonatkoznak– Bemenet, Kimenet és ReturnValue.

Egyes szintaxisok nem támogatják a paraméterkonstansokat. Ebben az esetben egy változóval kell megadnia a paraméter értékét.

Kapcsolat típusa EXEC szintaxis
EXCEL és OLEDB EXEC ? = myStoredProcedure 1
ODBC {? = call myStoredProcedure(1)}

Az ODBC hívásszintaxisával kapcsolatos további információkért tekintse meg az ELJÁRÁSparaméterek című témakört az ODBC programozói hivatkozásában az MSDN-kódtárban.
ADO Ha az IsQueryStoreProcedure értéke False, EXEC ? = myStoredProcedure 1

Ha az IsQueryStoreProcedure be van állítva True-ra, myStoredProcedure
ADO.NET Az IsQueryStoreProcedure beállítása Igaz értékre van állítva.

myStoredProcedure

Az előző táblázatban látható szintaxisban az SQL-feladat végrehajtása a közvetlen bemeneti forrástípust használja a tárolt eljárás futtatásához. Az SQL-feladat végrehajtása a fájlkapcsolat forrástípusával is futtathat tárolt eljárást. Függetlenül attól, hogy az SQL-feladat végrehajtása a Közvetlen bemenet vagy a Fájlkapcsolat forrástípust használja-e, a visszatérési kód implementálásához használja a ReturnValue típusú paramétert.

A visszatérési kódok Transact-SQL tárolt eljárásokkal való használatáról további információt a RETURN (Transact-SQL) című témakörben talál.

Eredményhalmazok az SQL-feladat végrehajtásában

Egy Integration Services-csomagban az, hogy egy eredményhalmaz vissza lesz-e adva az SQL-feladat végrehajtásához, a tevékenység által használt SQL-parancs típusától függ. A SELECT utasítás például általában eredményhalmazt ad vissza, de az INSERT utasítás nem.

Az eredményhalmaz tartalma az SQL-parancstól is függ. A SELECT utasítás eredményhalmaza például tartalmazhat nulla sort, egy sort vagy több sort. A darabszámot vagy összeget vissza adó SELECT utasítás eredményhalmaza azonban csak egyetlen sort tartalmaz.

Az Eredményhalmazok végrehajtása SQL-feladatban való használata több, mint annak ismerete, hogy az SQL-parancs eredményhalmazt ad-e vissza, és hogy az eredményhalmaz mit tartalmaz. További használati követelmények és irányelvek szükségesek az eredményhalmazok sikeres használatához az SQL-feladat végrehajtása során. A témakör további része az alábbi használati követelményeket és irányelveket ismerteti:

Eredményhalmaz típusának megadása

Az SQL-feladat végrehajtása a következő típusú eredményhalmazokat támogatja:

  • A Nincs eredményhalmaz akkor használatos, ha a lekérdezés nem ad vissza eredményt. Ez az eredménykészlet például olyan lekérdezésekhez használatos, amelyek rekordokat adnak hozzá, módosítanak és törölnek egy táblában.

  • Az egysoros eredményhalmaz akkor használatos, ha a lekérdezés csak egy sort ad vissza. Ezt az eredménykészletet például egy SELECT utasításhoz használjuk, amely egy darabszámot vagy egy összeget ad vissza.

  • A teljes eredményhalmaz eredményhalmaza akkor használatos, ha a lekérdezés több sort ad vissza. Ez az eredménykészlet például egy SELECT utasításhoz használható, amely lekéri egy tábla összes sorát.

  • Az XML-eredménykészletet akkor használja a rendszer, ha a lekérdezés xml formátumban ad vissza egy eredményhalmazt. Ez az eredménykészlet például egy FOR XML záradékot tartalmazó SELECT utasításhoz használható.

Ha az SQL-feladat végrehajtása a Teljes eredményhalmaz eredményhalmazt használja, és a lekérdezés több sorhalmazt ad vissza, a tevékenység csak az első sorkészletet adja vissza. Ha ez az eredményhalmaz hibát okoz, a feladat jelenti a hibát. Amennyiben más adathalmazok hibát okoznak, ezeket nem jelzi a feladat.

Változó feltöltése eredménykészlettel

A lekérdezés által visszaadott eredményhalmazt egy felhasználó által definiált változóhoz kötheti, ha az eredményhalmaz típusa egyetlen sor, sorkészlet vagy XML.

Ha az eredményhalmaz típusa egysoros, akkor a visszaadott eredmény egy oszlopát egy változóhoz kötheti az eredményhalmaz neveként használt oszlopnévvel, vagy az oszloplistában szereplő oszlop sorszámát is használhatja eredményhalmaznévként. A lekérdezés SELECT Color FROM Production.Product WHERE ProductID = ? eredményhalmazának neve lehet például Szín vagy 0. Ha a lekérdezés több oszlopot ad vissza, és az összes oszlop értékeit szeretné elérni, minden oszlopot egy másik változóhoz kell kötnie. Ha az oszlopokat változókhoz rendeli össze az eredményhalmaz neveként számokkal, a számok azt a sorrendet tükrözik, amelyben az oszlopok megjelennek a lekérdezés oszloplistájában. A lekérdezésben SELECT Color, ListPrice, FROM Production.Product WHERE ProductID = ?például a 0 értéket használja a Szín oszlophoz, 1-et pedig a ListPrice oszlophoz. Az oszlopnév az eredményhalmaz neveként való használatának képessége attól függ, hogy a tevékenység melyik szolgáltatót használja. Nem minden szolgáltató teszi elérhetővé az oszlopneveket.

Egyes lekérdezések, amelyek egyetlen értéket adnak vissza, nem tartalmazhatnak oszlopneveket. Az utasítás SELECT COUNT (*) FROM Production.Product például nem ad vissza oszlopnevet. A visszatérési eredményt az eredmény neveként a 0 sorszámú pozícióval érheti el. A visszatérési eredmény oszlopnév alapján való eléréséhez a lekérdezésnek tartalmaznia kell egy AS <aliasnév> záradékot az oszlopnév megadásához. Az utasítás SELECT COUNT (*)AS CountOfProduct FROM Production.Producta CountOfProduct oszlopot adja meg. Ezután elérheti a visszaadott eredmény oszlopot a CountOfProduct oszlop nevével vagy a 0 sorszámú pozícióval.

Ha az eredményhalmaz típusa Teljes eredménykészlet vagy XML, akkor az eredményhalmaz neveként a 0 értéket kell használnia.

Ha egy változót egy egysoros eredményhalmaz-típussal rendelkező eredményhalmazra képez le, a változónak olyan adattípussal kell rendelkeznie, amely kompatibilis az eredményhalmaz által tartalmazott oszlop adattípusával. Egy sztring adattípusú oszlopot tartalmazó eredményhalmaz például nem képezhető le numerikus adattípusú változóra. Amikor a TypeConversionModetulajdonságot Engedélyezett értékre állítja, az SQL-feladat végrehajtása megkísérli konvertálni a kimeneti paramétert és a lekérdezési eredményeket annak a változónak az adattípusára, amelyhez az eredmények hozzá vannak rendelve.

Az XML-eredményhalmazok csak a String vagy Object adattípusú változóra képezhetők le. Ha a változó sztring adattípussal rendelkezik, az Sql-feladat végrehajtása egy sztringet ad vissza, és az XML-forrás felhasználhatja az XML-adatokat. Ha a változó objektum adattípussal rendelkezik, az Sql-feladat végrehajtása egy dokumentumobjektum-modell (DOM) objektumot ad vissza.

A teljes eredményhalmaznak az objektum adattípusának változójára kell megfeleltetnie. A visszatérési eredmény egy sorhalmaz-objektum. A Foreach Loop-tárolóval kinyerheti az objektumváltozóban tárolt táblasor-értékeket csomagváltozókba, majd szkriptfeladat használatával fájlba írhatja a csomagváltozókban tárolt adatokat. Bemutató arról, hogyan teheti ezt meg Foreach Loop-tárolóval és szkriptfeladattal.

Az alábbi táblázat összefoglalja az eredményhalmazokra leképezhető változók adattípusait.

Eredményhalmaz típusa Változó adattípusa Objektum típusa
Egysoros Minden olyan típus, amely kompatibilis az eredményhalmaz típusoszlopával. Nem alkalmazható
Teljes eredménykészlet Objektum Ha a feladat natív kapcsolatkezelőt használ, beleértve az ADO, az OLE DB, az Excel és az ODBC kapcsolatkezelőt, a visszaadott objektum egy ADO-rekordkészlet.

Ha a feladat felügyelt kapcsolatkezelőt használ, például a ADO.NET kapcsolatkezelőt, akkor a visszaadott objektum egy System.Data.DataSet.

Szkriptfeladat használatával hozzáférhet a System.Data.DataSet objektumhoz az alábbi példában látható módon.

Dim dt As Data.DataTable

Dim ds As Data.DataSet = CType(Dts.Variables("Recordset").Value, DataSet) dt = ds.Tables(0)
XML String String
XML Objektum Ha a feladat natív kapcsolatkezelőt használ, beleértve az ADO, az OLE DB, az Excel és az ODBC kapcsolatkezelőt, a visszaadott objektum egy MSXML6. IXMLDOMDocument.

Ha a feladat felügyelt kapcsolatkezelőt használ, például a ADO.NET kapcsolatkezelőt, a visszaadott objektum egy System.Xml.XmlDocument.

A változó az SQL-feladat végrehajtása vagy a csomag hatókörében határozható meg. Ha a változó csomaghatókörrel rendelkezik, az eredményhalmaz a csomagon belül más tevékenységek és tárolók számára is elérhető, és a Csomag végrehajtása vagy a DTS 2000 Csomagfeladatok végrehajtása által futtatott csomagok számára is elérhető.

Ha egy változót egyetlen sor eredményhalmazára képez le, az SQL-utasítás által visszaadott nem sztringértékek sztringekké lesznek konvertálva, amikor a következő feltételek teljesülnek:

  • A TypeConversionMode tulajdonság értéke igaz. A tulajdonság értékét a Tulajdonságok ablakban vagy az SQL-feladatszerkesztő végrehajtásával állíthatja be.

  • Az átalakítás nem eredményezi az adatok csonkítását.

Változókra történő eredményhalmazok leképezése egy SQL-végrehajtási feladat során

Ez a szakasz azt ismerteti, hogyan hozhat létre leképezést egy eredményhalmaz és egy változó között egy SQL-feladat végrehajtása során. Az eredményhalmaz változóhoz való leképezése elérhetővé teszi az eredményhalmazt a csomag más elemei számára. A szkriptfeladatokban lévő szkriptek például beolvashatják a változót, majd használhatják az eredményhalmaz értékeit, vagy egy XML-forrás felhasználhatja a változóban tárolt eredményhalmazt. Ha az eredményhalmazt egy szülőcsomag hozza létre, az eredményhalmaz elérhetővé tehető egy végrehajtási csomag feladat által hívott gyermekcsomag számára az eredményhalmaz szülőcsomagban lévő változóhoz való leképezésével, majd a szülőcsomag változókonfigurációjának gyermekcsomagban való létrehozásával a szülőváltozó értékének tárolásához.

  1. Az SQL Server Data Tools (SSDT) alkalmazásban nyissa meg a kívánt csomagot tartalmazó Integration Services-projektet.

  2. A Megoldáskezelőben kattintson duplán a csomagra a megnyitásához.

  3. Kattintson a Control Flow fülre.

  4. Ha a csomag még nem tartalmaz végrehajtási SQL-feladatot, adjon hozzá egyet a csomag vezérlőfolyamatához. További információ: Tevékenység vagy tároló hozzáadása vagy törlése egy vezérlőfolyamatban.

  5. Kattintson duplán az SQL-feladat végrehajtására.

  6. Az SQL Feladatszerkesztő végrehajtása párbeszédpanel Általános lapján válassza ki az egysoros, a teljes eredménykészlet vagy az XML-eredménykészlet típusát.

  7. Kattintson az Eredményhalmaz gombra.

  8. Eredményhalmaz-leképezés hozzáadásához kattintson a Hozzáadás gombra.

  9. A Változók névlistájában válasszon ki egy változót, vagy hozzon létre egy új változót. További információ: Felhasználó által definiált változó hozzáadása, törlése, hatókörének módosítása a csomagban.

  10. Az Eredménynév listában szükség esetén módosítsa az eredményhalmaz nevét.

    Általában az oszlop nevét használhatja eredményhalmaz-névként, vagy az oszloplista oszlopának sorszámát is használhatja eredményhalmazként. Az oszlopnév eredményhalmaznévként való használatának lehetősége attól függ, hogy a tevékenység melyik szolgáltatóhoz van konfigurálva. Nem minden szolgáltató teszi elérhetővé az oszlopneveket.

  11. Kattintson az OK gombra.

Az SQL-feladat végrehajtásának hibaelhárítása

Naplózhatja az SQL-feladat végrehajtása külső adatszolgáltatóknak indított hívásait. Ezzel a naplózási funkcióval azonosíthatja azokat az SQL-parancsokat, amelyeket az SQL-végrehajtási feladat futtat. Az SQL-feladat külső adatszolgáltatóknak indított hívásainak naplózásához engedélyezze a csomagnaplózást, és válassza ki a diagnosztikai eseményt a csomag szintjén. További információ: A csomagvégrehajtás hibaelhárítási eszközei.

Előfordulhat, hogy egy SQL-parancs vagy a tárolt eljárás több eredményhalmazt ad vissza. Ezek az eredményhalmazok nem csak a SELECT lekérdezések eredményeként kapott sorhalmazokat tartalmazzák, hanem azokat az értékeket is, amelyek a RAISERROR vagy a PRINT utasítás hibáinak eredménye. Az, hogy a feladat figyelmen kívül hagyja-e az első eredményhalmaz után előforduló eredményhalmazok hibáit, a használt kapcsolatkezelő típusától függ:

  • Az OLE DB és az ADO kapcsolatkezelő használata esetén a feladat figyelmen kívül hagyja az első eredményhalmaz után előforduló eredményhalmazokat. Ezért ezekkel a kapcsolatkezelőkkel a feladat figyelmen kívül hagyja egy SQL-parancs vagy egy tárolt eljárás által visszaadott hibát, ha a hiba nem része az első eredményhalmaznak.

  • Ha ODBC-t és ADO.NET kapcsolatkezelőt használ, a feladat nem hagyja figyelmen kívül az első eredményhalmaz után előforduló eredményhalmazokat. Ezekkel a kapcsolatkezelőkkel a feladat hibával hiúsul meg, ha az első eredményhalmaztól eltérő eredményhalmaz hibát tartalmaz.

Egyéni naplóbejegyzések

Az alábbi táblázat az SQL-feladat végrehajtásához tartozó egyéni naplóbejegyzést ismerteti. További információkért lásd a Integration Services (SSIS) naplózásrészt.

Naplóbejegyzés Description
ExecuteSQLExecutingQuery Információt nyújt az SQL-utasítás végrehajtási fázisairól. A naplóbejegyzések akkor lesznek megírva, amikor a tevékenység kapcsolatot szerez az adatbázissal, amikor a feladat elkezdi előkészíteni az SQL-utasítást, majd az SQL-utasítás végrehajtása után. Az előkészítési fázis naplóbejegyzése tartalmazza a tevékenység által használt SQL-utasítást.