[sql] unicode op welke databases?

Pagina: 1
Acties:
  • 212 views sinds 30-01-2008
  • Reageer

  • justice strike
  • Registratie: Juni 2001
  • Laatst online: 22-07 21:21
Jammer dat unicode niet vanaf het begin bestond dat zou veel moeite besparen (immers konden dan alle talen vanaf het begin ondersteund worden)

afijn, zit dus met het probleem dat er meerdere talen in een database (waarschijnlijk in een tabel) opgeslagen moet worden. Nu kan ik dit goedkoop oplossen door charsets te gebruiken, maar dat haalt het probleem niet weg, daarbij komt ook nog bij dat een migratie naar een sql server die wel unicode ondersteund (in de toekomst?!?) moeizaam zal verlopen.

Het is niet helemaal duidelijk welke sql servers wel en niet unicode ondersteunen. Een search geeft me niet veel meer info hierover jammer genoeg.

Wat ik tot nu toe weet is dat er een aantal opties zijn in de keuze van sql:

ms sql (wel unicode support, duur, win only)
mysql 3.x (geen unicode support, free versie te krijgen, ook voor linux te krijgen)
mysql 4.x (twijfelachtige unicode support, beta, ook voor linux te krijgen)
postgresql (unicode support onder linux maar niet onder windows, goedkoop)
oracle (niets over bekend)


zijn er nog andere sql servers die ik over het hoofd heb gezien?? Het liefst heb ik dat unicode vanuit de sql server ondersteund wordt. Dan is het makkelijker te integreren met andere applicaties zoals flash, coldfusion, excel etc.. anders moet ik daar een aparte schil voor bouwen in java (makkelijke unicode support) met blobs, maar daar wil ik niet naartoe als het niet hoeft.

wat valt er aan te raden??

U can call me sir.... or justice as long as u bow down ;)


  • Fragbeestje
  • Registratie: Maart 2002
  • Laatst online: 12:25
Als volgens jou postgresql goede unicode support biedt, dan is de keuze voor mij snel gemaakt, tenzij dat je je DBMS wil laten draaien onder windows natuurlijk.

Mijn iRacing Profiel dus niet dat van jou, Jubby


  • justice strike
  • Registratie: Juni 2001
  • Laatst online: 22-07 21:21
windows ja maar als dat goed werkt dan ben ik wel bereid om over te stappen op linux, dan zou ik op mysql komen, maar van wat ik tot nu toe gezien heb is dat mysql 4.x niet (goed) unicode ondersteund. tenminste het kan ook aan de verschillende consoles liggen. in dos is het namelijk vrijmoeilijk om een vreemde taal te gaan typen, en van sommige windows apps heb ik het gevoel dat ze gewoon ascii doorzenden.

ik ga iniedergeval niet een linux server opzetten om er dan achter te komen dat het niet gaat werken.

U can call me sir.... or justice as long as u bow down ;)


  • curry684
  • Registratie: Juni 2000
  • Laatst online: 13-08 16:46

curry684

left part of the evil twins

Erm, Google-search op oracle 'unicode support'? :?

Professionele website nodig?


  • jochemd
  • Registratie: November 2000
  • Laatst online: 15:35
Alle enterprise level databases ondersteunen unicode. Volgens mij ondersteunt de PostgreSQL versie voor Windows die via Cygwin werkt het ook. Alleen de huidige beta's van de native port niet, hoewel het expliciet de bedoeling is om een definitieve versie feature compatible te maken.
Omdat je expliciet ColdFusion noemt: wij draaien PostgreSQL natuurlijk op een ander platform, OpenBSD, maar we zijn erg tevreden over de combinatie daarvan met ColdFusion op Windows.

  • justmental
  • Registratie: April 2000
  • Niet online

justmental

my heart, the beat

Oracle heeft uiteraard uitsteekbare unicode support.

Who is John Galt?


  • justice strike
  • Registratie: Juni 2001
  • Laatst online: 22-07 21:21
hmm net postgres geprobeerd... de handleiding tot op de puntjes gevolgd en niet te installeren. schijnt iets mis te zijn met het aanmaken van een nieuwe database... anyway dat wordt dus wachten op mysql... of zijn er andere oplossingen?

[ Voor 8% gewijzigd door justice strike op 17-01-2003 23:47 ]

U can call me sir.... or justice as long as u bow down ;)


  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

Postgresql is iig erg goed ermee en ik zou zeker iets beter proberen het te installeren. Je ziet vast wat over het hoofd, want ik heb het nooit moeilijk gevonden :)

Doe es een foutmelding?

  • jochemd
  • Registratie: November 2000
  • Laatst online: 15:35
Welke PostgreSQL versie heb je geprobeerd te installeren?

  • justice strike
  • Registratie: Juni 2001
  • Laatst online: 22-07 21:21
de laatste die er was, zelf gecompiled uiteraard anders heb je namelijk een client only

overigens heb ik de odbc drivers nog niet kunnen vinden (voor windows dan) maar ik heb dan ook niet verder gezocht nadat ik de server niet kon installeren

afijn hier is de foutmelding:

Running with debug mode on.

initdb variables:
PGDATA=/usr/data
datadir=/usr/share/postgresql
PGPATH=/usr/bin
ENCODING=
ENCODINGID=0
POSTGRES_SUPERUSERNAME=Administrator
POSTGRES_BKI=/usr/share/postgresql/postgres.bki
POSTGRES_DESCR=/usr/share/postgresql/postgres.description
POSTGRESQL_CONF_SAMPLE=/usr/share/postgresql/postgresql.conf.sample
PG_HBA_SAMPLE=/usr/share/postgresql/pg_hba.conf.sample
PG_IDENT_SAMPLE=/usr/share/postgresql/pg_ident.conf.sample
The files belonging to this database system will be owned by user "Administrator
".
This user must also own the server process.

The database cluster will be initialized with locale C.

creating directory /usr/data... ok
creating directory /usr/data/base... ok
creating directory /usr/data/global... ok
creating directory /usr/data/pg_xlog... ok
creating directory /usr/data/pg_clog... ok
creating template1 database in /usr/data/base/1... DEBUG: invoking IpcMemoryCre
ate(size=942080)
IpcSemaphoreCreate: semget(key=1, num=17, 03600) failed: Function not implemente
d
DEBUG: proc_exit(1)
DEBUG: shmem_exit(1)
DEBUG: exit(1)

initdb failed.
Removing /usr/data.


zou hem wel graag werkend willen krijgen, anders moet ikmaar gaan kijken ov ik een shel om mysql heen kan bouwen...

U can call me sir.... or justice as long as u bow down ;)


  • justice strike
  • Registratie: Juni 2001
  • Laatst online: 22-07 21:21
ik heb ondertussen al een odbc driver voor postgres gevonde, maar opstarten doet hij niet (is overigens de versie van postgres die bij cygwin komt) dan krijg ik de foutmelding van hierboven. Zelf compilen lukt ook niet dan blijven alleen de documenten en manuals over in de install dir..

[ Voor 8% gewijzigd door justice strike op 18-01-2003 12:56 ]

U can call me sir.... or justice as long as u bow down ;)


  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

The files belonging to this database system will be owned by user "Administrator
".
Je probeert de windows versie te draaien?

Kan je dan niet beter de voor windows geportte beta proberen? :)
[rml][ PostGreSQL] Native win32 beta 4 up-and-running[/rml]

edit:

Humm, die heeft juist geen unicode support zie ik..


firebird: http://www.ibphoenix.com/
of sap: http://www.sapdb.org/

Beide zijn iig erg volwassen.

[ Voor 23% gewijzigd door ACM op 18-01-2003 13:03 ]


  • justice strike
  • Registratie: Juni 2001
  • Laatst online: 22-07 21:21
"Ten tweede zijn niet alle features geimplementeerd. De source is nog niet vrijgegeven dus je kan nog niet recompilen met multibyte support (dus nog geen unicode)."

laat ik nou net unicode support nodig hebben. ik heb namelijk daar ook naar gekeken. jammer genoeg.

U can call me sir.... or justice as long as u bow down ;)


  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

Zie edit :)
Ik heb iig geen ervaring met compileren op een cygwin systeem, maar weet dat ook dat moet kunnen (als in, ik heb er wel es een systeem mee zien draaien, was wel een wat oudere postgres, 7.2 of 7.1 nog zelfs).

[ Voor 34% gewijzigd door ACM op 18-01-2003 13:05 ]


  • justice strike
  • Registratie: Juni 2001
  • Laatst online: 22-07 21:21
das mooi die twee databases kende ik nog niet, ga ik meteen ff uitproberen.

maar zijn er nog mensen die iets weten over postgres??

U can call me sir.... or justice as long as u bow down ;)


  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

justice_strike schreef op 18 januari 2003 @ 13:25:
das mooi die twee databases kende ik nog niet, ga ik meteen ff uitproberen.

maar zijn er nog mensen die iets weten over postgres??

Ik zal iemand es een mailtje sturen waarvan ik weet dat ie de cygwin versie aan de praat had :)

  • jochemd
  • Registratie: November 2000
  • Laatst online: 15:35
justice_strike schreef op 18 januari 2003 @ 02:52:

creating directory /usr/data/pg_clog... ok
creating template1 database in /usr/data/base/1... DEBUG: invoking IpcMemoryCre
ate(size=942080)
IpcSemaphoreCreate: semget(key=1, num=17, 03600) failed: Function not implemente
d
DEBUG: proc_exit(1)
DEBUG: shmem_exit(1)
DEBUG: exit(1)

initdb failed.
Removing /usr/data.
Je hebt zo te zien geen IPC geinstalleerd. Dat is een aparte download, er staat wel in de readme waar je die vandaan kan halen.

  • justice strike
  • Registratie: Juni 2001
  • Laatst online: 22-07 21:21
ff een vraagje als ik postgres wil compilen moet de ipc deamon dan ook draaien??

[ Voor 74% gewijzigd door justice strike op 18-01-2003 15:40 . Reden: doet het al ]

U can call me sir.... or justice as long as u bow down ;)


  • jochemd
  • Registratie: November 2000
  • Laatst online: 15:35
IIRC voor het compileren technisch geproken niet. Maar aan de output te zien ben jij al met de initdb bezig, en daarvoor is het zeker wel nodig.

  • justice strike
  • Registratie: Juni 2001
  • Laatst online: 22-07 21:21
ja ok maar dat was ook een precompilde versie van postgres, volgens mij is hij niet gecompiled met de --multibyte flag

hij geeft namelijk een error dat crypt niet te vinden is ofzo

U can call me sir.... or justice as long as u bow down ;)


  • justice strike
  • Registratie: Juni 2001
  • Laatst online: 22-07 21:21
ok kan iemand mij precies vertellen welke packages ik voor cygwin nodig heb wil ik postgres en alleen postgres draaien? ik wordt namelijk helemaal niet wijzer uit die docs van postgres en van cygwin....

U can call me sir.... or justice as long as u bow down ;)


  • jochemd
  • Registratie: November 2000
  • Laatst online: 15:35
Cygwin: http://www.cygwin.com/
PostgreSQL: selecteren in de CygWin installer
IPC: lokatie staat in de readme

IIRC heb je ook nog bzip2 nodig voor het extracten van IPC, maar dat weet ik niet zeker.
Ofzo errors zijn nogal moeilijk op te lossen, het exacte commando en de exacte foutmelding helpen. Probeer anders eens http://archives.postgresql.org/pgsql-cygwin/

  • justice strike
  • Registratie: Juni 2001
  • Laatst online: 22-07 21:21
ok maar volgens mij zijn de precompilde versies van postgresql die bij cygwin zitten zonder unicode support. anyways ik ga het weer proberen, net mijn hele registries services en startup door zitten spitten om sapdb van mijn pc af te rotten hardnekkig programma dat sap :)

U can call me sir.... or justice as long as u bow down ;)


  • justice strike
  • Registratie: Juni 2001
  • Laatst online: 22-07 21:21
//edit
draai nu gewoon een precompilde versie van postgres, maar unicode support is niet een functie die hij tot nu toe getoond heeft, ik heb alles ingeschakelt op unicode, client ook naar unicode gezet, weet iemand overigens hoe ik kan zien of de postgres db die ik nu draai gecompiled is met multibyte support??

//edit


anyway weet iemand ongeveer wanneer mysql 4.1 gereleased zal worden, of werken ze met het motto we'll release it when its done?


tot nu toe heb ik alleen ms sql server met succes kunnen gebruiken, maar het nadeel is dat het zo restrictive is (naar mijn mening)

ik blijf nog verder zoeken, en denk dat ik phoenixdb ook maar ff probeer. Mischien wel een ideetje om een review te maken over sql server, ik ben toch al bezig en heb ze bijna allemaal al gehad :P

[ Voor 52% gewijzigd door justice strike op 19-01-2003 01:48 ]

U can call me sir.... or justice as long as u bow down ;)


  • xoror
  • Registratie: November 1999
  • Niet online
select version()

zou een en ander moeten laten zien.
vanaf pgsql 7.3 en hoger is de db standaard voorzien van multibyte en locale.

http://www.postgresql.org/idocs/index.php?multibyte.html
heb je dat al doorgenomen ? lijk me vrij duidelijk.

[ Voor 20% gewijzigd door xoror op 19-01-2003 02:14 ]

Mitsubishi Warmtepomp Uitlezen / Besturen | Optimaliseren


  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

[nohtml]
justice_strike schreef op 18 januari 2003 @ 20:44:
anyway weet iemand ongeveer wanneer mysql 4.1 gereleased zal worden, of werken ze met het motto we'll release it when its done?
Zelfs voor 4.0 is er nog geen release date beschikbaar...
tot nu toe heb ik alleen ms sql server met succes kunnen gebruiken, maar het nadeel is dat het zo restrictive is (naar mijn mening)
en oracle, db2, sybase? :P

  • jochemd
  • Registratie: November 2000
  • Laatst online: 15:35
Unicode support inschakelen in PostgreSQL:
CREATE DATABASE ... WITH ENCODING 'UNICODE';

  • justice strike
  • Registratie: Juni 2001
  • Laatst online: 22-07 21:21
zoals ik al zei ik heb alles al netjes op unicode gezet, het was overigens ook versie 7.3 maar dat geeft niet de garantie dat multibyte werkt

"For 7.2, --enable-unicode-conversion is not necessary. The Unicode conversion functionality is automatically enabled if --enable-multibyte is specified"

multibyte moet dus echt meegecompileerd worden in de database... nu krijg ik alleen maar vraagtekens terug van de database, nadat alle settings die er zijn op unicode gezet zijn..

dus nu rest alleen de vraag of de frontends uberhaupt unicode aankunnen. Ik weet op dit moment geen snelle manier om te testen of unicode werkt dan met een console en een insert statement (ik zou gek zijn om een heel programma te maken om unicode erin te voeren)

afijn ik gebruik dus psql die erbij geleverd is (maar dat is een dos box dus dan kan ik alleen maar ascii gebruiken) en pgAdminII, om de gegevens eruit te halen gebruik ik excel met de beta unicode adcb drivers en pgAdminII

Zijn er andere frontends waarvan zeker is dat unicode ermee werkt??

//edit
ik was overigens niet van plan om naar een db te gaan waar ik voor moet betalen... //edit

[ Voor 25% gewijzigd door justice strike op 19-01-2003 14:15 ]

U can call me sir.... or justice as long as u bow down ;)


  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

justice_strike schreef op 19 januari 2003 @ 14:10:
Zijn er andere frontends waarvan zeker is dat unicode ermee werkt??
Euh, php icm IE/mozilla, dat heb ik es getest en werkt in principe prima.
Maar een simpel programmatje maken dat enkel wat data op het scherm spuugt in unicode formaat (hoeft toch niet perse via de db te lopen als je je programma verdenkt) is toch op zich al voldoende?
//edit
ik was overigens niet van plan om naar een db te gaan waar ik voor moet betalen... //edit

Waarom had je het dan over MS SQL? Daar moet je ook voor betalen hoor :)

  • justice strike
  • Registratie: Juni 2001
  • Laatst online: 22-07 21:21
was een trial :) maar ging me meer om een frontend waar ik gegevens de database inkrijg inplaats van eruit halen (das namelijk niet het probleem)

met een console kan je namelijk geen unicode tekens gebruiken dus heb ik een frontend nodig die dat wel aan kan (desnoods een geemuleerde console ofzo)

[ Voor 36% gewijzigd door justice strike op 19-01-2003 14:56 ]

U can call me sir.... or justice as long as u bow down ;)


  • xoror
  • Registratie: November 1999
  • Niet online
?

http://www.ca.postgresql.org/ftpsite/README.v7.3
Internationalization
Both multibyte and locale support are now always enabled.
met de vorige url die ik je gaf zou je gewoon unicode kunnen gebruiken met 7.3

Mitsubishi Warmtepomp Uitlezen / Besturen | Optimaliseren


  • justice strike
  • Registratie: Juni 2001
  • Laatst online: 22-07 21:21
ok hoe moet ik dan verklaren dat al mijn tekens in vraagtekens veranderen? db staat op unicode, client ook. Dan moet het toch aan de frontend liggen, of zie ik dat nou weer verkeerd?

laat ik de vraag dan zo stellen, wat gebruiken jullie om unicode tekens op te slaan in de database?

[ Voor 23% gewijzigd door justice strike op 19-01-2003 15:31 ]

U can call me sir.... or justice as long as u bow down ;)


  • jochemd
  • Registratie: November 2000
  • Laatst online: 15:35
Ik gebruik ColdFusion MX (demo met PostgreSQL backend) en soms Java.

  • justice strike
  • Registratie: Juni 2001
  • Laatst online: 22-07 21:21
ok dat is netjes, daaran kan ik nou precies zien dat unicode support werkt, maar dat betekend dus dat ik coldfusion kan gaan aanschaffen, wat dus erop neerkomt dat ik net zo goed mssql kan nemen, maar dat betekent dus eigenlijk dat als ik wilinvoeren dat ik dus op mijzelf ben aangewezen om java te schrijgen.. lijk me toch niet echt de bedoeling, ik bedoel haalt namelijk het hele nut van een console weg.

[ Voor 12% gewijzigd door justice strike op 19-01-2003 16:54 . Reden: sorry foutje ]

U can call me sir.... or justice as long as u bow down ;)


  • jochemd
  • Registratie: November 2000
  • Laatst online: 15:35
ColdFusion kost niet voor iedereen geld :)

As je alleen een administratieve interface wil hebben moet je even op http://techdocs.postgresql.org/oresources.php kijken, daar staan er wel een paar. Alles wat op Java is gebaseeerd, zoals bijvoorbeeld DataBrowser zou geen probleem mogen hebben met unicode.

  • justice strike
  • Registratie: Juni 2001
  • Laatst online: 22-07 21:21
hahaq ja dat dacht ik dus ook maar jmysql (wat dus helemaal in java is gebouwd) doet het dus ook niet met mysql 4.0.9 terwijl daar wel unicode support in zou zitten.

U can call me sir.... or justice as long as u bow down ;)


  • jochemd
  • Registratie: November 2000
  • Laatst online: 15:35
Heb je het al geprobeerd?

  • justice strike
  • Registratie: Juni 2001
  • Laatst online: 22-07 21:21
heren, Ik heb hem eindelijk werkend gekregen :P het lag dus inderdaad (zoals ik vermoedde) aan de frontend. Met databrowser kan ik in iedergeval gegevens van een andere taal invoeren, maar ik vind het wel een hele knudde manier om het te doen. maar hij werkt in iedergeval :P dat is zeker.

Ik denk dat ik inderdaad maar een review enzo ga schrijven voor die databases, tenminste als er animo is. Want om een ieder een paar weken te laten kloten om te kijken of iets werkt wil ik natuurlijk ook niemand aandoen.

zijn er trouwens stabiele verzorgde frontends voor jdbc drivers (of odbc) voor windows, want dat databrowser was wel heel erg buggy.

U can call me sir.... or justice as long as u bow down ;)


  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

Er is een redelijk up-to-date jdbc-3.0 driver voor postgresql bij versie 7.3, bij mij is ie iig stabiel :P (windows client die naar linux host connect), daarvoor was er iig een 2.0 compatible met hier en daar wat extratjes.

Helaas implementeert het niet de gehele 3.0 sloot aan functionaliteit van jdbc, maar het meeste werkt.

En een review over databases is altijd leuk om te lezen :)

  • justice strike
  • Registratie: Juni 2001
  • Laatst online: 22-07 21:21
nee ging meer over de frontend die de jdbc driver gebruikt, de jdbc driver zelf heb ik al :)

U can call me sir.... or justice as long as u bow down ;)


  • justice strike
  • Registratie: Juni 2001
  • Laatst online: 22-07 21:21
is er een manier om de mysql jdbc drivers uit jmysql te slopen en de postgres jdbc drivers erin te stoppen??

U can call me sir.... or justice as long as u bow down ;)


  • jochemd
  • Registratie: November 2000
  • Laatst online: 15:35
Waarschijnlijk niet. Nog afgezien van het feit dat de classes verschillen zit je er ook nog mee dat jmysql waarschijnlijk allerlei SHOW commando's gebruikt in plaats van de standaard SQL methodes om een database te beschrijven.

Maar wat voor applicatie wil je nu eigenlijk ontwikkelen?

  • justice strike
  • Registratie: Juni 2001
  • Laatst online: 22-07 21:21
moet gewoon postgres ondersteunen.

anyhow ik ben al een beetje bezig met de auteur sommige bugs eruit te halen.. en ik ben bezig derest van alles op te zetten ivm de postgres database.. het is alleen nogal druk.

Maar als het af is laat ik het jullie zeker zien.

U can call me sir.... or justice as long as u bow down ;)


  • justice strike
  • Registratie: Juni 2001
  • Laatst online: 22-07 21:21
ok wat ik tot nu toe heb kunnen concluderen,

mysql heeft geen unicode support.
postgres heeft wel unicode support.
ms sql heeft ook unicode support.

derest volgt nog, ben nog wat dingen aan het doen maar als alles goed verloopt heb ik volgend weekend (dus niet aankomend weekend) tijd om wat dingetjes op papier te zetten.

U can call me sir.... or justice as long as u bow down ;)


  • Kool
  • Registratie: September 1999
  • Niet online
Interbase, voor Linux, Win en Solaris.
Compact en snel.

http://info.borland.com/devsupport/interbase/opensource/

  • justice strike
  • Registratie: Juni 2001
  • Laatst online: 22-07 21:21
yup dat is de voorloper van phoenix (of firebirddb) ik denk dat ik er maar een review hiervan aangezien ze vrijwel hetzelfde zijn.

U can call me sir.... or justice as long as u bow down ;)

Pagina: 1