public void readTables(DatabaseMetaData meta, String[] tableTypes) throws SQLException { ResultSet rs = meta.getTables(null, name, null, tableTypes); ArrayList list = new ArrayList(); while (rs.next()) { DbTableOrView table = new DbTableOrView(this, rs); if (contents.isOracle && table.name.indexOf('$') > 0) { continue; } list.add(table); } rs.close(); tables = new DbTableOrView[list.size()]; list.toArray(tables); if (tables.length < 100) { for (int i = 0; i < tables.length; i++) { DbTableOrView tab = tables[i]; tab.readColumns(meta); } } }