|
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");
|