得到数据库表结构

	private Connection connection;
	private Statement statement;

	public void initConnection(String driverClass, String dbUrl, String username, String password) throws Exception {
		Class.forName(driverClass);
		this.connection = DriverManager.getConnection(dbUrl, username, password);
		this.statement = this.connection.createStatement();
	}

	public ResultSetMetaData getMetaDataFromTable(String tableName) throws Exception {
		String sql = "SELECT * FROM " + tableName.toUpperCase() + " WHERE 1 != 1";
		ResultSet rs = this.statement.executeQuery(sql);
		return rs.getMetaData();
	}

	public void displayMetaData(ResultSetMetaData metaData) throws Exception {
		StringBuffer sb = new StringBuffer();
		for (int i = 0; i < metaData.getColumnCount(); i++) {
			sb.append("\n");
			sb.append(metaData.getTableName(i + 1));
			sb.append(".");
			sb.append(metaData.getColumnName(i + 1));
			sb.append("|");
			sb.append(metaData.getColumnType(i + 1));
			sb.append("|");
			sb.append(metaData.getColumnTypeName(i + 1));
			sb.append("|");
			sb.append(metaData.getColumnDisplaySize(i + 1));
			sb.append("|");
		}
		System.out.println(sb.toString());
	}

你可能感兴趣的:(数据结构,sql)