Java ParameterMetaData .getParameterMode (int param)
Syntax
ParameterMetaData.getParameterMode(int param) has the following syntax.
int getParameterMode(int param) throws SQLException
Example
In the following code shows how to use ParameterMetaData.getParameterMode(int param) method.
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ParameterMetaData;
import java.sql.PreparedStatement;
import java.sql.Statement;
//from w w w . jav a 2 s .c o m
public class Main {
public static void main(String[] args) throws Exception {
Connection conn = getHSQLConnection();
System.out.println("Got Connection.");
Statement st = conn.createStatement();
st.executeUpdate("create table survey (id int,name varchar);");
st.executeUpdate("create view surveyView as (select * from survey);");
st.executeUpdate("insert into survey (id,name ) values (1,'nameValue')");
PreparedStatement pstmt = null;
ParameterMetaData paramMetaData = null;
String query = "select * from survey where id > ? and name = ?";
pstmt = conn.prepareStatement(query);
paramMetaData = pstmt.getParameterMetaData();
if (paramMetaData == null) {
System.out.println("db vendor does NOT support ParameterMetaData");
} else {
System.out.println("db vendor supports ParameterMetaData");
// find out the number of dynamic parameters
int paramCount = paramMetaData.getParameterCount();
System.out.println("paramCount=" + paramCount);
System.out.println("-------------------");
for (int param = 1; param <= paramCount; param++) {
System.out.println("param number=" + param);
int paramMode = paramMetaData.getParameterMode(param);
System.out.println("param mode=" + paramMode);
if (paramMode == ParameterMetaData.parameterModeOut) {
System.out.println("the parameter's mode is OUT.");
} else if (paramMode == ParameterMetaData.parameterModeIn) {
System.out.println("the parameter's mode is IN.");
} else if (paramMode == ParameterMetaData.parameterModeInOut) {
System.out.println("the parameter's mode is INOUT.");
} else {
System.out.println("the mode of a parameter is unknown.");
}
}
}
pstmt.close();
conn.close();
}
private static Connection getHSQLConnection() throws Exception {
Class.forName("org.hsqldb.jdbcDriver");
System.out.println("Driver Loaded.");
String url = "jdbc:hsqldb:data/tutorial";
return DriverManager.getConnection(url, "sa", "");
}
public static Connection getMySqlConnection() throws Exception {
String driver = "org.gjt.mm.mysql.Driver";
String url = "jdbc:mysql://localhost/demo2s";
String username = "oost";
String password = "oost";
Class.forName(driver);
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;
}
}