Get Stored Procedure Signature : Store Procedure « Database SQL JDBC « Java

Get Stored Procedure Signature

import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;

public class Main {
  public static void main(String[] args) throws Exception {
    Connection conn = getMySqlConnection();
    System.out.println("Got Connection.");
    Statement st = conn.createStatement();
    st.executeUpdate("drop table survey;");
    st.executeUpdate("create table survey (id int,name varchar(30));");
    st.executeUpdate("insert into survey (id,name ) values (1,'nameValue')");

    DatabaseMetaData dbMetaData = conn.getMetaData();
    ResultSet rs = dbMetaData.getProcedureColumns(conn.getCatalog(),

    while( {
      // get stored procedure metadata
      String procedureCatalog     = rs.getString(1);
      String procedureSchema      = rs.getString(2);
      String procedureName        = rs.getString(3);
      String columnName           = rs.getString(4);
      short  columnReturn         = rs.getShort(5);
      int    columnDataType       = rs.getInt(6);
      String columnReturnTypeName = rs.getString(7);
      int    columnPrecision      = rs.getInt(8);
      int    columnByteLength     = rs.getInt(9);
      short  columnScale          = rs.getShort(10);
      short  columnRadix          = rs.getShort(11);
      short  columnNullable       = rs.getShort(12);
      String columnRemarks        = rs.getString(13);

      System.out.println("stored Procedure name="+procedureName);
      System.out.println("procedureCatalog=" + procedureCatalog);
      System.out.println("procedureSchema=" + procedureSchema);
      System.out.println("procedureName=" + procedureName);
      System.out.println("columnName=" + columnName);
      System.out.println("columnReturn=" + columnReturn);
      System.out.println("columnDataType=" + columnDataType);
      System.out.println("columnReturnTypeName=" + columnReturnTypeName);
      System.out.println("columnPrecision=" + columnPrecision);
      System.out.println("columnByteLength=" + columnByteLength);
      System.out.println("columnScale=" + columnScale);
      System.out.println("columnRadix=" + columnRadix);
      System.out.println("columnNullable=" + columnNullable);
      System.out.println("columnRemarks=" + columnRemarks);


  private static Connection getHSQLConnection() throws Exception {
    System.out.println("Driver Loaded.");
    String url = "jdbc:hsqldb:data/tutorial";
    return DriverManager.getConnection(url, "sa", "");

  public static Connection getMySqlConnection() throws Exception {
    String driver = "";
    String url = "jdbc:mysql://localhost/demo2s";
    String username = "oost";
    String password = "oost";

    Connection conn = DriverManager.getConnection(url, username, password);
    return conn;

  public static Connection getOracleConnection() throws Exception {
    String driver = "oracle.jdbc.driver.OracleDriver";
    String url = "jdbc:oracle:thin:@localhost:1521:caspian";
    String username = "mp";
    String password = "mp2";

    Class.forName(driver); // load Oracle driver
    Connection conn = DriverManager.getConnection(url, username, password);
    return conn;

  3,849 k)

Related examples in the same category

1.Call Stored Procedure In Oracle And Pass In Out Parameters
2.Get Stored Procedure Name And Type
3.Stored procedure utilities
4.Connect to database and call stored procedure
5.Call a stored procedure with no parameters and return value.
6.Call Stored Procedure In MySql
7.Call a procedure with one IN parameter
8.Call a procedure with one OUT parameter
9.Call a procedure with one IN/OUT parameter
10.Calling a Function in a Database: call functions with IN, OUT, and IN/OUT parameters.
11.Call a function with one IN parameter; the function returns a VARCHAR
12.Call a function with one OUT parameter; the function returns a VARCHAR
13.Creating a Stored Procedure or Function in an Oracle Database
14.Call a function with one IN/OUT parameter; the function returns a VARCHAR
15.Create procedure myprocin with an IN parameter named x.
16.Create procedure myprocout with an OUT parameter named x
17.Create procedure myprocinout with an IN/OUT parameter named x; x is an IN parameter and an OUT parameter
18.Create a function named myfunc which returns a VARCHAR value; the function has no parameter
19.Create a function named myfuncin which returns a VARCHAR value; the function has an IN parameter named x
20.Create a function named myfuncout which returns a VARCHAR value;
21.Create a function named myfuncinout that returns a VARCHAR value
22.Calling a Stored Procedure in a Database with no parameters
23.Getting the Stored Procedure Names in a Database: retrieves the names of all stored procedures in a database.
24.Call stored procedure
25.Stored procedure with Input/Output parms and a ResultSet