A dinamikus SQL az Oracle - könnyű és egyértelmű (harmadik rész - ömlesztett készlet műveletek)

A készlet, ha dolgozik a dinamikus SQL

Munkavégzés összetett adattípusok BULK - tömbök és a gyűjtemények növeli a termelékenységet számának minimalizálása összefüggésben átvált a PL / SQL és SQL. Ez az egész kollekció, és nem csak az egyes elemek ide-oda jár.

Az alábbi parancsokkal, és kurzor attribútumok, akkor lehet építeni dinamikus SQL olyan módon, hogy a megfelelően elvégzett munkát tömbök és gyűjtemények.

A szintaxis dinamikus összekapcsolása a tömeges utasítások

BULK utasítás lehetővé teszi az Oracle dolgozni változó SQL-ben. így van. feldolgozni az értékrend. több bármilyen típusú lehet megengedett PL / SQL (index táblázat, beágyazott táblázat, és a változó méretű tömbök). Azonban az elemeket kell szigorúan adattípus SQL, KAR. DATE vagy számot. Dinamikus gyűjtemények lehet használni a parancsokat: EXECUTE KÖZVETLEN. Lehívás és forall.

EXECUTE azonnali és BULK

Ezek az operátorok lehetővé teszi, hogy a kapcsolat lehetővé teszi meghatározott változók vagy érveket, és adja át paraméterként egy dinamikus SQL. A szintaxis a következő:

Mivel a kézi BULK visszatérhet adatok gyűjteménye a dinamikus SQL.

És hozd BULK
BULK lehetővé teszi, hogy válassza ki az adatokat a dinamikus kurzor ugyanúgy, mint a mintát egy statikus kurzor. A szintaxis a következő:


Ha a változók száma határozza meg a BULK COLLECT INTO. meghaladja az oszlopok száma a lekérdezés, Oracle sikertelen.

Ez a szintaxis segítségével csatlakoztathatja a bemeneti változók dinamikus SQL. Ezen felül, akkor használja az EXECUTE

A dinamikus sorban lehetnek inszertet. UPDATE, vagy DELETE (de nem SELECT).
Példák a dinamikus SQL bulk

Az alábbi példa bemutatja az ömlesztett kimenetre adatok nyílt tömbök BEHÍVÁSA

A tömeges tömeges frissítés rekordok együtt visszaadja az eredményt kerül a gyűjtemény enames.

A példa azt mutatja, hogyan kell használni, és forall használ.