用Java實現遍歷Oracle數據庫某用戶下的所有數據,找出想要查找的記錄

//以下功能爲:查詢數據庫用戶中所有的表名
  try
  {
   rs = stmt.executeQuery("select table_name,column_name from user_tab_columns where data_type <> /'DATE/' and DATA_TYPE <> /'BLOB/'");
   while(rs.next())
   {  
    tabName = rs.getString("table_name");  
    tablst.add(tabName);  
    colName = rs.getString("column_name");
    collst.add(colName);
   } 
   rs.close();
   
   for(int i = 0; i < tablst.size(); i++)
   {
    tabArray = tablst.toArray();
    colArray = collst.toArray(); 
    //System.out.println(tabArray[i].toString());
   }  
  } catch (SQLException e) {
   e.printStackTrace();
  }//try end
  
  
  for(int i = 0; i < tablst.size(); i++)
  try
  {
   String sql = "select " +  colArray[i].toString() + " from " + tabArray[i].toString()
                 + " where " + colArray[i].toString() + " like " + "/'%" + str + "%/'";
   rs = stmt.executeQuery(sql);
   ResultSetMetaData data=rs.getMetaData();
   
   while(rs.next())
   {
    colValue = rs.getString(data.getColumnName(1));
    sb.append(tabArray[i].toString() + "." + colArray[i].toString() + ": " + colValue + "/n");
    System.out.println(tabArray[i].toString() + "." + colArray[i].toString() + ": " + colValue + "/n");
    cnt++;
   }//end while
   
   rs.close();
  }catch (SQLException e) {
   e.printStackTrace();
  }//end try

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章