Lekce 5 - Oracle krok za krokem: Import
V minulé lekci, Oracle krok za krokem: Export, jsme si ukázali různé typy exportů databáze.
Dnes si vytvořené zálohy dat (export) z minulé lekce zkusíme naimportovat. Exporty jsou ke stažení v lekci o exportu.
Import dat
Import je opak exportu, čili nějaké data chceme nahrát nebo obnovit ze zálohy.
V tabulce nyní máme nějaké data, tak je před importem schválně odstraníme:
DELETE FROM UZIVATELE;
Nyní v tabulce nemáme žádná data. Import dat provedeme podobně jako
export. V levé navigaci si rozklikneme konkrétní databázi, rozklikneme si
položku Tables, klikneme pravým tlačítkem na tabulku
UZIVATELE
a zvolíme Import Data. Vyskočí na
nás okno Data Import Wizard, kterému předáme náš csv
soubor z
minulé lekce. Formát se nám také automaticky změní na csv
a
rovnou zde uvidíme data, které se chystáme importovat:
Skrze tlačítka Další se poté proklikáme až na
Column Definition, kde musíme upravit formát datumů
narození na DD.MM.RR
:
Znovu klikneme na Další a poté už jen na Dokončit. Import dat je tímto hotový.
Pozor! Ze zřejmých důvodů nikdy nemůžeme data naimportovat do tabulky s jinými sloupci než v souboru, ze kterého data importujeme!
Import tabulky
Nyní si zkusíme naimportovat celou tabulku i s daty z našeho
sql
souboru z minulé lekce. Nejprve si smažeme celou tabulku
UZIVATELE
:
DROP TABLE UZIVATELE;
Postup při importu z sql
souboru je zcela odlišný, nicméně
také velmi jednoduchý. Soubor si jednoduše otevřeme v SQL Developeru a
klikneme na tlačítko Run Script:
Alternativně můžeme soubor SQL otevřít např. v Notepad++, zkopírovat skript a vložit do SQL Worksheet. Jen si dávejte pozor na tzv. bílé znaky, které skript mohou znefunkčnit.
Skript se spustí, vytvoří nám tabulku UZIVATELE
a naplní ji
daty.
Import databáze
Složitější je poté import (a také export) celé databáze. V minulé lekci jsme si ukazovali pouze export dat a tabulek z jedné či více databází s čímž si určitě pro začátek vystačíme. Nicméně by bylo vhodné zmínit, že SQL Developer umožňuje také export a import kompletní databáze. Slouží k tomu nástroj Oracle Data Pump, který se skládá z několika komponent:
- klienti příkazového řádku,
expdb
aimpdb
- PL/SQL balíčku
DBMS_DATAPUMP
(také označován jako Data Pump API) - PL/SQL balíčku
DBMS_METADATA
(také označován jako Metadata API)
Klienti expdp
a impdp
zde s využitím procedur z
PL/SQL balíku DBMS_DATAPUMP
a parametry předanými skrze
příkazový řádek vykonávají příkazy pro export resp. import. Předané
parametry povolují export či import dat a metadat pro kompletní databázi
nebo i celou sadu databází.
Jak jsme pochopili, jedná se o poměrně složitou metodu exportu a importu, kterou se nyní na začátku kurzu nebudeme podrobněji zabývat, postačí nám o ní alespoň vědět. Pokud by vás ale zajímalo více, přikládám zde odkaz na oficiální dokumentaci Oracle (bohužel v angličtině), kde se o tématu dočtete více.
V následujícím kvízu, Kvíz - Tvorba, mazání, vkládání a export dat v Oracle, si vyzkoušíme nabyté zkušenosti z předchozích lekcí.