Autor, Název akce Databázové systémy a SQL Lekce 9 Daniel Klimeš Autor, Název akce Zdroje dat – formáty Daniel Klimeš, Databázové systémy a SQL §Plain text = textový soubor §Sloupce oddělené oddělovačem § Poziční formát §Databázově nezávislé §MS Excel §Přímo do MS Access, MS SQL server §Přes plain text, CSV formát §Jiná databáze §Datové pumpy §Databázové linky § XML §Standard pro výměnu dat § Strukturovaný textový soubor Autor, Název akce Import dat z plain textu Daniel Klimeš, Databázové systémy a SQL • Importní grafické rozhraní cílové databáze • Pokud existuje •Sada INSERT příkazů • nutné plain text rozebrat a následně sestavit do INSERT příkazů • sestavení např. v MS Excel • použitelné do max. desítek tisíc řádků •Datová pumpa • nutná konfigurace • vhodné pro velké množství záznamů • Externí tabulka (ORACLE) • pro opakovaný import • po konfiguraci databáze přistupuje k souboru jako k běžné tabulce • SELECT dotazy přímo nad textovým souborem Autor, Název akce Datové pumpy Daniel Klimeš, Databázové systémy a SQL § SW aplikace § Součást databáze (sqlldr ORACLE) § Aplikace třetích stran §„univerzální“, databázově nespecifické § Přenos dat mezi databázemi §Připojení k databázi přes standardní rozhraní §ODBC §OLE DB §ADO §Často chybí podpora specifických datových typů • Autor, Název akce ORACLE – import plain textu Daniel Klimeš, Databázové systémy a SQL §Generování INSERT dotazů § příprava skriptu včetně definice tabulky (CREATE TABLE) §Spuštění skriptu v SQLPLUS, SQL DEVELOPER §SQL LOADER (sqlldr) §Datová pumpa §Ovládaný přes řídící skript (*.ctl) § Spuštění: Sqlldr control=soubor.ctl , userid=student@TESTORCL §Cílová tabulka musí existovat §Externí tabulky § CREATE TABLE ( ) ORGANIZATION EXTERNAL (popis souboru) Autor, Název akce Příklad importu Daniel Klimeš, Databázové systémy a SQL •Soubor klientky.txt § ID_KLIENTKY Integer (9) § Šifrované RČ (MD5) Text (32) § Datum narození Date § Pojišťovna Text (3) § Okres Text(30) § Rizikovost Integer (1) § CENTRUM Text(3) • OPTIONS (ERRORS=50000) LOAD DATA INFILE "C:\export\klientky.txt" APPEND INTO TABLE KLIENTKY FIELDS TERMINATED BY ";" OPTIONALLY ENCLOSED BY "'" (ID_KLIENTKY, RC, DAT_NAR DATE "DD.MM.YYYY", POJISTOVNA, OKRES "TRIM(:OKRES)", RIZIKOVOST, CENTRUM) •Konfigurace pro sqlloader Autor, Název akce ODBC konfigurace Daniel Klimeš, Databázové systémy a SQL Autor, Název akce OLEDB konfigurace Daniel Klimeš, Databázové systémy a SQL •.udl soubor Autor, Název akce Databáze a R Daniel Klimeš, Databázové systémy a SQL library(RODBC) myconn <-odbcConnect("TRIALDB_ODBC", uid="klimes", pwd="") b <- sqlFetch(myconn, "TEST_KM") #načtení vlastní tabulky #načtení tabulky z jiného schématu d <- sqlFetch(myconn,"ACT_PROD.EP2_SLEDOVANE_PARAMETRY_D3") #načtení SQL dotazu pundat <- sqlQuery(myconn, "select * from Punishment") close(myconn) •Načtení dat přímo z databáze – ODBC rozhraní Autor, Název akce POSTGRESQL Daniel Klimeš, Databázové systémy a SQL COPY country FROM ‘C:/vstup.txt’ COPY country TO ‘C:/vystup.txt’ Podporované formáty : text, csv