Nastavení databáze pro vyhledávání /diakritika/

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
igor.pocta
Člen | 100
+
0
-

Ahoj,

mám nastavenou tabulku i sloupce na UTF8_BIN a mám problém s vyhledáváním bez diakritiky. Typ je InnoDB.

Např. mám jméno „Počta“, hledám dotaz „Pocta“ a nic mi to nenajde. „počta“ mi to také nenajde.

Co dělám špatně? Zkoušel jsem i jiná kódování /utf8_czech_ci i utf16, utf32/ a maximálně to vyřešilo problém s hledáním „počta“.

Vygenerovaný dotaz z Nextras/ORM

SELECT `e`.* FROM `employee` AS `e` WHERE (((`e`.`firstname` LIKE '%poc%') OR (`e`.`lastname` LIKE '%poc%')) AND (`e`.`state` = 'active') GROUP BY `e`.`id`

Díky za pomoc

MW
Člen | 626
+
+1
-

Porovnávání by mělo byt „utf8_general_ci“ .. aby to fungovalo…
pak např.

WHERE lastname LIKE '%poc%' COLLATE utf8_general_ci".
igor.pocta
Člen | 100
+
0
-

@MW Děkuji moc! Funguje to.