Gespeicherte Oracle Java-Prozedur für den Zugriff auf POSTGRES und SQL Server über JDBC
Posted: 28 Dec 2024, 14:30
Ich entwickle die folgende Java-Klasse, die Verbindungen zu Oracle, PostgreSQL und SQL Server herstellt.
Hier ist die Quelle:
Ich habe die Klasse erfolgreich kompiliert mit (In $ORACLE_HOME/jdbc/lib/ habe ich postgresql-42.3.3.jar und sqljdbc4-2.0 hinzugefügt .jar)
Die Ausführung der Klasse endet mit der erwarteten Ausgabe
Jetzt frage ich mich, ob es möglich ist, die Klasse in Oracle DB zu laden, um Java über eine gespeicherte Prozedur aufzurufen, also ändere ich die Oracle-Verbindungszeichenfolge in jdbc:default:connection:< /code> und gehen Sie wie folgt vor:
Die Ausführung der gespeicherten Prozedur gibt diese Meldungen zurück:
Ich entwickle bereits eine Klasse, die ich über die Oracle Store-Prozedur korrekt lade und ausführe, aber ich bin ziemlich neu in Java und wahrscheinlich übersehe ich etwas Offensichtliches oder probiere etwas Unerlaubtes aus. Jeder Vorschlag, der mich auf den richtigen Weg weist, ist willkommen
Hier ist die Quelle:
Code: Select all
import java.sql.*;
public class test {
public static void main (String[] args) {
try {
Connection connORA = DriverManager.getConnection("jdbc:oracle:thin:@myoracleserver:1521/myschema", "user", "password");
if (connORA != null) {
System.out.println("Connected to ORACLE");
}
Connection connPGS = DriverManager.getConnection("jdbc:postgresql://IP.of.my.server:5432/mydbname","user","password");
if (connPGS != null) {
System.out.println("Connected to POSTGRES");
}
Connection connSQS = DriverManager.getConnection("jdbc:sqlserver://IP.of.my.server;databaseName=mydbname" ,"user" ,"password");
if (connSQS != null) {
System.out.println("Connected to SQLSERVER");
}
}
catch (SQLException e) {
System.err.println(e.getMessage());
}
}
}
Code: Select all
javac -cp :$ORACLE_HOME/jdbc/lib/* test.java
Code: Select all
java -cp :$ORACLE_HOME/jdbc/lib/* test
Connected to ORACLE
Connected to POSTGRES
Connected to SQLSERVER
Code: Select all
loadjava -user myoracleuser/muoraclepassword@myoracleschema $ORACLE_HOME/jdbc/lib/postgresql-42.3.3.jar
loadjava -user myoracleuser/muoraclepassword@myoracleschema $ORACLE_HOME/jdbc/lib/sqljdbc4-2.0.jar
loadjava -user myoracleuser/muoraclepassword@myoracleschema test.java
Code: Select all
Connected to ORACLE
No suitable driver found for jdbc:postgresql://IP.of.my.server:5432/mydbname