MySql 4.1.22 in UTF8
4 naročniki
4 naročniki
Zdravo,
Ena izmed strank se je odločila vzeti najcenejši paket pri hitrosti, ki podpira MySql 4.1.22.
Problem je ker zadeva preprosto ne podpira "č-jev" (kljub temu, da so vse tabele in baza sama v utf8). Ne glede na to kako vpisujem v bazo se čji spremenijo v tisti grozni "?".
Poleg tega dobim error: Spremenjene vrstice: 0
Warning: #1265 Data truncated for column 'products_description' at row 1
Kakšna šansa, da to uredim na nivoju baze?
11 odgovorov
Kar težko http://bugs.mysql.com/bug.php?id=25815 ?
Inserting utf8 data into a TEXT column that used a single-byte
character set could result in spurious warnings about truncated data.
Kako bi to rešil? Hmm..
http://dev.mysql.com/doc/refman/4.1/en/replace.html
pa str_replace("č", "... po celi kodi, veselica =D .
No, tabele imaš v UTF8? SET NAMES tudi?
Ti javi isti error če hočeš č v tabelo, v to polje vstavit preko phpmyadmina ? (z INSERT ali pa UPDATE...)
Ja kot sem rekel ne glede na to kako insertam v tabelo je rezultat isti. Vedno obstaja ta opcija z str_replace ampak jasno bi raje rešil drugače.
Imam tudi SET NAMES.
Glede na to, da sem vezan na to verzijo baze očitno ne bo druge opcije kot str_replace v vseh querijih, ki delajo z bazo.
Jaz sem mislil enako. Samo sem potem našel reporte o bugu (poglej tudi HeXeR- jev post). Obstaja sicer patch, ki pa mi ne pomaga dosti.
P.s.: Š-ji in Žji delajo brez probleba. Bom danes vse update in insert querije opremil z str_replace in se v prihodnosti izogibal najcenejšim hitrost paketom.
Jaz sem imel joomlo (utf-8) na tem najcenejšem paketu in ni bilo problemov. Ker vsi spodobni programi uporabljajo utf8 bi bilo takšno gostovanje v bistvu neuporabno.