DB_INSERT

DB_INSERT

Akcia DB_INSERT a DBS_INSERT


Funkcia

Akcia vloží jeden alebo viac riadkov do tabuľky.

Deklarácia

DB_INSERT handleIdent_Int, rowIdent, retCodeIdent_Int [ORAHINT hintIdent_Str]
DBS_INSERT dbObjIdent, rowIdent, retCodeIdent_Int [TRANS transHandle_Int] [ORAHINT hintIdent_Str]

 

alebo

 

DB_INSERT handleIdent_Int, structIdent, retCodeIdent_Int [ORAHINT hintIdent_Str] DBS_INSERT dbObjIdent, structIdent, retCodeIdent_Int [TRANS transHandle_Int] [ORAHINT hintIdent_Str]

Parametre

handleIdent_Int

in

Identifikátor typu Int - (handle) spojenia s tabuľkou (DB_CONNECT).

dbObjIdent

in

Odkaz na objekt typu Tabuľka.

rowIdent

in

Identifikátor jedného riadku štruktúry (vkladaný riadok).

structIdent

in

Identifikátor celej štruktúry (vkladané riadky).

retCodeIdent_Int

out

Identifikátor návratového kódu.

transHandle_Int

in

Identifikátor Pripojenia na databázu.

hintIdent_Str

in

Výraz typu String, ktorý definuje Oracle SQL hint. Ten je použitý ako inštrukcia pre optimalizátor výkonu SQL príkazu. Zapisuje hodnotu bez obaľujúcich znakov /*+ <orahint> */.
Príklad použitia je uvedený tu.

Návratový kód

Hodnota parametra retCodeIdent_Int - pozri tabuľku chybových stavov. Je možné získať rozšírenú informáciu o chybe.

Popis

Tabuľka musí byť otvorená s prístupom _DB_MODIFY. Vkladaný riadok alebo štruktúra musia mať korektný typ štruktúry. Všetky položky každého vkladaného riadku musia mať platné hodnoty.

Výhodou akcie DBS_INSERT pri práci s tabuľkou je možnosť vynechať jej otvorenie a zatvorenie (jednoduchší zápis).

Pre D2000 verziu 5: nevýhoda akcie DBS_INSERT je v rýchlosti. Každé volanie akcie DBS_INSERT má za následok, v rámci jej obsluhy v procese D2000 DBManager, nutnosť databázu otvoriť a následne zatvoriť, čo môže byť časovo náročná činnosť a predstavuje z databázového hľadiska pomerne neštandardný postup. Nutnosť otvárania a zatvárania databázy je možné potlačiť v rámci transakčného spracovania tak, že za príkaz uvedieme parameter TRANS.

Pre D2000 verziu 6 a vyššie: optimalizácia procesu D2000 DBManager (recyklovanie spojení, predpripravené spojenia) spôsobila, že akcia DBS_INSERT sa vykoná rovnako rýchlo ako akcia DB_INSERT a navyše sa ušetrí čas potrebný na spracovanie explicitného príkazu na otvorenie databázy DB_CONNECT.


Súvisiace stránky:

Akcie v skriptoch