6. diel - SQLite - Import
V minulej lekcii, SQLite - Export , sme si ukázali export dát z databázy v SQLite. Naučili sme sa exportovať do rôznych súborov a pred exportom súbory rôzne upravovať.
V dnešnom SQLite tutoriále sa naučíme importovať zálohy databázy z SQL
súboru a tabuliek z CSV
súboru. Stiahnite si priložené zálohy
tabuliek na konci článku.
K importu dát sa dostaneme cez Súbor -> Import:
A ďalej môžeme vybrať jednu z dvoch možností: Databáza z SQL súboru... a Tabuľka zo súboru CSV.... Na import tabuľky musíme mať už pripravenú databázu (aj keby prázdnu), avšak na import databázy nemusíme mať nič. Preto začneme importom databázy.
Databáza z SQL súboru...
Zvolíme možnosť Databáza z SQL súboru.... Potom
vyberieme náš stiahnutý súbor uzivatele.sql
a klikneme na
Otvoriť. Potom sa nám otvorí nasledujúce okno:
Tu vyberieme, kam sa uloží samotná databáza, s ktorou bude SQLite
pracovať. Dôjde teda v podstate k prekladu a prekopírovaniu
.sql súboru do súboru, s ktorým vie pracovať SQLite (v
našom prípade súbor .db
). Tento súbor potom budeme pri úprave
obsahu editovať, medzitým, čo súbor .sql
zostane nezmenený. Do
Názov súboru: vložíme uzivatele.db
. Potom
klikneme na Uložiť. Tým sa vytvorí súbor
.db a databáza sa otvorí. Import je tým dokončený.
Databázu si nechajme otvorenú.
Môžeme importovať aj súbory s koncovkou .txt, ak je ich obsah rovnaký ako obsah súboru .sql.
Tabuľka zo súboru CSV...
Teraz, keď máme naimportovanú databázu, môžeme naimportovať tabuľku z
nášho stiahnutého súboru adresy.csv
. Tentokrát zvolíme teda
druhú možnosť Tabuľka zo súboru CSV.... Potom vyberieme
náš stiahnutý súbor adresy.csv
a klikneme na
Otvoriť. Zobrazí sa nám okno s možnosťami importu:
Názov tabuľky
Tu máme možnosť ponechať ponúknutý názov, alebo si ho
zmeniť. Ide o názov tabuľky, pod ktorým sa tabuľka
importuje. My ponecháme ponúknutý názov
adresy
.
Názvy stĺpcov v prvom riadku
Otvoríme si importovaný súbor adresy.csv
v aplikácii
Poznámkový blok
. V prvom riadku vidíme názvy stĺpcov
id_uzivatele
a adresa
. Máme teda exportovanú
tabuľku vrátane názvov stĺpcov. Môžeme teda voľbu
Názvy sloupců v prvním řádku
zaškrtnúť a importovať
hodnoty z prvého riadku ako názvy stĺpcov tabuľky.
Oddeľovač poľa
Vyberieme znak, ktorým sú jednotlivé dáta v rámci jedného záznamu
(riadku) od seba oddelené. Zase sa pozrieme do súboru adresy.csv
v aplikácii Poznámkový blok
. Vidíme použitý oddeľovač
;
. Ako Oddeľovač poľa teda vyberieme
;
.
Pokiaľ nenájdeme vo výbere použitý oddeľovač z importovaného súboru, môžeme použitý oddeľovač vložiť pomocou voľby Other.
Možnosť Karta
je pre súbory viditeľne
neoddelená žiadnym znakom.
Úvodzovka
Ak v importovanom súbore existujú dáta, ktoré obsahujú rovnaký znak,
akým je oddeľovač, potom celé slovo je zabalené do úvodzoviek. Preto
existuje možnosť Uvozovka
, kde volíme podobu úvodzovky. V
našom súbore adresy.csv
taký znak nemáme, preto necháme
defaultnú možnosť "
.
Kódovanie
Táto ponuka nám umožní zvoliť, aké kódovanie používa náš
CSV
súbor. Aby sa nám správne zobrazovala slovenská diakritika,
ponecháme defaultnú možnosť UTF-8
.
Orezať pole?
Pri zaškrtnutí tejto možnosti sa z polí odstránia prebytočné medzery
na začiatku a na konci hodnôt. Napr. zo záznamu
________Miroslav____
tak dostaneme iba Miroslav
.
(_
v ukážke predstavuje medzeru). Voľbu necháme
zaškrtnutú.
Pokročilých
Po rozkliknutí tejto voľby sa nám otvoria ďalšie možnosti:
Disable data type detection
Zaškrtnutím vypíname detekciu dátových typov - dáta sa naimportujú bez uvedenia dátového typu. Necháme nezaškrtnuté.
Ignorovať predvolené hodnoty
Táto voľba sa rieši v prípade importu do už existujúcej tabuľky a importovaný súbor obsahuje prázdne polia. Pokiaľ má tabuľka pre tieto polia defaultnú hodnotu (takú, ktorá sa vyplní pri prázdnom poli), bude táto defaultná hodnota doplnená do poľa. Ak však vyberieme pri importe túto možnosť, defaultné hodnoty sa nevložia a pole zostane prázdne. Necháme nezaškrtnuté.
Fail on missing values
Pri zaškrtnutí tejto možnosti sa preverí, či pre nejaké pole v importovanom súbore platia tieto podmienky:
- pole je označené ako
NOT NULL
tj musí byť vyplnené - pole nie je vyplnené
- pre pole nie je zadaná žiadna východisková hodnota
Conflict strategy
Tu máme možnosť vybrať riešenie konfliktnej situácie medzi dvoma hodnotami v poli, ktoré je označené ako unikátne. Táto situácia môže nastať napríklad pre hodnoty poľa označené ako primárny kľúč. Môžeme vybrať tieto možnosti:
Abort import
Import sa ukončí.
Ignore row
Riadok, ktorý vyvoláva konflikt bude pri importe preskočený.
Replace existing row
Už existujúci riadok bude nahradený novými dátami z importovaného súboru.
Ponecháme defaultnú prvú možnosť Abort import.
Nakoniec stlačíme OK
:
Kontrola dát
Otvoríme si tabuľku adresy
v SQLite:
Vidíme, že import bol úspešný.:-)
V ďalšej lekcii, SQLite - Radenie, Limit a agregačné funkcie , sa pozrieme na radenie a agregačné funkcie.
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é 446x (704 B)
Aplikácia je vrátane zdrojových kódov v jazyku SQL