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 meta = conn.getMetaData();
// The '_' character represents any single character.
// The '%' character represents any sequence of zero
// or more characters.
ResultSet rs = meta.getBestRowIdentifier(conn.getCatalog(), null, "survey",
DatabaseMetaData.bestRowTemporary, false);
while (rs.next()) {
short actualScope = rs.getShort("SCOPE");
String columnName = rs.getString("COLUMN_NAME");
int dataType = rs.getInt("DATA_TYPE");
String typeName = rs.getString("TYPE_NAME");
int columnSize = rs.getInt("COLUMN_SIZE");
short decimalDigits = rs.getShort("DECIMAL_DIGITS");
short pseudoColumn = rs.getShort("PSEUDO_COLUMN");
System.out.println("tableName=survey");
System.out.println("scope=" + actualScope);
System.out.println("columnName=" + columnName);
System.out.println("dataType=" + dataType);
System.out.println("typeName" + typeName);
System.out.println("columnSize" + columnSize);
System.out.println("decimalDigits" + decimalDigits);
System.out.println("pseudoColumn" + pseudoColumn);
}
st.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;
}
}
GetTableOptimalSetOfColumns.zip( 2,517 k)