Napravio sam jednu malu probu, pa sada ovde iznosim zapažanja.
Software:
• Windows Vista
• Regionalna podešavanja: Serbian (Latin)
• Firebird v2.1
• Default instalacija
• FlameRobin
• IBExpert
Pomoću FlameRobina sam kreirao novu bazu sa UTF8 charsetom. Zatim sam napravio jednostavnu tabelu Klijenti sa četiri polja (ID, PREZIME, IME, DATUM). Zatim sam dodao dva zapisa pri čemu sam u jednom koristio ćirilicu a u drugom latinicu. Sve je prošlo OK i na ekranu se videlo kako treba.
Onda sam startovao IBExpert i otvorio tu istu tabelu. Svi uneseni podaci se se takođe videli kako treba.
Kada sam zatim probao da unesem nove podatke (opet koristeći i ćirilicu i latinicu) prijavlio mi je grešku "Malformed string" za latinicu, dok je ćirilična slova zamenio sa znakovima pitanja ali je dozvolio unos.
Onda sam tu tabelu opet otvorio u FlameRobinu gde je onaj treći zapis (ćirilica) opet bio ispisan sa znakovima pitanja.
Moj zaključak je da problem uopšte nije u Firebird-u već isključivo u aplikacijama pomoću kojih se pristupa bazama. FlameRobin je jedini alat za koji ja znam da ima potpunu Unicode podršku, dok su svi ostali vezani za jedan Charset (Font charset). Zatim, svi ostali zbog toga vrše neku dodatnu konverziju koja očigledno nije adekvatna (primetite znakove pitanja tamo gde treba da bude ćirilica). Što se tiče razvojnih okruženja i komponenti koje se tamo koriste za pristup bazama, tu je problem uglavnom isti (i ovi alati su rađeni u nekom od njih). Tako, Delphi još uvek nema punu Unicode podršku kao ni većina komponenti, dok Visual Studio (.NET) radi kako treba. Nisam siguran za FIBPlus, jer sam video da u propertijima ima nešto vezano za Unicode, ali nisam dovoljno testirao. Ako se ne varam, FlameRobin je rađen u C++, pa su verovatno korišćene IBPP komponente koje takođe imaju Unicode podršku.
Sledi pitanje: Koji program koristiti (osim FlameRobina koji je malo nepraktičan za većinu korisnika) a da se iskoristi pun potencijal Firebirda? Takođe, koji paket komponenti (za Delphi) treba koristiti za istu stvar? I naravno, dokle ćemo da čekamo da sam Delphi postane potpuno Unicode? Ako je verovati najavama, Delphi 2008 bi to konačno trebao da reši do kraja... Videćemo.
Nadam se da će ovo nekome pomoći.
Napomena: Svi izneseni podaci su iz mog ličnog zapažanja i na osnovu mog ličnog iskustva, pa prema tome mogu biti i netačni.
"There is a theory which states that if ever anybody discovers exactly what the
Universe is for and why it is here, it will instantly disappear and be replaced by
something even more bizarre and inexplicable. There is another theory which states
that this has already happened."
-- Douglas Adams