JavaZugriff auf OracleDB

Hallo,

bisher habe ich mich immer mit telnet mit
einem Rechner der FH verbunden und Zugriff
auf eine Oracle Datenbank bekommen (Prüfungsergebnisse
und ähnliches).

Nun möchte ich das ganze über ein JavaProgramm tun.

Ich denke das wird schon möglich sein, meine Frage
ist nun, was brauche ich dazu und wie kann ich
das realisieren.

(Habe schon eine Verbindung mit einer lokalen AccessDatenbank
zustandebekommen.)

Danke schonmal.

Ben

Hallo,

bisher habe ich mich immer mit telnet mit
einem Rechner der FH verbunden und Zugriff
auf eine Oracle Datenbank bekommen (Prüfungsergebnisse
und ähnliches).

Nun möchte ich das ganze über ein JavaProgramm tun.

Ich denke das wird schon möglich sein, meine Frage
ist nun, was brauche ich dazu und wie kann ich
das realisieren.

(Habe schon eine Verbindung mit einer lokalen AccessDatenbank
zustandebekommen.)

Danke schonmal.

Ben

Hallo,

Da gibts prinzipiell 2 Möglichkeiten:

  1. du richtest dir auf dem Rechner, auf dem Oracle läuft ne ODBC-Datenquelle ein, und greifst dann genauso darauf zu, wie du auch auf die Access-DB zugegriffen hast, oder

  2. du besorgst dir bei Oracle den aktuellsten JDBC-Treiber für Oracle, dann brauchst du nur den Connect-String in der Form:

ArtDesTreibers@rechnerAufDemOracleLäuft:stuck_out_tongue:ort:NameDerInstanz
also z.B.:
jdbc:oracle:thin:@duplo.mi.fh-heilbronn.de:1521:ora8i

Der Verbindungsaufbau geht dann so:
Class.forName („oracle.jdbc.driver.OracleDriver“);
con = DriverManager.getConnection(„jdbc:oracle:thin:@duplo.mi.fh-heilbronn.de:1521:ora8i“, „User“, „Passwort“);

Gruss,
Max

Hallo,

bisher habe ich mich immer mit telnet mit
einem Rechner der FH verbunden und Zugriff
auf eine Oracle Datenbank bekommen (Prüfungsergebnisse
und ähnliches).

Nun möchte ich das ganze über ein JavaProgramm tun.

Ich denke das wird schon möglich sein, meine Frage
ist nun, was brauche ich dazu und wie kann ich
das realisieren.

(Habe schon eine Verbindung mit einer lokalen AccessDatenbank
zustandebekommen.)

Danke schonmal.

Ben

Wenn du den Zugriff auf die Access Datenbank hinbekommen hast,
brauchts du nur Treiber und Connect-String an zu passen. Die Jdbc
Treiber für Oracle bekommst du von oralce’s website…

dbDriver= „com.ms.jdbc.odbc.JdbcOdbcDriver“ wird zu
„oracle.jdbc.driver.OracleDriver“

dann

Class.forName(„oracle.jdbc.driver.OracleDriver“);

dann der connectString:
dbConnect= „jdbc:oracle:thin:@“ + ip + „:“ + port + „:“ + dbsid;

(wobei dbSid der globale Datenbankname ist, den du auch in
SQLPLUS angegeben hast)

// Connecting:
dbConn= DriverManager.getConnection(dbConnect, dbUser, dbPsswd);

dbConn.prepareStatement(„Select * form user_tables“);

Hallo,

erstmal vielen Dank für Deine kompetente Antwort.
Es gibt aber noch ein kleines Problem: „Logon denied“
Es ist nämlich so: Wenn ich mich mit Telnet einwähle,
dann muss ich „sqlplus /“ eingeben. Der / bewirkt, dass
sich Oracle meine Kennung von der AIX-Ebene holt, bei der
ich mich zuvor eingeloggt habe.
Wenn ich nur „sqlplus“ eingebe, dann komme ich nicht rein!!!
Dann kommt nämlich genau der Spruch: „logon denied“ obwohl ich
die korrekten Daten eingegeben habe.

Kannst Du mir dabei auch helfen ?
Oder muss ich mal den Admin fragen ?

Danke schonmal.

Ben

Hallo,

Kannst Du mir dabei auch helfen ?
Oder muss ich mal den Admin fragen ?

Danke schonmal.

Ben

Wenn

sqlplus userName/userPWD@dbSID

also
sqlplus system/manager@database

nicht funktioniert, musst du den Admin fragen…

Hallo,

bisher habe ich mich immer mit telnet mit
einem Rechner der FH verbunden und Zugriff
auf eine Oracle Datenbank bekommen (Prüfungsergebnisse
und ähnliches).

Nun möchte ich das ganze über ein JavaProgramm tun.

Ich denke das wird schon möglich sein, meine Frage
ist nun, was brauche ich dazu und wie kann ich
das realisieren.

(Habe schon eine Verbindung mit einer lokalen AccessDatenbank
zustandebekommen.)

Danke schonmal.

Ben

Man nehme einen ordentlichen Oracle-JDBC Driver:
http://www.oracle.com/technology/software/tech/java/…

einen Classennamen zum laden des Treibers
String dbDriver= „oracle.jdbc.driver.OracleDriver“;

eine Connect-URI mit Treiber @ ip/host :stuck_out_tongue:ort: dbSID
String dbConnect= „jdbc:oracle:thin:@192.168.0.0815:1521:open_mouth:RACLE_SID“;

dann eine Instanz
Class.forName(dbDriver); //sets the Database Driver

und verbinde sich (user und passwort sind individuelle String)
java.sql.Connection conn=
DriverManager.getConnection(dbConnect, dbUser, dbPassword); //connects to the Database

Hallo Ben,

du brauchst dazu einen JDBC-Treiber (kriegst du glaub ich auf der Oracle-Seite) und dann kanns eigentlich schon losgehen. Dann kannst du eine Connection aufbauen und dann aus deinem Code die Datenbank auslesen.

Gruß, GG