Projekt: Hesla Jednoty bratrské/2011/w01-sql
Projekt: Hesla Jednoty bratrské/2011/w01-sql
editovat2010-01-08
editovatDostávám se k tomu se na to podívat.
Konverze do MySQL
editovat- mdbtools:
- mdb-export (1) - Export data in an MDB database table to CSV format.
- mdb-schema (1) - Generate schema creation DDL
- mdb-sql (1) - SQL interface to MDB Tools
- mdb-tables (1) - Get listing of tables in an MDB database
- mdb-ver (1) - Return the format of a given MDB database.
- mdbtools-gmdb = GNOME mdb viewer
- Gmdb2
- http://mdbtools.sourceforge.net/ – už neexistuje
- abclinuxu Stanislav Puffler 14. 7. 2004 MDB Tools: MS Access trochu jinak - I, MDB Tools: MS Access trochu jinak - II
Nejdřív získáme strukturu databáze:
mdb-schema Losungen_2011.mdb
a zjistíme, že se jedná jen o jednu tabulku Projekt: Hesla Jednoty bratrské/2011/TABLE Losungen.
2010-02-03
editovat- Microsoft Access z Microsoft office Professional Edition 2003, verze neudána
- otevře soubor, zdá se, OK
- export nabízí:
- Microsoft Office Access (*.mdb; *.adp; *.mda; *.mde; *.ade)
- dBase 5 *.dbf
- dBase III *.dbf
- dBase IV *.dbf
- Excel 3 *.xls
- Excel 4 *.xls
- Excel 5-7 *.xls
- Excel 97-2003 *.xls
- dokumentz HTML *.html
- Lotus 1-3-3 WJ2 *.wj2
- Lotus 1-3-3 WK1 *.wk1
- Lotus 1-3-3 WK3 *.wk3
- Paradox 3 *.db
- Paradox 4 *.db
- Paradox 5 *.db
- Paradox 7-8 *.db
- textové soubory *.txt, *.csv, *.tab, *.asc
- Windows Sharepoint Services ()
- Microsoft Active Server Pages (*.asp)
- Microsoft IIS 1-2 *.htx, *.idc
- Rich Text Format *.rtf
- Sloučení v aplikaci Microsoft Word *.txt
- XML *.xml
- Databáze ODBC
- exportoval jsem do:
- Microsoft Office Access (*.mdb; *.adp; *.mda; *.mde; *.ade)
- dBase III *.dbf Stejné pole lze definovat jen jednou.
- Excel 3 *.xls OK
- dokumentz HTML *.html
- textové soubory *.csv oddělovač středník, text v uvozovkách
- Rich Text Format *.rtf
- XML *.xml: Data (XML), Schéma dat (XSD), Prezentace dat (XSL)
pokusy
editovat2010-02-06
editovatmdb-export -D %F Losungen_2011.mdb Losungen > Losungen_2011.csv
PHPMyAdmin:
- open hes10-07
- Zkopírovat databázi na hes11 Pouze strukturu, Porovnávání: utf8_czech_ci
Struktura: Projekt: Hesla Jednoty bratrské/2011/hes_struct.sql
Pozor na možné problémy s tím, že pole obsahuje konce řádků (0x0D 0x0A = \r\n)
- Nefunguje:
- Řádky ukončené auto
Import v PHPMyAdmin:
- Přepsat data tabulky souborem
- Ignorovat duplicitní řádky
- Sloupce oddělené ,
- Názvy sloupců uzavřené "
- Názvy sloupců escapovány
- Řádky ukončené \n
- Názvy sloupců
Chybný počet položek v CSV datech na řádku 80.
Z toho není jasné, zda se počítají řádek vstupního souboru či řádky výsledné tabulky, tj. pořadí recordu.
Import dat:
- MySQL 5.0 Reference Manual: 12.2.6. LOAD DATA INFILE Syntax: http://dev.mysql.com/doc/refman/5.0/en/load-data.html
mysqlimport -u**** -p**** -v -v --local --delete --fields-terminated-by=, --fields-enclosed-by=\" hes11 Losungen_import.csv Connecting to localhost Selecting database hes11 Deleting the old data from table Losungen_import Loading data from LOCAL file: hesla/2011/w01/mdbtools/Losungen_import.csv into Losungen_import hes11.Losungen_import: Records: 365 Deleted: 0 Skipped: 0 Warnings: 288
Pořád nemůžu přijít na to, kde ale najít ty warningy.
http://dev.mysql.com/doc/refman/5.0/en/mysqlimport.html
- google mysqlimport warnings
- mysqlimport to pravděpodobně neumí:
mysqlimport zřejmě nebude ideální řešení, použiji mysql příkaz LOAD DATA LOCAL INFILE ve skriptu load_data_infile.sql:
TRUNCATE TABLE Losungen_import;
LOAD DATA LOCAL INFILE "Losungen_import.csv"
INTO TABLE Losungen_import
FIELDS
TERMINATED BY ','
ENCLOSED BY '"'
ESCAPED BY ''
LINES TERMINATED BY '\n'
IGNORE 1 LINES;
-- SHOW WARNINGS;
který spustím příkazem:
mysql -v -v -u**** -p**** --show-warnings hes11 < load_data_infile.sql
Vychytám optimální velikosti sloupců; warningy ukazují číslo řádku tabulky, odpovídající datum si spočtu pomocí (např):
mysql -unobody -e 'SELECT DATE_ADD("2011-01-01", INTERVAL 313 DAY);'
Před proházením sloupců tabulky explicitně zadám pořadí vstupních polí:
TRUNCATE TABLE Losungen_import;
LOAD DATA LOCAL INFILE "Losungen_import.csv"
INTO TABLE Losungen_import
FIELDS
TERMINATED BY ','
ENCLOSED BY '"'
ESCAPED BY ''
LINES TERMINATED BY '\n'
IGNORE 1 LINES
(MonSpruch_Bibeltext, Gedenktage_Ek, Ft1_Bibeltext, Ft1_Angaben, Ft2_Bibeltext, Ft2_Angaben,
Los_Nummer, Los_Bibeltext, Lt_Bibeltext, Dt_Text, Dt_Quelle, Gedenktage_Ebu,
Datum, MonSpruch_Stelle, MonSpruch_Quelle, Ft1_Feiertag, Ft1_Stelle, Ft1_Quelle,
Ft2_Feiertag, Ft2_Stelle, Ft2_Quelle, Los_Vortext, Los_Stelle, Los_Quelle,
Lt_Vortext, Lt_Stelle, Lt_Quelle, Dt_Gesangbuch, Dt_Autor, Bibellese_1, Bibellese_2);
-- SHOW WARNINGS;
2010-02-06
editovat- Konečný skript – viz [[/..]]