Result Sets
You can use ResultSetMetaData to retrieve metadata about the results of a query.
The query can contain any of the following:
- Joins
- Aggregates
- Aliases
- Fully qualified names
- Generated columns
You can instantiate a ResultSetMetaData object by invoking the getMetaData method of the Statement class. A ResultSetMetaData instance is populated with data after the statement has been executed. The following query prints out the columns in the result of the query:
String connectionString = "jdbc:pingone:AuthScheme=OAuth;InitiateOAuth=GETANDREFRESH;WorkerAppEnvironmentId=eebc33a8-xxxx-4f3a-yyyy-d3e5262fd49e;Region=NA;OAuthClientId=client_id;OAuthClientSecret=client_secret;";
Connection conn = DriverManager.getConnection(connectionString);
PreparedStatement pstmt = conn.prepareStatement("SELECT Username, Email AS My_Email, GETDATE() FROM [CData].[Administrators].Users WHERE Id = '39ef9b6f-5973-4701-bd19-7950d4b7d6e0'");
pstmt.executeQuery();
ResultSetMetaData rs = pstmt.getMetaData();
for(int i=1;i<=rs.getColumnCount();i++) {
System.out.println(rs.getColumnName(i));
}