HyperLink
Bejelentkezés
E-mail: 
Jelszó: 





Skip Navigation Links
 

Lookup Query a DTS-ben


DTS 11. rész


Előfordulnak olyan esetek, amikor táblák összekapcsolása nem célravezető, mert túl nagy erőforrás igényű lekérdezések keletkeznének. Ilyenkor érdemes használni a kereső lekérdezéseket, amelyek ActiveX script segítségével valósíthatók meg a DTS csomagban.

Lookup Query
A Transform Data és a Data Driven Query task-ok egyik tulajdonsága a kereső lekérdezés, amely lehetővé teszi, hogy lekérdezést, tárolt eljárást futtassunk egy másik kapcsolatban, az adatforrás és célállomáson felül. Például egy kereső lekérdezést használva egy különálló kapcsolatot hozhatunk létre a lekérdezés közben és adatot emelhetünk be a kapcsolatból, a célállomás számára.
A kereső lekérdezés segítségével ActiveX script transzformáción belül tudunk egy lekérdezést testre szabni és futtatni. Az utasítás lehet tárolt eljárás hívás, vagy SELECT, INSERT, UPDATE, DELETE utasítás. Testre szabhatjuk ezeket az utasításokat minden bemeneti sorra, paraméterek használatán keresztül, helyet hagyva az utasításban a feltöltésre a futtatás előtt. Amikor egy kereső lekérdezést indítunk, akkor a script behelyettesítő értéket nyújt minden paraméternek. Az eredmény a célként használatos oszlopokba betölthető, vagy a script-ben felhasználható.
Kereső lekérdezést használhatunk:
  • Táblázatos információ kereséséhez
  • Párhuzamosan módosíthatunk két adatbázis rendszert
  • Ellenőrizhetünk bemeneti adatot betöltés előtt
  • Meghívhatunk tárolt eljárást a bemeneti feltételekre válaszul
  • Globális változókat használhatunk lekérdezési paraméterként
A kereső lekérdezések mindig lassabban futnak le, mintha egy lekérdezést használnánk, táblákat összekapcsolva, éppen ezért csak abban az esetben használjunk kereső lekérdezést, amikor nincs már módszer a feladat megoldására. Pl.:
  • Ha join nem lehetséges, mert az adatforrás nem SQL szerver, vagy a join által generált adatmennyiség meghaladja a rendszer kapacitását.
  • Tárolt eljárást kell hívnunk, vagy DELETE, UPDATE utasítást kell futtatnunk.
  • A tisztán érthetőség igénye nagyobb az erőforrásigénynél.
Példa kereső lekérdezésre:
  • Hozzunk létre egy új kapcsolatot.
  • Készítsük el a paraméterezett lekérdezést. Pl.:
SELECT TerritoryID FROM Territories WHERE RegionID = ?
  • Készítsünk egy ActiveX transform script-tet, amellyel futtatjuk a lekérdezést, és illesszük be az alábbi sort a script-be:
DTSDestination("TerritoryID") = DTSLookups("GetTerr").Execute(DTSSource("RegionID"))

Könyv
Ez a cikk megtalálható ebben a könyvben: Windows Software Offline 2003 évkönyv 405. oldal

Felhasználási feltételek
A Software Online szoftverfejlesztői magazin mindegyik cikke, minden megjelent képe, és egyéb publikált anyaga szerzői jog védelme alatt áll! Bármilyen formában történő másodlagos terjesztésük, közzétételük vagy felhasználásuk kizárólag a kiadó előzetes írásbeli engedélyével történhet!

Copyright © 1999-2012 Animare Software Kft. Minden jog fenntartva!
| Készült: Animare Stúdió | Adatvédelem | Kapcsolat |