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:myob: If using an online instance: InitiateOAuth=GETANDREFRESH;OAuthClientId=YourClientId;OAuthClientSecret=YourClientSecret;CompanyFileId=yourCompanyFileId;CallbackURL=http://localhost:33333;User=companyFileUser;Password=companyFilePassword; If using an on premise instance: InitiateOAuth=OFF;URL=http://localhost:8080/accountright;CompanyFileId=327eed10-9615-4e5e-bd9e-ae2cc00e2c70;User=companyFileUser;Password=companyFilePassword;"; Connection conn = DriverManager.getConnection(connectionString); PreparedStatement pstmt = conn.prepareStatement("SELECT Id, Name AS My_Name, GETDATE() FROM Accounts WHERE Type = 'Bank'"); pstmt.executeQuery(); ResultSetMetaData rs = pstmt.getMetaData(); for(int i=1;i<=rs.getColumnCount();i++) { System.out.println(rs.getColumnName(i)); }