MySQL 4.1.12 a Latin_1_Swedish

humanoidvani humanoidvani na gmail.com
Sobota Srpen 12 13:30:09 CEST 2006


Dobrý den,

řeším to takto:

// $conn = připojení k DB

define('DB_INIT_CODE_1', "SET NAMES utf8");
define('DB_INIT_CODE_2', "SET CHARACTER SET utf8");
define('DB_INIT_CODE_3', "SET COLLATION_CONNECTION='utf8_general_ci'");


if (version_compare(phpversion(), "4.3.10", ">=")>0)
{
	$query = @mysql_query("SHOW VARIABLES LIKE 'version'", $conn);
	$row = mysql_fetch_row($query);
	$mysql_ver = $row[1];

	if (version_compare($mysql_ver, '4.2.0', '>=')>0)
	{
		$i = 1;
		while (defined('DB_INIT_CODE_'.$i))
		{
			$sQuery = constant('DB_INIT_CODE_'.$i);
			mysql_query($sQuery, $conn);
			$i++;
		}
	}
}



daniel.hrbac na gmail.com wrote:
> Dobrý den,
>
> rozhodl jsem se používat interní informační systém a za tím
> účelem byly napsány stránky v php a databáze. při instalaci na
> vnitřní server (Mandriva 2006.0) jsem nainstaloval mysql, apache, php
> - vše pouze z instalačních zdrojů MDK. Díky mé relativní
> nezkušenosti mi chvilku trvalo než se to rozběhlo ale povedlo se.
> Hned z počátku se projevila nutnost selektovat podle české abecedy
> a mít v tabulce písmena jako Ř,ť apod. Všechno to fungovalo až na
> jednu konstantu v tabulce a to "Kč" - pořád to bylo "K?". Jako chybu
> jsme si našli, že v tabulkách a ve výpisu systémových
> proměnných je jako znaková sada latin1_swedish..
>
> Takže jsme se v tom začali vrtat, nastavovali stránky v my.cnf apod
> ale výsledek nebyl nic moc a zejména se objevila chybová hláška
> Illegal mix of collations (latin2_general_ci,IMPLICIT) and
> (latin1_swedish_ci,COERCIBLE) for operation 'like'. Tak jsme googlili a
> zjistili, že to je jakási chybka v MySQL, která je později
> opravená a e ji teda opravit jde taky, ale jen úpravou perlového
> skriptu a to je tak nějak přes naše schopnosti. prostě jsme to
> nějak naházeli zpátky a funguje to tak ja to má i když to hlásí
> kódování swedish. podotýkám, že mysql běží v zásadě v
> defaultním nastavení, případná konfigurace mě teprve čeká.
>
> chci se ale zeptat zda jste někdo dospěli do stejného stavu jako
> já, tedy, že Vám běhá čeština tak jak má, ale přitom se to
> tváří že to je švédština?
>
> děkuji,
>
> PS:
> - ano, zkoušeli jsme celou DB udělat znova
> - necítím se vůbec nadšený myšlenkou upgadovat mysql odjinud než
> z mandrivy
>
>
>
> 
> 
> -- 
> 
> Daniel Hrbac
> talk na advokati.biz
> skype: hrbacdaniel



Další informace o konferenci Linux