Autor | Zpráva | ||
---|---|---|---|
Ikarus Profil |
#1 · Zasláno: 8. 11. 2004, 15:02:17
Ahoj, nevíte někdo, jak donutit mysql, aby řadila správně podle české abecedy (znaky s diakritikou a nejlépe i ch). Díky
|
||
llook Profil |
#2 · Zasláno: 8. 11. 2004, 18:17:32
Třeba takhle, že řádku českého textu nastavíš znakovou sadu a jazyk. Třeba takhle pro iso-8859-2:
Takhle pro windows-1250:
Pak by to snad mělo řadit podle české abecedy. Nikdy jsem to nezkoušel a ani nevím, od které verze to MySQL umí, takže to bude chtít experimentovat. Pokud se nechce listovat manuálem k MySQL (v kapitole 11), pak bych doporučil v konzolovém klientovi si pohrát s těmito dotazy:
|
||
curo Profil |
#3 · Zasláno: 9. 11. 2004, 00:10:39
Improved support for character set handling was added to MySQL in Version 4.1 :-( http://dev.mysql.com/doc/mysql/en/Charset.html
mám ten istý problém, ale na ver. 4.0.16 |
||
Časová prodleva: 1 měsíc
|
|||
Michal_Stanko Profil * |
#4 · Zasláno: 16. 12. 2004, 02:06:47
Radenie podľa cp1250 (Windows Central European) je možné od verzie 4.1, ktorá už je dostupná ako stable release. Môžete si nastaviť radenie na celú DB takto:
ALTER DATABASE nazov_vasej_databazy CHARACTER SET cp1250 COLLATE cp1250_czech_ci Bohužiaľ to však vyzerá že s radením cp1250_czech_ci (ktoré by malo správne dávať CH za H) je tam ešte nejaký problém (presnejšie bug). Takže zatiaľ jedine bez CH, ale aspoň už Š, Č a podobne nekončia na konci vrátených záznamov :-) Pozri tiež dokuemntáciu: http://dev.mysql.com/doc/mysql/en/Charset-ce-sets.html http://dev.mysql.com/doc/mysql/en/Charset-database.html ...a aj ďalšie kapitoly. |
||
Časová prodleva: 2 měsíce
|
|||
Ikarus Profil |
#5 · Zasláno: 14. 2. 2005, 15:12:15
Přišel už někdo na nějaký způsob jak donutit řadit podle češtiny mysql 4.0.x??
Já našel jen tohle: http://zahradil.info/?q=ceske-razeni-v-mysql&category=ruzne ale to řeší problém opravdu jen částečně... |
||
Lemur Profil * |
#6 · Zasláno: 14. 2. 2005, 17:49:01
Jsou tři možnosti:
1) Upgrady MySQL, nebo třeba používat ISO 8859-2 místo Windows1250. 2) Pokud je položek málo, třídit to až v PHP (buďto pomocí colate(), nebo, pokud není locale, tak si to napsat sám). 3) Pokud je položek moc, ale málokdy se mění, udržovat pořadí bokem (jako obyč. číslo) a při přidávání a odebírání ho vždy znovu vytvořit (jde to i pomocí sql). Výpis je velmi rychlý (třídit čísla je mnohem snažší než řetězce), ale úpravy relativně pomalé, takže se hodí třeba pro seznami jměn, které se mění jen zřídka. Vytváření pořadí viz bod 2. Ohledně CH - CH je hnusnost, plně funkční je použití vlastních třídících rutin, kde se dočasně nahrazuje nějakým v češtině nepoužívanými znaky (já používám #, |, ^ ...) a při výpisu ho nahrazovat zpět. |
||
Časová prodleva: 2 měsíce
|
|||
Yoz Profil * |
#7 · Zasláno: 1. 4. 2005, 16:23:41
MySQL 4.1 donutite pracovat s win1250 prikazom:
SET character_set_results=cp1250, character_set_connection=cp1250, character_set_client=cp1250 |
||
Časová prodleva: 2 měsíce
|
|||
PetanekDedynek Profil * |
#8 · Zasláno: 15. 6. 2005, 14:25:01
Já mám ten samý problém : všechno se mi řadí dobře až na š a ž, mají totiž podobnou prioritu jako jiná písmena..... ale našel jsem odkaz, kde to je popsano a jsou tam i nějaké soubory jako patche, avšak nevim jestli to bude chodit v MySQL 4.1......, mrkněte na to apokud něco vyřešíte tak mi lidičky dejte prisim vědět dix
http://www.fi.muni.cz/~adelton/l10n/ - tak to je on :-) |
||
Časová prodleva: 3 měsíce
|
|||
Jasper Profil * |
#9 · Zasláno: 31. 8. 2005, 17:00:28
A nevite jestli to jde nejak nastavit pres PhpMyAdmin??
|
||
Časová prodleva: 19 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0