Metodo getIndexInfo (SQLServerDatabaseMetaData)
Recupera una descrizione degli indici e delle statistiche per la tabella specificata.
Sintassi
public java.sql.ResultSet getIndexInfo(java.lang.String cat,
java.lang.String schema,
java.lang.String table,
boolean unique,
boolean approximate)
Parametri
cat
Valore String contenente il nome del catalogo.
schema
Valore String contenente il nome dello schema.
table
Valore String contenente il nome della tabella.
unique
true se vengono restituiti solo gli indici per i valori univoci. false se vengono restituiti tutti gli indici.
approximate
true se i risultati riflettono valori approssimativi o non aggiornati. false se i risultati sono accurati.
Valore restituito
Oggetto SQLServerResultSet.
Eccezioni
Osservazioni:
Questo metodo getIndexInfo viene specificato dal metodo getIndexInfo nell'interfaccia java.sql.DatabaseMetaData.
Il set di risultati restituito dal metodo getIndexInfo conterrà le informazioni seguenti:
Nome | Tipo | Descrizione |
---|---|---|
TABLE_CAT | Stringa | Nome del database contenente la tabella specificata. |
TABLE_SCHEM | Stringa | Schema della tabella. |
TABLE_NAME | Stringa | Nome della tabella. |
NON_UNIQUE | boolean | Indica se i valori di indice possono essere non univoci. |
INDEX_QUALIFIER | Stringa | Nome del proprietario dell'indice. Sarà Null se TYPE è tableIndexStatistic. |
INDEX_NAME | Stringa | Nome dell'indice. |
TIPO | short | Tipo dell'indice. Può essere uno dei valori seguenti: tableIndexStatistic (0) tableIndexClustered (1) tableIndexHashed (2) tableIndexOther (3) |
ORDINAL_POSITION | short | Posizione ordinale della colonna nell'indice. La prima colonna nell'indice è 1. |
COLUMN_NAME | Stringa | Nome della colonna. |
ASC_OR_DESC | Stringa | Ordine utilizzato nelle regole di confronto dell'indice. Può essere uno dei valori seguenti: A (crescente) D (decrescente) NULL (non applicabile) Nota: SQL Server restituisce sempre "A". |
CARDINALITY | int | Numero di righe nella tabella o di valori univoci nell'indice. |
PAGES | int | Numero di pagine utilizzate per l'archiviazione dell'indice o della tabella. |
FILTER_CONDITION | Stringa | Condizione di filtro. Nota: SQL Server restituisce sempre Null. |
Nota
Per altre informazioni sui dati restituiti dal metodo getIndexInfo, vedere "sp_indexes (Transact-SQL)" nella documentazione online di SQL Server.
Esempio
Nell'esempio seguente viene illustrato come utilizzare il metodo getIndexInfo per restituire informazioni sugli indici e le statistiche della tabella Person.Contact nel database di esempio AdventureWorks2022.
public static void executeGetIndexInfo(Connection con) {
try {
DatabaseMetaData dbmd = con.getMetaData();
ResultSet rs = dbmd.getIndexInfo("AdventureWorks", "Person", "Contact", false, true);
ResultSetMetaData rsmd = rs.getMetaData();
// Display the result set data.
int cols = rsmd.getColumnCount();
while(rs.next()) {
for (int i = 1; i <= cols; i++) {
System.out.println(rs.getString(i));
}
}
rs.close();
}
catch (Exception e) {
e.printStackTrace();
}
}
Vedi anche
Metodi di SQLServerDatabaseMetaData
Membri di SQLServerDatabaseMetaData
Classe SQLServerDatabaseMetaData