- Vytvoril D2000 Dev Team na okt 12, 2017
Akcia DB_READ_BLOB a DBS_READ_BLOB
Funkcia
Čítanie jedného záznamu typu LOB z tabuľky v databáze.
LOB (Large OBject) môže byť typu BLOB (Binary LOB), CLOB (Character LOB) alebo XMLType (CLOB pre prácu s xml dátami v Oracle DB).
LOB (Large OBject) môže byť typu BLOB (Binary LOB), CLOB (Character LOB) alebo XMLType (CLOB pre prácu s xml dátami v Oracle DB).
Deklarácia
DB_READ_BLOB handleIdent_Int, lobColNameIdent_Str, lobFileNameIdent_Str, retCodeIdent_Int, idKeyIdent [ORAHINT hintIdent_Str] DB_READ_BLOB handleIdent_Int, lobColNameIdent_Str, lobFileNameIdent_Str, retCodeIdent_Int WHERE strExpression_Str[ORAHINT hintIdent_Str] DBS_READ_BLOB dbObjIdent, lobColNameIdent_str, lobFileNameIdent_Str, retCodeIdent_Int, idKeyIdent [TRANS transHandle_Int] [ORAHINT hintIdent_Str] DBS_READ_BLOB dbObjIdent, lobColNameIdent_str, lobFileNameIdent_Str, retCodeIdent_Int WHERE strExpression_Str [TRANS transHandle_Int] [ORAHINT hintIdent_Str]
Parametre
handleIdent_Int | in | Identifikátor typu Int - (handle) spojenia s databázou (DB_CONNECT). |
lobColNameIdent_Str | in | Názov stĺpca typu LOB v tabuľke. |
lobFileNameIdent_Str | in | Názov súboru, kde bude umiestnený prečítaný záznam typu LOB. |
transHandle_Int | in | Identifikátor Pripojenia na databázu. |
idKeyIdent | in | Kľúčová hodnota identifikujúca riadok (ak sa kľúč skladá z viacerých stĺpcov, idKeyIdent je štruktúra z rovnakého typu ako tabuľka, do úvahy sa berú iba hodnoty kľúčových stĺpcov). |
strExpression_Str | in | Výraz typu String, ktorý definuje čítaný riadok tabuľky. |
dbObjIdent | in | Odkaz na objekt typu Tabuľka. |
retCodeIdent_Int | out | Návratová hodnota typu Int - úspešnosť akcie. |
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
Akcia DB_READ_BLOB umožňuje prečítať jeden záznam typu
LOB z tabuľky v databáze.
Tabuľka je daná buď identifikátorom handleIdent_Int, ktorý bol získaný predchádzajúcim volaním akcie
DB_CONNECT alebo identifikátorom dbObjIdent, ktorý predstavuje objekt typu
Tabuľka. V druhom prípade ide o DBS* akcie, ktoré nevyžadujú
explicitné akcie otvorenia a zatvorenia databázy (DB_CONNECT a
DB_DISCONNECT). Taktiež je možné použiť identifikátor bežiacej transakcie
transHanlde_Int, ktorý bol získaný predchádzajúcim volaním akcie DB_TRANS_OPEN.
Prečítaný záznam typu LOB je umiestnený do súboru, ktorého meno je dané hodnotou identifikátora lobFileNameIdent_Str. Ak súbor pred vykonaním akcie existuje, bude prepísaný.
Hodnota identifikátora lobColNameIdent_Str označuje meno stĺpca v tabuľke, ktorého typ je LOB a bude čítaný.
Riadok, na ktorom prebehne čítanie, môže byť určený dvoma spôsobmi:
Prečítaný záznam typu LOB je umiestnený do súboru, ktorého meno je dané hodnotou identifikátora lobFileNameIdent_Str. Ak súbor pred vykonaním akcie existuje, bude prepísaný.
Hodnota identifikátora lobColNameIdent_Str označuje meno stĺpca v tabuľke, ktorého typ je LOB a bude čítaný.
Riadok, na ktorom prebehne čítanie, môže byť určený dvoma spôsobmi:
- Použitím parametra idKeyIdent. V tomto prípade musí byť v konfigurácii objektu typu Tabuľka uvedená kľúčová položka. Potom je v tabuľke hľadaný riadok, ktorý má zhodnú hodnotu pre kľúčovú položku.
- Hodnotou výrazu strExpression_Str, ktorý predstavuje klauzulu WHERE pre SQL príkaz SELECT vykonávajúci výber z tabuľky
- _ERR_FILE_ERROR - pri ľubovoľnej chybe pri práci so súborom.
- _ERR_NO_DATA - ak je čítaný záznam v databáze NULL.
- Iné štandardné chybové kód.
Poznámka
Akcia bola testovaná na súbor veľký cca 175 MB.
Súvisiace odkazy
Súvisiace stránky:
Pridať komentár