Can I call PL/SQL from java using Oracle's JDBCThin client ? .... I am on and SGI and there is no JDBC OCI interface .... what can I do ?

From: Hank Griffioen <hank_at_daac.gsfc.nasa.gov>
Date: 1997/12/31
Message-ID: <68dsdd$3bn_at_post.gsfc.nasa.gov>#1/1


[Quoted] Does anyone know if I can call a stored procedure from the Oracle thin JDBC interface ?




plsql>java Select_Person
java.sql.SQLException: Malformed SQL92 string at position 27
        at oracle.jdbc.dbaccess.DBError.check_error(DBError.java:326)
        at oracle.jdbc.driver.OracleSql.parse(OracleSql.java:43)
        at
oracle.jdbc.driver.OracleConnection.nativeSQL(OracleConnection.java:175)
        at

oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java :1156)

        at
oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.j ava:108)

        at Select_Person.main(select_person.java:49)

SOURCE CODE .......




/*
* This sample shows how *
  • It uses the JDBC THIN driver. */ import java.sql.*; class Select_Person { public static void main (String args []) throws SQLException, ClassNotFoundException { // Load the Oracle JDBC driver Class.forName ("oracle.jdbc.driver.OracleDriver"); Connection conn = DriverManager.getConnection (

"jdbc:oracle:thin:_at_daacdev1.gsfc.nasa.gov:1521:eosdev2","scott","tiger");

[Quoted]          CallableStatement statement;
         statement = conn.prepareCall("call select_person[(?,?,?)]}");
    // Output variables must be registared
         statement.setInt(1, 3);
         statement.registerOutParameter (2, Types.VARCHAR);
         statement.registerOutParameter (3, Types.VARCHAR);
statement.execute();
         System.out.println (" Output plsql firstname " +statement.getString
(2));
         System.out.println (" Output plsql lastname " +statement.getString
(3));
         statement.close();
     }

} Received on Wed Dec 31 1997 - 00:00:00 CET

Original text of this message