Execute Multiple "select" queries from a java program
843854May 9 2005 — edited May 9 2005Hi,
Please take time to see the code below.
What my problem is:
All the queries given will be executed one by one. So, if there is large data to be retrieved then each query will take so much of time.
Is there any way that i can execute all the 3 queries simultaneously so that i can get quicker response time.
Please send me the way to do it and any sample code if available
Thanks.........
public static void main(String argv[])
{
float spr=0;
float spr1=0;
float spr2=0;
int db_block_size=0;
String query1;
String query2;
String query3;
query1="select count(distinct(substr(dbms_rowid.rowid_to_Restricted(rowid,0),1,8))) from table1";
query2="select count(distinct(substr(dbms_rowid.rowid_to_Restricted(rowid,0),1,8))) from table2";
query3="select count(distinct(substr(dbms_rowid.rowid_to_Restricted(rowid,0),1,8))) from table3";
Connection conn;
Statement stmt;
String name;
try {
Class.forName("com.inet.ora.OraDriver");
}
catch(java.lang.ClassNotFoundException e)
{
System.err.print("ClassNotFoundException: ");
System.err.println(e.getMessage());
}
try
{
conn = DriverManager.getConnection("jdbc:inetora:135.112.22.51:1521:S","dacscan","mnc");
stmt = conn.createStatement();
ResultSet rset=stmt.executeQuery("select value from v$parameter where name='db_block_size' ");
rset.next();
db_block_size=rset.getInt(1);
System.out.println(db_block_size);
rset.close();
rset=stmt.executeQuery(query1);
rset.next();
spr=rset.getFloat(1);
System.out.println (spr);
rset.close();
rset=stmt.executeQuery(query2);
rset.next();
spr2=rset.getFloat(1);
System.out.println (spr2);
rset.close();
rset=stmt.executeQuery(query3);
rset.next();
spr3=rset.getFloat(1);
System.out.println (spr3);
rset.close();
}
catch(SQLException ex)
{
System.err.println("SQLException: " + ex.getMessage());
ex.printStackTrace();
}