Autor Zpráva
jio
Profil
Dobrý večer. Prosím opět o radu.
Mám db v MySQL 4.1.20-standard-log běžící na serveru ic.cz v utf-8, kterou využívá Wordpress. Ve sloupci Porovnání v phpMyAdmin 2.6.2 je ale latin2_czech_cs. Takto si tabulky založil sám WordPress. Create table po exportu vypadá typicky takto:


CREATE TABLE `wp_postmeta` (
`meta_id` bigint(20) NOT NULL auto_increment,
`post_id` bigint(20) NOT NULL default '0',
`meta_key` varchar(255) collate latin2_czech_cs default NULL,
`meta_value` longtext collate latin2_czech_cs,
PRIMARY KEY (`meta_id`),
KEY `post_id` (`post_id`),
KEY `meta_key` (`meta_key`)
) ENGINE=MyISAM DEFAULT CHARSET=latin2 COLLATE=latin2_czech_cs AUTO_INCREMENT=701 ;

.

má tedy u textových položek COLLATE latin2_czech_cs a CHARSET=latin2 a v Total Comanderu v prohlížení s volbou UTF-8 vidím čitelný text u diakritiky a bez CR, pouze s LF.

Potřebuji převést celý Wordpress na hyperlinx.cz, který používá MySQL - 4.0.23_Debian-3ubuntu2.4-log
Doufám, že jsem ty verze MySQL vypsal správně.
V phpMyAdmin - 2.8.1 sloupec Porovnání není uveden.

Problém je v tom, že při importu tohoto souboru dostanu hlášku:

You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'collate latin2_czech_cs,
`meta_key` varchar(60) collate lati



Díval jsem se na http://dev.mysql.com/doc/refman/4.1/en/charset-collate.html,
ale nevidím v čem je problém. Když Collate i Charset odstraním, tak po importu dostanu čínské znaky i když mám nastaveno mysql_query("SET CHARACTER SET utf8");.

Když nahradím latin2_czech_cs výrazem utf8_general_ci a CHARSET=latin2 CHARSET=utf8 popřípadě Character set utf8 (jak je uvedeno v manuálu) dostanu stejný výsledek:

You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'collate utf8_general_ci,
`meta_key` varchar(60) collate utf8



Omlouvám se předem za dlouhý popis.

Můžete poradit v čem je problém?
koudi
Profil
Mam pocit (nejsem si jistej), že porovnávání je právě až od 4.1.
jio
Profil
Omloufám se za špatně čitelné formátování, ale neumím si poradit s pre.

koudi
Jak to ale řešit?
koudi
Profil
Že z toho vyexpoovanýho souboru musíš odstranit všechny části, týkající se porovnávání. Ale radši s tim počkej, až ti to někdo potvrdí. Nejsem si tim tak jistej.
Kajman_
Profil *
Nastavte si při exportu, že to chcete komptatibilní s mysql40.
jio
Profil
Kajman_
Děkuji, pomohlo to. Create database je v tom případě bez všech COLLATE a DEFAULT CHARSET a následný import proběhl správně.

Předtím, jsem to všechno odstranil ručně a po importu to bylo s čínštinou. Nevím proč, patrně problém mezi ušima.
tooookoš
Profil *
jak odstranit ochranu proti zápisu v total comanderu (the sims2) chci tam dát ***** a nejde to předem mooooc děkuji naschledanou
Toto téma je uzamčeno. Odpověď nelze zaslat.