Portál AbcLinuxu, 12. května 2025 16:08
enca -L czech soubor.sql mysql -e "show variables like '%character%'" cat /etc/my.cnf cat ~/.my.cnf
1) zkontrolovat character set u sloupců a tabulky:Pokud to je v pořádku, tak úložiště je nastavený správně a chyba je při komunikaci se serverem. Možné chyby vidím 2:show create table jmeno_tabulky;
2) zkontrolovat character set u databáze:show create database jmeno_databaze;
1) český text není v utf8
2) vložené set names utf8
je někde dále ve skriptu "přebito".
./zaloz uzivatel "popis s diakritikou" (vytvori soubor.sql a pak ho naimportuje do mysql)
show create database databaze;
show create table tabulka;
? Když si na konec toho skriptu dáš:
show variables like '%character%';
, tak to vypíše co ?
1) přepnout kódování terminálu do utf8 2) připojit se k databázi: mysql --default-character-set=utf8 databze 3) select na ty data
wget -O - -q http://kf.fyz.fce.vutbr.cz/pub/abeceda_utf8A odpověz nám na všechny dotazy, ať tady nemusíme věštit z křišťálové koule.
SET NAMES utf8;
Universal transformation format 8 bits; UTF-8 Doubly-encoded to UTF-8 from KOI-8_CS_2
Variable_name Value character_set_client utf8 character_set_connection utf8 character_set_database utf8 character_set_filesystem binary character_set_results utf8 character_set_server latin1 character_set_system utf8 character_sets_dir /usr/share/mysql/charsets/ Database Create Database pureftpd CREATE DATABASE `pureftpd` /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_czech_ci */ Table Create Table ftpd CREATE TABLE `ftpd` (\n `User` varchar(16) NOT NULL default '',\n `status` enum('0','1') NOT NULL default '0',\n `Password` varchar(64) NOT NULL default '',\n `Uid` varchar(11) NOT NULL default '-1',\n `Gid` varchar(11) NOT NULL default '-1',\n `Dir` varchar(128) NOT NULL default '',\n `ULBandwidth` smallint(5) NOT NULL default '0',\n `DLBandwidth` smallint(5) NOT NULL default '0',\n `comment` tinytext NOT NULL,\n `ipaccess` varchar(15) NOT NULL default '*',\n `QuotaSize` smallint(5) NOT NULL default '0',\n `QuotaFiles` int(11) NOT NULL default '0',\n PRIMARY KEY (`User`),\n UNIQUE KEY `User` (`User`)\n) ENGINE=MyISAM DEFAULT CHARSET=latin1 Variable_name Value character_set_client utf8 character_set_connection utf8 character_set_database utf8 character_set_filesystem binary character_set_results utf8 character_set_server latin1 character_set_system utf8 character_sets_dir /usr/share/mysql/charsets/Jinak z php aplikace pod apachem jde do databáze krásně česky vkládat.
defaut character set latin1
.
iconv -fISO-8859-2 -tUTF8//TRANSLIT sqldump.sql | mysql -uuser -p database
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.