From: SVN by r. <sv...@ca...> - 2008-12-17 14:15:45
|
Author: roy Date: 2008-12-17 14:47:37 +0100 (Wed, 17 Dec 2008) New Revision: 330 Modified: src/main/java/nl/improved/sqlclient/commands/ShowCommand.java Log: show description of column when using show tables having columnname Modified: src/main/java/nl/improved/sqlclient/commands/ShowCommand.java =================================================================== --- src/main/java/nl/improved/sqlclient/commands/ShowCommand.java 2008-11-09 21:16:45 UTC (rev 329) +++ src/main/java/nl/improved/sqlclient/commands/ShowCommand.java 2008-12-17 13:47:37 UTC (rev 330) @@ -15,6 +15,7 @@ */ package nl.improved.sqlclient.commands; +import java.sql.DatabaseMetaData; import nl.improved.sqlclient.SQLCommand; import nl.improved.sqlclient.DBConnector; import nl.improved.sqlclient.Point; @@ -51,10 +52,26 @@ ResultSet rs = conn.getMetaData().getColumns(conn.getCatalog() , DBConnector.getInstance().getSchema(), "%" , columnName); - List matches = new ArrayList<String>(); + List<String> matches = new ArrayList<String>(); while (rs.next()) { if (!matches.contains(rs.getString("TABLE_NAME"))) { - matches.add(rs.getString("TABLE_NAME")); + //matches.add(rs.getString("TABLE_NAME")); + StringBuilder match = new StringBuilder(); + match.append(rs.getString("TABLE_NAME")); + match.append('\t'); + match.append(rs.getString("COLUMN_NAME")); + match.append('\t'); + String columnSize = rs.getString("COLUMN_SIZE"); + if (columnSize != null) { + match.append(rs.getString("TYPE_NAME") +"("+columnSize+")"); + } else { + match.append(rs.getString("TYPE_NAME")); + } + int nullable = rs.getInt("NULLABLE"); + if (nullable == DatabaseMetaData.columnNoNulls) { + match.append(" NOT NULL"); + } + matches.add(match.toString()); } } returnValue.append("\nTables with column name: '"+ columnName+"'\n"); |