Avatar billede meltinis Nybegynder
06. april 2004 - 14:18 Der er 8 kommentarer og
1 løsning

Kan man oprette en ODBC via JAVA?

Jeg har lavet et javaprogram som tilgår en database... Problemet er at dem som bruger den hele tiden flytter programmet til en ny maskine og derfor er ODBC driveren ikke sat op. Er det muligt at få javaprogrammet til selv at sætte ODBC driveren op? Databasen ligger nemlig på et fællesdrev så placeringen er den samme... (eller også kunne man lave en prompt som spørger efter den hvis ODBC ikke er sat op, men det er ikke spg her!!!)
Avatar billede tille Nybegynder
06. april 2004 - 14:26 #1
jeg ved ikke om det kan lade sig gøre med java men kan du ikke oprette en dsnless forbindelse?

for access:
conn = "DRIVER={Microsoft Access Driver (*.mdb)} DBQ=C:\MYDB\TEST.MDB"
Avatar billede arne_v Ekspert
06. april 2004 - 14:49 #2
Jeg mener ikke at man kan bruge dsnless med SUN JDBC ODBC bridge.

Så mulighederne må være:

1)  brug JNI til at definere DSN (kræver lidt arbejde at lave)

2)  skriv noget simpelt vejledning til brugeren

3)  lave noget ikke-Java til at lave DSN (gad vide om man bare kan
    lave en .reg fil som brugeren kan dobbelt klikke på ??)¨
Avatar billede meltinis Nybegynder
06. april 2004 - 14:49 #3
Hvordan vil du få den til at køre? conn er jo en connection og ikke en String!!!
Avatar billede meltinis Nybegynder
06. april 2004 - 14:51 #4
Jeg har Visual Studio .NET, men har ikke fået sat mig så meget ind i det... Jeg har dog set at man kan lave et "installationsprogram". Kan man ikke lave en ODBC derfra? Jeg ved ikke om I kender noget til VS.NET?
Avatar billede arne_v Ekspert
06. april 2004 - 20:52 #5
Måske kan du.

Det er en ret basal feature af en installer.

Imidlertid er dsnless blever mere og mere populær i MS verdenen, så ...
Avatar billede arne_v Ekspert
06. april 2004 - 21:07 #6
Jeg har lige checket.

Man kan faktisk bruge dsnless.

Connection con = DriverManager.getConnection("jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};Dbq=D:\\Database\\MSAccess\\Test.mdb;Uid=Admin;Pwd=;");

synes at virke.

Der er dog flere kilder som siger at man skal bruge:

Connection con = DriverManager.getConnection("jdbc:odbc:;Driver={Microsoft Access Driver (*.mdb)};Dbq=D:\\Database\\MSAccess\\Test.mdb;Uid=Admin;Pwd=;");

altså med et semikolon foran Driver for at narre JDBC ODBC.

Kilde: http://www.artima.com/legacy/answers/Sep2001/messages/1.html
og http://codedrop.sun.com/forte/thread.jsp?forum=33&thread=208
Avatar billede arne_v Ekspert
06. april 2004 - 21:07 #7
NB: det virker ikke som det er vildt meget supporteret - men det virker det så
virker det !
Avatar billede arne_v Ekspert
06. april 2004 - 22:54 #8
OK ?
Avatar billede meltinis Nybegynder
06. april 2004 - 23:40 #9
Jeg vil kigge på det... :D Tak for hjælpen!!!
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