Mega Code Archive

 
Categories / Java / Database SQL JDBC
 

Creating and dropping indexes

import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.ResultSetMetaData; import java.sql.Statement; public class PrintIndexedResultSet {   public static void main(String args[]) throws Exception {     String query = "SELECT STATE, COUNT(STATE) FROM MEMBER_PROFILES GROUP BY STATE";     Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");     Connection con = DriverManager.getConnection("jdbc:odbc:Members");     Statement stmt = con.createStatement();     stmt.executeUpdate("CREATE INDEX STATE_INDEX ON MEMBER_PROFILES(STATE)");     java.util.Date startTime = new java.util.Date();     ResultSet rs = stmt.executeQuery(query);     ResultSetMetaData md = rs.getMetaData();     int nColumns = md.getColumnCount();     for (int i = 1; i <= nColumns; i++) {       System.out.print(md.getColumnLabel(i) + ((i == nColumns) ? "\n" : "\t"));     }     while (rs.next()) {       for (int i = 1; i <= nColumns; i++) {         System.out.print(rs.getString(i) + ((i == nColumns) ? "\n" : "\t"));       }     }     java.util.Date endTime = new java.util.Date();     long elapsedTime = endTime.getTime() - startTime.getTime();     System.out.println("Elapsed time: " + elapsedTime);     stmt.executeUpdate("DROP INDEX MEMBER_PROFILES.STATE_INDEX");   } }