Autor Zpráva
Jan Vyroubal
Profil *
Dobrý den,

naimportoval jsem databázi z CSV, která byla v UTF8. Pohledem do databáze vidím, že se znaky nepřevedly a tvoří zkomoleniny v diakritice. U daného sloupce je nastaveno uft8_czech.

Předem děkuji za radu, jak to napravit.
Kajman
Profil
Zkuste tedy import znovu a přitom ho správně nastavit.

Pokud jste importoval přes load data infile, tak tam nastavte CHARACTER SET na utf8 nebo binary.
Jan Vyroubal
Profil *
Zkoušel jsem znovu, ale stále stejný problém.

Při mém prvním importu bylo vše v pořádku. MySQL si samo nastavilo UTF a datové typy dle obsahu.

Importuji pomocí:
LOAD DATA INFILE "D:/soubor.csv" INTO TABLE tabulka FIELDS TERMINATED BY ";" OPTIONALLY ENCLOSED BY """" CHARACTER SET LINES TERMINATED BY "\r\n";

Lze doplnit ještě nějakým příkazem, který vytvoří automaticky novou tabulku? (mám spoustu polí)

Děkuji.
Kajman
Profil
Jan Vyroubal:
CHARACTER SET LINES TERMINATED
Za CHARACTER SET vám chybí název kódovací stránky.

Lze doplnit ještě nějakým příkazem, který vytvoří automaticky novou tabulku? (mám spoustu polí)

Myslím, že přímo mysql takový příkaz nemá. Můžete si cvs zanalyzovat nějakým programovacím jazykem a vytvořite odpovídající create table. Pokud chcete z cvs jen nějaké sloupce, tak to load data umí také.
Jan Vyroubal
Profil *
Kajman:
Všiml jsem si a použil jsem UTF8 - až poté napsal tento příspěvek. Nemám tam napsat UTF8_general / UTF8_bin?¨

Děkuji moc
Jan Vyroubal
Profil *
Řešením bylo použití online převedení zápatí a pár řádků z csv do sql - http://www.convertcsvtomysql.com/. Pomocí vygenerovaného SQL dotazu, vytvořit tabulku a zbylá data naimportovat.

Nastavilo mi to automaticky znakovou sadu utf8_general_ci.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0