4. diel - Oracle krok za krokom: Vývoz
V minulej lekcii, Oracle krok za krokom: Vkladanie a mazanie dát v tabuľke , sme si ukázali vkladanie a mazanie záznamov.
Dnes si vyskúšame vyexportovať databázu, ktorá sa nám bude určite mnohokrát hodiť.
Export
Export (alebo tiež "záloha") je súbor so SQL príkazy, ktorá nám môže slúžiť na zálohu, migráciu či na import databázy.
Export môžeme rozdeliť na:
- kompletný export - súbor bude obsahovať ako štruktúru tabuliek, tak i ich dáta
- export štruktúry - súbor bude obsahovať len štruktúru databázy taký export môže obsahovať pokojne všetky alebo len vybrané tabuľky
- taký export môže obsahovať pokojne všetky alebo len vybrané tabuľky
- export dát - súbor bude obsahovať len dáta tabuliek aké tabuľky môžeme tiež špecifikovať
- aké tabuľky môžeme tiež špecifikovať
Takto rozdeliť môžeme aj typy importov, keďže tento súbor budeme pravdepodobne importovať.
Najprv musíme nejaké dáta vložiť do databázy, aby sme ich mohli exportovať. Ak ste ich v minulej lekcii zmazali, môžeme si znova pár záznamov z minulej lekcie vložiť týmto SQL príkazom:
INSERT ALL INTO UZIVATELE ( UZIVATELE_ID, JMENO, PRIJMENI, DATUM_NAROZENI, POCET_CLANKU ) VALUES ( 1, 'Karel', 'Novák', '25.6.1979', 10 ) INTO UZIVATELE ( UZIVATELE_ID, JMENO, PRIJMENI, DATUM_NAROZENI, POCET_CLANKU ) VALUES ( 2, 'Adam', 'Mladý', '12.8.2001', 2 ) INTO UZIVATELE ( UZIVATELE_ID, JMENO, PRIJMENI, DATUM_NAROZENI, POCET_CLANKU ) VALUES ( 3, 'Petr', 'Starý', '13.4.1992', 18 ) SELECT 1 FROM DUAL;
Máme teda v databáze záznamy troch osôb:
Export dát
Skúsme si najprv exportovať dáta konkrétnej tabuľky. Môžeme to najjednoduchšie urobiť tak, že pravým tlačidlom klikneme na konkrétnu tabuľku vľavo v navigácii a zvolíme možnosť Vývoz:
Po kliknutí na tlačidlo Export uvidíme toto okno:
Tento spôsob exportu je rýchly a tiež vhodný, ak nepotrebujeme špecifikovať napríklad znakovú sadu, kompresiu súboru, doplňovacie príkazy a ďalšie podrobnosti. Môžeme u tohto spôsobu špecifikovať formát súboru exportu:
- CSV - využíva sa často pre export do programu MS Excel, dáta sú oddelené čiarkou
- JSON - hojne sa využíva v JavaScripte a API webových aplikácií
- XML, PHP array a ďalšie.
Teraz pre export zvolíme formát .sql
, a to tak, že klikneme
na tlačidlo Browse, a ako File Type zvolíme
SQL Script (* .SQL):
Pre budúce export je SQL formát tiež najvhodnejšie. Môžeme tiež rovno zmeniť umiestnenie, kde sa nám nový súbor vytvorí. Ak máme hotovo, klikneme na tlačidlo Ďalej a zobrazí sa nám nasledovné:
Tu môžeme kliknutím pod Columns špecifikovať, aké stĺpce sa majú exportovať. My ale nechávame vyexportovať všetky stĺpce, a klikneme teda znovu na tlačidlo Ďalej a potom na tlačidlo Dokončiť.
Súbor sa vyexportovali a rovno sa nám automaticky otvoril v SQL Developer:
Úplne na začiatku máme informáciu o tom, kedy sme súbor vyexportovali.
Sivou farbou máme označené komentáre, čiže riadok komentujeme
pomocou dvoch pomlčiek --
. Všetko, čo bude za týmito
spojovníkom na rovnakom riadku už bude komentár a nie je na ne z
programového hľadiska braný ohľad. Viacriadkové komentáre začneme pomocou
znakov /*
a ukončujeme pomocou */
, ako to môžeme
poznať z väčšiny programovacích jazykov.
O pár riadkov nižšie vidíme nadpis DDL for Table UZIVATELE
,
čo vo voľnom preklade znamená "jazyk pre definíciu dát tabuľky
UZIVATELE
", a v časti pod ním si okrem iného môžeme
všimnúť nami použitých SQL dotazov CREATE
a
INSERT
. Ďalej máme časť s nadpisom
DDL for Index UZIVATELE_PK
, ktorá obsahuje informácie o hlavnom
kľúči tabuľky UZIVATELE
. Na konci dokumentu potom vidíme
časť Constraints for Table UZIVATELE
, kde sú vypísané
obmedzenia pre jednotlivé stĺpce.
DDL je skratka D ata D efinition L Anguage. DDL používa príkazy napr. Na vytvorenie databázy, užívateľov, tabuliek, obmedzenia a ďalšie.
DML je skratka D ata M
anipulation L Anguage. DML používa príkazy
UPDATE
, DELETE
a INSERT
, čiže príkazy
na manipuláciu s dátami.
Tento súbor si zatiaľ ponechajte, využijeme ho pre budúce import.
Ak chceme exportovať iba dáta, postup je rovnaký, len v prvom kroku exporte zrušíme výber u Vývoz DLL:
Zvyšok exportu prebieha rovnako, po dokončení sa nám súbor opäť sám otvorí v SQL Developer:
Vidíme, že tentoraz súbor okrem informácie o vytvorení obsahuje len
príkazy INSERT
. Tento súbor môžete však zmazať, potrebovať
ho už nebudeme.
Aby sme si ukázali export aj pre iný formát ako sql
, skúsime
si dáta ešte vyexportovať do formátu csv
. Rovnakým postupom v
oknu s exportom opäť zrušíme výber u Export DLL, u
Vývoz Dáta zmeníme Format na
csv
, Encoding na Cp1250
a ako
File Type zvolíme tiež csv
:
Encoding je dôležitá časť. Ak súbor bude používať kódovanie, ktoré nepodporuje diakritiku, môžeme mať problém s prečítaním znakov pri ich importu (budeme tam mať tzv. Klikiháky).
Po exporte sa nám vytvorí súbor csv
, ktorý potom môžeme
otvoriť napr. V Exceli (resp. Importujeme CSV súbor). Pokiaľ ho otvoríme,
uvidíme v ňom len názvy stĺpcov tabuľky, z ktorej sme exportovali, a
hodnoty našich troch záznamov. Tento súbor si tiež ponechajte, využijeme ho
pri importe dát v nasledujúcej lekcii.
Export celej databázy
Ak chceme vyexportovať kompletne celú databázu so všetkými tabuľkami, je to opäť veľmi jednoduché. V hornom menu zvolíme Tools -> Database Export. Potom musíme zvoliť databázu, ktorú chceme vyexportovať. Môžeme si opäť vybrať či chceme exportovať dáta, DDL, či oboje. V ďalších krokoch môžeme zvoliť, čo všetko chceme exportovať, alebo či napr. Chceme nejakú tabuľku či stĺpec z exportu vynechať.
Export z viacerých databáz naraz
Poslednou vecou, ktorú si v tejto lekcií ukážeme, je export tabuliek z niekoľkých databáz naraz. Využijeme na to nástroj Cart (teda košík). V hornej lište zvolíme položku View a klikneme na Cart:
Otvorí sa nám podokno košíka, kam môžeme pretiahnuť tabuľky z akejkoľvek databázy, ku ktorej sme pripojení. Opäť môžeme zvoliť, či chceme exportovať DDL (štruktúru), DML (dáta), alebo oboje, a klikneme na tlačidlo Vývoz Cart:
Otvorí sa nám okno veľmi podobné tomu, s ktorým sme dnes už pracovali. Klikneme na tlačidlo Použiť a export je hotový:)
V ďalšej lekcii, Oracle krok za krokom: Import , si ukážeme import dát.
Mal si s čímkoľvek problém? Stiahni si vzorovú aplikáciu nižšie a porovnaj ju so svojím projektom, chybu tak ľahko nájdeš.
Stiahnuť
Stiahnutím nasledujúceho súboru súhlasíš s licenčnými podmienkami
Stiahnuté 26x (1.13 kB)
Aplikácia je vrátane zdrojových kódov