Callable-Statement
Das Callable-Statement-Objekt dient zum Aufruf von Stored Prozedures in der Datenbank. Diese Prozeduren können in Java selber oder in einer Erweiterung von SQL wie PL/SQL von ORACLE beschrieben sein. Das CallableStatement-Objekt erbt vom PrepareStatement-Objekt.
Man unterscheidet bei den Parameter folgende Parametertypen:
- IN-Parameter : Nehmen Werte auf, die weiterverarbeitet werden
- OUT-Parameter : Enthalten Rückgabewerte
- IN/OUT-Parameter: Nehmen Übergabeparameter auf, deren Wert verändert und an das aufrufende Programm zurückgegeben werden kann.
Ein vollständiges Beispiel für ein Callable-Statement:
import java.sql.*; public class beispiel_callableState{ public static void main (String [] args) { String url = “jdbc:oracle:thin:@localhost:1521:faeskorn”; String aufruf = {call setze_zeitstempel (?)}“; CallableStatement aufruf_proc = null; Try { Class.forName(oracle.jdbc.driver.OracleDriver“); } catch(java.lang.ClassNotFoundException e) { System.err.print(“ClassNotFoundException: ”); System.err.println(“e.getMessage()); } Try { Connection con = DriverManager.getConnection (url, “sport“, “sport“); /*CallableStatement rufe_proc = con.preparecall(aufruf) ; rufe _proc.setInt (1,8); rufe_proc.executeQuery(); */ System.out.println(“Procedure wurde schon aufgerufen!”); // Statement und Verbindung schließen Con.close(); } catch(SQLException ex) { System.err.println(“SQLException:“ + ex.getMessage () ) ; }}}