Avatar billede roo104 Nybegynder
13. juni 2003 - 16:22 Der er 36 kommentarer og
2 løsninger

Oracle Thin Driver

Jeg har installeret oracle 9i og ville gerne kunne tigå databasen fra java. Hvis jeg sætter en ODBC driver op virker det fit men jeg ville gerne gå via oracles thin driver.
Jeg har prøvt at sætte flere classpath's men det virker ikke helt.
Den kan ikke finde klassen Class.forName("oracle.jdbc.driver.OracleDriver");
Jeg har sat classpath=D:\oracle\ora92\jdbc\lib og = D:\oracle\ora92\bin

Er jeg helt gal på den, er ret ny i java og SQL sammen
Avatar billede roo104 Nybegynder
13. juni 2003 - 16:23 #1
Lige en ting til...hvis man skal arbejde med objekter i db er det så ikke bedst at bruge Oracle Thin Driver eller er JDBC-ODBC fint nok ?
Avatar billede arne_v Ekspert
13. juni 2003 - 16:28 #2
Du skal sætte classpath til den jar-fil der indeholder JDBC driveren.
Avatar billede arne_v Ekspert
13. juni 2003 - 16:29 #3
D:\oracle\ora92\jdbc\lib\et-eller-andet.jar

(jeg er ikke lige ved en maskine med Oracle på)
Avatar billede roo104 Nybegynder
13. juni 2003 - 16:31 #4
der ligger
classes12dms.jar
classes111.jar
nls_charset11.jar
nls_charset12.jar
ocrs12.jar
ojdbc14.jar
ojdbc14_g.jar
Avatar billede roo104 Nybegynder
13. juni 2003 - 16:34 #5
har det noget at sige at jeg udvikler i Sun one studio som kører sdk1.4.1_02 ?
Avatar billede arne_v Ekspert
13. juni 2003 - 16:35 #6
Typisk Oracle - hvilken skal du vælge.

Men prøv og åben et kommando vinsue (DOS box), gå til directoriet
og bruge komamndoen:

jar tvf xxxxx.jar

til at se hvad der er i dem.

Den der indeholder oracle/jdbc/driver/OracleDriver.class er den
rigtige !
Avatar billede arne_v Ekspert
13. juni 2003 - 16:35 #7
Nej - udviklings-miljøet er helt ligegyldigt.

(omend jeg undrer mig over at du ikke bruger JDeveloper hvis I er en
Oracle site)
Avatar billede roo104 Nybegynder
13. juni 2003 - 16:45 #8
I = mig, da jeg er ikke kongelig :-)
Er ret ny i både oracle og java, men ville gerne lære mere. Sidder med en Oracle ODBC bog, og der står bare tilføj classesxxx.zip til classpath.
så jeg skriver "set classpath=D:\oracle\ora92\jdbc\lib" og = D:\oracle\ora92\bin. Men det virker stadig ikke.
Jeg kan set ikke bruge jar i den mappe, så der er noget helt galt.
Avatar billede arne_v Ekspert
13. juni 2003 - 16:49 #9
Nej for du skal angive jar-filen ikke directoriet.

Eksempel:

set classpath=D:\oracle\ora92\jdbc\lib\classes111.jar
Avatar billede arne_v Ekspert
13. juni 2003 - 16:52 #10
Og det med ental/flertal er fordi der ofte er flere bagved et spørgsmål.
Avatar billede roo104 Nybegynder
13. juni 2003 - 16:55 #11
er ret sikker på det er filen classes12dms.jar jeg skal have fat i så set classpath=D:\oracle\ora92\jdbc\lib\classes12dms.jar
Det virker bare stadig ikke, er der andet der skal sættes op ?
Avatar billede arne_v Ekspert
13. juni 2003 - 17:00 #12
Det burde være nok.

Husk at det skal sættes for den process der kører programmet.

En set komamndo i en DOS box virker kun for det vindue.
Avatar billede roo104 Nybegynder
13. juni 2003 - 17:07 #13
hvordan sætter jeg den op så det virker for hele maskinen ?
Avatar billede arne_v Ekspert
13. juni 2003 - 17:10 #14
control panel
system
advanced
environment
Avatar billede roo104 Nybegynder
13. juni 2003 - 17:13 #15
der har jeg også sat dem, både for administrator og system
Avatar billede arne_v Ekspert
13. juni 2003 - 17:15 #16
så burde det være ok.

får du stadig classnotfound ?
Avatar billede arne_v Ekspert
13. juni 2003 - 17:16 #17
og hvad siger:

jar tvf D:\oracle\ora92\jdbc\lib\classes111.jar

?
Avatar billede roo104 Nybegynder
13. juni 2003 - 17:21 #18
så får jeg et hav af klasser
Avatar billede roo104 Nybegynder
13. juni 2003 - 17:23 #19
og stadig classnotfound
Avatar billede roo104 Nybegynder
13. juni 2003 - 17:26 #20
tror jeg holder mig til JDBC-ODBC, ved du hvordan det kører sammen med nested table'ss og varray's ?
Avatar billede arne_v Ekspert
13. juni 2003 - 17:26 #21
Er oracle/jdbc/driver/OracleDriver.class der ?
Avatar billede arne_v Ekspert
13. juni 2003 - 17:27 #22
Er det oracle.jdbc.driver.OracleDriver der mangler ?
Avatar billede olly Nybegynder
13. juni 2003 - 17:28 #23
Det er classes111.jar du skal tilføje til din classpath

D:\oracle\ora92\jdbc\lib\classes111.jar

Det er der klassen ligger (Var det da med 9.0.1 hvert fald)
Avatar billede arne_v Ekspert
13. juni 2003 - 17:29 #24
JDBC-ODBC bridge har mange problemer !
Avatar billede roo104 Nybegynder
13. juni 2003 - 17:31 #25
den kan ikke finde klassen oracle.jdbc.driver.OracleDriver
og den ligger i D:\oracle\ora92\jdbc\lib\classes12.jar
Avatar billede olly Nybegynder
13. juni 2003 - 17:31 #26
http://otn.oracle.com/software/tech/java/sqlj_jdbc/htdocs/jdbc9201.html

Der kan du se hvilke klasser du skal bruge... (Kræver sikkert otn medlemskab for at se... Men er jo gratis)

Tilsyneladende kan du med JDK 1.4 bruge den fil du har der hedder: ojdbc14.jar...

Så prøv at smide den i classpath i stedet...
Avatar billede roo104 Nybegynder
13. juni 2003 - 17:32 #27
den ligger også i classes111.jar tror bare 12 er nyere
Avatar billede olly Nybegynder
13. juni 2003 - 17:33 #28
Og classes12.jar er i classpath?

Tjeck evt ved i en prompt at skrive "echo %classpath%"
Avatar billede arne_v Ekspert
13. juni 2003 - 17:34 #29
Den jar-fil der indeholder klassen er i classpath, men kan ikke findes
alligevel ?
Avatar billede olly Nybegynder
13. juni 2003 - 17:34 #30
Hvis jeg ikke husker helt galt er classes111 til JDK1.1 standard og classes12 til JDK1.2 standard
Avatar billede arne_v Ekspert
13. juni 2003 - 17:35 #31
Har genstartet din IDE efter at have defineret CLASSPATH ?
Avatar billede olly Nybegynder
13. juni 2003 - 17:36 #32
Hmmm du bruger sun one?

Måske den som nogle IDE's gør ignorere system classpath

Prøv evt at højreklikke på et projekt du arbejder med og vælge add jar og så tilføj den på den måde.
Avatar billede olly Nybegynder
13. juni 2003 - 17:40 #33
Har lige prøvet selv i Sun One...

Det du skal gøre er at højreklikke på filesystem og så vælge mount og så zip/jar eller måske archive file.

Altså

filesystem-> mount -> archive eller Jar

Så vælger du filen og så er den der...

Sun One ignorere vist classpath
Avatar billede roo104 Nybegynder
13. juni 2003 - 17:41 #34
har genstatet IDE'en hver gang
Kan jeg ligge ojdbc14.jar i samme mappe som en nødløsning ?
Avatar billede roo104 Nybegynder
13. juni 2003 - 17:45 #35
echo %classpath% svarer D:\oracle\ora92\bin;D:\oracle\ora92\jdbc\lib\classes12dms.jar

selvom jeg har sat den til ../ojdbc14.jar
Avatar billede roo104 Nybegynder
13. juni 2003 - 17:48 #36
så nu siger den D:\oracle\ora92\bin;D:\oracle\ora92\jdbc\lib\ojdbc14.jar
Avatar billede roo104 Nybegynder
13. juni 2003 - 17:49 #37
men stadig classnotfound
Avatar billede roo104 Nybegynder
13. juni 2003 - 17:53 #38
Nu virker det...mountede filen manuelt
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