Dela via


getIndexInfo-metoden (SQLServerDatabaseMetaData)

Ladda ned JDBC-drivrutin

Hämtar en beskrivning av index och statistik för den givna tabellen.

Syntax

  
public java.sql.ResultSet getIndexInfo(java.lang.String cat,  
                                       java.lang.String schema,  
                                       java.lang.String table,  
                                       boolean unique,  
                                       boolean approximate)  

Parameterar

katt

En sträng som innehåller katalognamnet.

schema

En sträng som innehåller schemanamnet.

table

En sträng som innehåller tabellnamnet.

unik

sant om endast index för unika värden returneras. falskt om alla index returneras.

ungefärlig

Sant om resultaten speglar ungefärliga eller föråldrade värden. falskt om resultaten är korrekta.

Returvärde

Ett SQLServerResultSet-objekt .

Exceptions

SQLServerException

Anmärkningar

Denna getIndexInfo-metod specificeras av getIndexInfo-metoden i gränssnittet java.sql.DatabaseMetaData.

Resultatmängden som returneras av getIndexInfo-metoden kommer att innehålla följande information:

Namn Typ Description
TABLE_CAT String Namnet på databasen där den angivna tabellen finns.
TABLE_SCHEM String Schemat för tabellen.
TABLE_NAME String Tabellens namn.
NON_UNIQUE boolesk Anger om indexvärdena kan vara icke-unika.
INDEX_QUALIFIER String Namnet på indexägaren. Den kommer att vara null när TYPE är tableIndexStatistic.
INDEX_NAME String Namnet på indexet.
TYPE kort Typen av index. Det kan vara något av följande värden:

tableIndexStatistic (0)

tableIndexClustered (1)

tableIndexHashed (2)

tableIndexOther (3)
ORDINAL_POSITION kort Kolumnens ordinala position i indexet. Den första kolumnen i indexet är 1.
COLUMN_NAME String Namnet på kolumnen.
ASC_OR_DESC String Ordningen som används vid sortering av indexet. Det kan vara något av följande värden:

A (stigande)

D (fallande)

NULL (ej tillämpligt)

Not: SQL Server returnerar alltid "A".
CARDINALITY int Antalet rader i tabellen eller unika värden i indexet.
SIDOR int Antalet sidor som används för att lagra indexet eller tabellen.
FILTER_CONDITION String Filtervillkoret.

Not: SQL Server returnerar alltid null.

Anmärkning

För mer information om data som returneras av getIndexInfo-metoden, se "sp_indexes (Transact-SQL)" i SQL Server Books Online.

Example

Följande exempel visar hur man använder getIndexInfo-metoden för att returnera information om indexen och statistiken för Person.Kontakt-tabellen i AdventureWorks2025-exempeldatabasen.

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();  
   }  
}  

Se även

SQLServerDatabaseMetaData-metoder
SQLServerDatabaseMetaData-medlemmar
SQLServerDatabaseMetaData-klassen