HULK Forum Index Poslužitelj MySQL i hrvatski znakovi |
Pregledavanje ovog Threada:
1 Anonimnih Korisnika
Dno Prethodna tema Sljedeca tema |
|
|
|
---|
Pošiljatelj | Thread |
---|
|
MySQL i hrvatski znakovi | #1 |
|||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Linuxaš wanna-be
Pridružen: 13.12.2010
Od Zagreb
Poruke: 23
Level : 3 HP : 0 / 63 Grupa:
Registered Users |
Kako smo došli do problema:
Nedavno sam se zaposlio u firmi koja me tražila da im uštedim nešto novaca i da im smanjim potencijalnu kaznu od BSA. Za početak sam zamjenio sve servere Linuxom (nije postojao niti AD niti dhcp niti ništa što bi vam palo na pamet staviti u mrežu od 60 računala. Naravno i MySql sam prebacio na linux - CentOS distra. S tim da nisam ostavio onaj defaultni MySql koji dolazi sa distrom nego sam skinuo sa njihovog sajta instalaciju. Problem koji se pojavljuje: Importirao sam podatke sa starog servera preko sqldump fajla. U novoj tablici su mi svi podatci prikazani kao i u staroj (hrvatski znakovi) I aplikacija koja koristi podatke (VB .NET 4) prikazuje hrvatske znakove. No kada se insertiraju podatci u bazu, čćžšđ se zamjene sa cczsd. Probao prije svakog inserta izvršiti i SET NAMES 'cp1250' COLLATE 'cp1250_croatian_ci'; i en funkcionira. Probao sam izvršiti isto i za UTF8 pa opet ništa. Ne mogu nać konfiguracijski fajl od mysql-a (nekad davno je bio u /etc/mysql/my.cnf ili /etc/my.cnf Ima li tko ideju za pomoć? Hvala |
||||||||||
_________________
I think Microsoft named .Net so it wouldn't show up in a Unix directory listing. |
|||||||||||
Postano : 01.03.2011 2:10:09
|
|
Re: MySQL i hrvatski znakovi | #2 |
|||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Linuxaš wanna-be
Pridružen: 13.12.2010
Od Zagreb
Poruke: 23
Level : 3 HP : 0 / 63 Grupa:
Registered Users |
btw. ovako su kreirane tablice:
CREATE TABLE `contacts` ( `id` bigint(11) NOT NULL AUTO_INCREMENT, `prezime` varchar(64) COLLATE utf8_unicode_ci NOT NULL, `ime` varchar(64) COLLATE utf8_unicode_ci NOT NULL, ... ... PRIMARY KEY (`id`) ) ENGINE=MyISAM AUTO_INCREMENT=163 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; |
||||||||||
_________________
I think Microsoft named .Net so it wouldn't show up in a Unix directory listing. |
|||||||||||
Postano : 01.03.2011 2:13:35
|
|
Re: MySQL i hrvatski znakovi | #3 |
|||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Padawan
Pridružen: 22.02.2005
Od Rijeka
Poruke: 79
Level : 7 HP : 0 / 170 Grupa:
Registered Users |
I ja sam imao problema sa 1250 (ili 852) kodnom stranicom.
Čak sam i pisao program u C-u, koji mi je mjenjao znakove prije učitavanja. Problem je bio i taj što unicode zauzima 2 bajta pa kako su neka polja bila definirana veličinom, nije se moglo ubaciti. Tu sam koristio trikove sa izbacivanjem praznina i slično. Kako su mnoge tablice bile u dbf formatu, sa dbf2mysql programom sam mogao dobiti dump file i sql skriptu. Malo ručne kemije po skripti i konverzije dump datoteke u utf, datoteke su se mogle direktno učitati u mysql. Cilj je dobiti utf format u bazi, da se jednom zauvjek riješe problemi. Treba jednako izbjegavati hrvatski windows standard, kao i hrvatski linux standard (iso), i zadržati se na unicode standardu. |
||||||||||
_________________
Nikola Tesla and My Thoughts |
|||||||||||
Postano : 02.03.2011 5:07:35
|
|
Re: MySQL i hrvatski znakovi | #4 |
|||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Linuxaš wanna-be
Pridružen: 13.12.2010
Od Zagreb
Poruke: 23
Level : 3 HP : 0 / 63 Grupa:
Registered Users |
Dodao
skip-character-set-client-handshake character_set_server=cp1250 collation_server=cp1250_croatian_ci u my.cnf i stvar radi Probao puno toga ali na kraju je samo ovo pomoglo. Bez toga bi mi query koj stigne iz aplikacije umjesto čćžšđ u logu prikazao da je stigao sa cczsd Pozdrav |
||||||||||
_________________
I think Microsoft named .Net so it wouldn't show up in a Unix directory listing. |
|||||||||||
Postano : 04.03.2011 8:08:20
|
Vrh Prethodna tema Sljedeca tema |
|