Avatar billede krak Nybegynder
19. februar 2004 - 09:48 Der er 9 kommentarer og
1 løsning

Æøå i java + mysql

Hej

Jeg er igang med en java-applikation mod en mysql database, men skal finde en løsning til de danske bogstaver, dvs:

Er det muligt at få mysql til at acceptere danske bogstaver, eller har java en indbygget metode til konvertering af f.eks. æøå?

tak
Avatar billede dsj Nybegynder
19. februar 2004 - 09:54 #1
Jeg har aldrig haft problemer med æøå i MySQL, hvordan vil den ikke acceptere dem??
Avatar billede arne_v Ekspert
19. februar 2004 - 09:56 #2
Både Java og MySQL supporterer fint ÆØÅ.

Men vær sikker på at Java og MYSQL bruger samme konvention - enten bruger
begge UTF-8 eller så bruger begge ISO-8859-1.
Avatar billede krak Nybegynder
19. februar 2004 - 10:00 #3
Når et æ, ø eller å har været nede og vende i databasen, er det et andet tegn, der kommer tilbage. De bruger i hvert fald ikke samme konvention!
- Men hvordan undersøger man hvilken konvention de bruger?
Avatar billede arne_v Ekspert
19. februar 2004 - 10:04 #4
UTF-8 fortolket som ISO-8859-1 gør at bogstaver som ÆØÅ bliver til 2 bogstaver

ISO-8859-1 fortolket som UTF-8 vil typisk give en fejl men kunne måske
også give et ? for ÆØÅ.

Noget der passer ?

Bruger du en nyere Linux f.eks. Redhat > 7 ?
Avatar billede fsconsult.dk Nybegynder
19. februar 2004 - 10:09 #5
Jeg har oplevet samme problemer med java/mysql ifm. application servers på en linux box.

Mit problem blev løst ved at tvinge serveren til at benytte unicode og ISO-8859-1 på flg. måde:

jdbc:mysql://myserver:3306/mydatabase?useUnicode=true?characterEncoding=ISO8859_1
Avatar billede krak Nybegynder
19. februar 2004 - 10:09 #6
æ,ø og bliver blot til et andet tegn i ASCII tabellen... æ bliver til noget lignende µ osv.

I øjeblikket ligger mysql på en windows-maskine, men i næste uge skal vi have lagt den over på den endelige server, der kører linux. Jeg ved dog ikke hvilken linux-version firmaet har.
- Men hvordan kan jeg sikre, at java henter tegnene med den rigtige konvention?
Avatar billede arne_v Ekspert
19. februar 2004 - 10:17 #7
Øh.

Jeg tror faktisk ikke at du har et problem !

Jeg tror at du gemmer korrekt æ og at du henter korrekt æ. Og at din MySQL
og dit Jav aprogram fungerer perfekt.

Men du skriver ud i en "DOS" console - og den kører CP-850 og derfor bliver
æ til my.

Og medmindre din applikation faktisk skal outputte til "DOS" console i
produktion, så er det vel ikke noget problem.
Avatar billede arne_v Ekspert
19. februar 2004 - 10:18 #8
Hvis du skriver til fil eller viser i GUI eller gemmer i en anden database,
så vil det blive gjordt korrekt.
Avatar billede krak Nybegynder
19. februar 2004 - 10:53 #9
Så lykkedes det.... Fejlen var, at jeg havde indsat rækkerne i prompt, og udtaget til GUI. Men når jeg opretter i GUI og udtager til GUI igen, ser det fint ud!
- At der så ligger underlige tegn i databasen er jo ligegyldigt... Så længe den kan hive dem korrekt frem igen!

Takker!
Kast et svar, arne_v...
Avatar billede arne_v Ekspert
19. februar 2004 - 11:05 #10
svar
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester