Autor | Zpráva | ||
---|---|---|---|
Tomik Profil |
#1 · Zasláno: 19. 12. 2005, 09:26:15
Zdravím,
mám databázi mysql 41, jeji kodovani je utf, porovnavani utf8_czech_ci, rovnez znakova sada v mysql je utf8 a znaková sada připojení mysql je také utf8_czech_ci. Stránky ve kterých zobrazuji text z DB mám také v UTF-8, přesto se mi místo některých znaků s diakritikou zobrazují otazníky (?). To jsem sice vyřešil tím, že po každém připojení k db pošlu databázi query "SET CHARACTER SET utf8", pak všechno běhá jak má. Ale... Chtěl jsem se zeptat zda není možné nějakým univerzálním SQL příkazem, který bych poslal na DB pouze jednou nastavit právě to, co nastavuji pomocí toho query "SET CHARACTER SET utf8". Díky Tomik |
||
Kajman_ Profil * |
#2 · Zasláno: 19. 12. 2005, 09:35:41
Pokud je to Tvoje db, tak lze nastavit defaultní znakouvou sadu připojení na utf8 a pak by to nebylo třeba. Pokud nemáš db pod palcem, tak to asi možné nebude.
|
||
Tomik Profil |
#3 · Zasláno: 19. 12. 2005, 09:52:41
No je to moje DB, ale příkaz ALTER DATABASE db_name DEFAULT CHARACTER SET utf8 (pokud je to ten příkaz) nefunguje. :(
|
||
Dan Fojtík Profil |
#4 · Zasláno: 19. 12. 2005, 10:04:50 · Upravil/a: Dan Fojtík
Ja jsem to vyresil tak, ze jsem SET CHARACTER SET nejaky_charset a jeste SET NAMES 'nejaky_charset' dal do souboru coonect.php, ktery includuji pri kazdem pripojeni do MySQL. Kdyz jsem v phpMyAdminovi nastavil defaultni charset, stejne to porad nefungovalo tak jak ma.
|
||
Tomik Profil |
#5 · Zasláno: 19. 12. 2005, 10:17:25
To pro mě samozřejmě také není problém, mám napsanou třídu pro přístup k DB, ale jde mi o princip. :)
A nevíš, náhodou, čím je to způsobeno, že to nefunguje? |
||
Hugo Profil |
#6 · Zasláno: 19. 12. 2005, 10:19:58
Tomik
MySQL bere automaticky tu znakovou sadu jakou má nastavenu v my.ini. Pokud používáš jinou musíš to serveru oznámit. IMHO není takový problém poslat jeden dotaz navíc. |
||
Tomik Profil |
#7 · Zasláno: 19. 12. 2005, 10:22:10
Díky, ne není, ale jen tak mě to zajímalo... :D
|
||
Hugo Profil |
#8 · Zasláno: 19. 12. 2005, 10:26:30
Tomik
Když se nad tím trochu zamyslíš, tak zjistíš, že je toto chování dost výhodné, protože nemusíš řešit změnu kódování v aplikaci, ale db server si to pohlídá sám (samozřejmě mu musíš oznámit jaké kódování používáš). |
||
Kajman_ Profil * |
#9 · Zasláno: 19. 12. 2005, 11:07:56
Špatně jsem se vyjádřil. Tou db jsem nemyslel konrétní db, ale db server :-)
|
||
Tomik Profil |
#10 · Zasláno: 19. 12. 2005, 12:01:33
Kajman_ Ha, tak to pak jo... ;) No pokusím se poprosit hostera, a nebo halt budu posílat pri každém připojeni na db o jeden sql příkaz víc.
Jinak díky, problém je vyřešen... :D |
||
Časová prodleva: 18 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0