Uso dei metadati del set di risultati
Per eseguire una query su un set di risultati e ottenere informazioni sulle colonne in esso contenute, il Microsoft JDBC Driver per SQL Server implementa la classe SQLServerResultSetMetaData. Questa classe contiene vari metodi che restituiscono informazioni sotto forma di singolo valore.
Per creare un oggetto SQLServerResultSetMetaData, è possibile usare il metodo getMetaData della classe SQLServerResultSet.
Nell'esempio seguente una connessione aperta al database di esempio AdventureWorks2022 viene passata alla funzione, il metodo getMetaData della classe SQLServerResultSet viene usato per restituire un oggetto SQLServerResultSetMetaData, quindi vengono usati vari metodi dell'oggetto SQLServerResultSetMetaData per visualizzare le informazioni sul nome e il tipo di dati delle colonne contenute nel set di risultati.
public static void getResultSetMetaData(Connection con) {
try(Statement stmt = con.createStatement();) {
String SQL = "SELECT TOP 10 * FROM Person.Contact";
ResultSet rs = stmt.executeQuery(SQL);
ResultSetMetaData rsmd = rs.getMetaData();
// Display the column name and type.
int cols = rsmd.getColumnCount();
for (int i = 1; i <= cols; i++) {
System.out.println("NAME: " + rsmd.getColumnName(i) + " " + "TYPE: " + rsmd.getColumnTypeName(i));
}
}
// Handle any errors that may have occurred.
catch (SQLException e) {
e.printStackTrace();
}
}