Pred nedávnom som riešil problém s pomalým XAMPP pod Microsoft Windows 7. Ten som v mojom prípade zaregistroval tak, že komunikácia s datábazou MySQL bola veľmi pomalá. Klientskej aplikácii veľmi dlho trvalo aktualizovanie údajov, rovnako aj načítanie a ďalšie bežné datábazové operácie. Po intenzívnom hľadaní na Google som narazil na riešenie.
Počas testovania upraveného zdrojového kódu v JavaScripte som narazil na veľmi zaujímavý problém, ktorý považujem za dosť fatálny ... Skúste cez JavaScript vypočítať napr. 0.12 * 60, myslíte, že dostanete 7.2? Veľký omyl ...
Bežný výber dát so vzostupným zoradením (čiže od A po Z) v nejakej tabuľke spravíme:
SELECT * FROM uzivatel ORDER BY priezvisko
Problém môže nastať, ak v stĺpci priezvisko máme priezvisko s diakritikou, čiže napr. Čižmárová, Žitniak, atď. - t.j. pri výbere priezviska ich zoradí na koniec zoznamu. Riešenie je nasledovné:
SELECT * FROM uzivatel ORDER BY priezvisko COLLATE utf8_general_ci
utf8_general_ci v príkaze som použil v tom prípade ak Zotriedenie (Collation) stĺpca bolo zadefinované na utf8_general_ci (viď obrázok z phpmyadmin). Pri selecte treba zvoliť takú znakovú sadu, ktorú sme zadefinovali v stĺpci, ale hlbšie som o tom nepátral, takže môžu tam byť výnimky.