Call a function with one IN/OUT parameter; the function returns a VARCHAR : StoredProcedure « Database « Java Tutorial






import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Types;

public class Main {
  public static void main(String[] argv) throws Exception {
    String driverName = "com.jnetdirect.jsql.JSQLDriver";
    Class.forName(driverName);

    String serverName = "127.0.0.1";
    String portNumber = "1433";
    String mydatabase = serverName + ":" + portNumber;
    String url = "jdbc:JSQLConnect://" + mydatabase;
    String username = "username";
    String password = "password";

    Connection connection = DriverManager.getConnection(url, username, password);
    CallableStatement cs = connection.prepareCall("{? = call myfuncinout(?)}");
    
    // Register the types of the return value and OUT parameter
    cs.registerOutParameter(1, Types.VARCHAR);
    cs.registerOutParameter(2, Types.VARCHAR);

    // Set the value for the IN/OUT parameter
    cs.setString(2, "a string");

    // Execute and retrieve the returned values
    cs.execute();
    String retValue = cs.getString(1);           // return value
    String outParam = cs.getString(2);           // IN/OUT parameter

  }
}








20.17.StoredProcedure
20.17.1.Call a procedure with one IN parameter
20.17.2.Call a procedure with one OUT parameter
20.17.3.Call a procedure with one IN/OUT parameter
20.17.4.Calling a Function in a Database: call functions with IN, OUT, and IN/OUT parameters.
20.17.5.Call a function with one IN parameter; the function returns a VARCHAR
20.17.6.Call a function with one OUT parameter; the function returns a VARCHAR
20.17.7.Call a function with one IN/OUT parameter; the function returns a VARCHAR
20.17.8.Getting the Stored Procedure Names in a Database: retrieves the names of all stored procedures in a database.
20.17.9.Stored procedure with Input/Output parms and a ResultSet