Compartir a través de


Método getIndexInfo (SQLServerDatabaseMetaData)

Recupera una descripción de los índices y estadísticas de la tabla determinada.

Sintaxis

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

Parámetros

cat

Un String que contiene el nombre del catálogo.

schema

Un String que contiene el nombre del esquema.

table

Un String que contiene el nombre de la tabla.

unique

Es true si solo se devuelven índices para valores únicos. Es false si se devuelven todos los índices.

approximate

Es true si los resultados reflejan valores aproximados o no actualizados. Es false si los resultados son precisos.

Valor devuelto

Un objeto SQLServerResultSet.

Excepciones

SQLServerException

Notas

El método getIndexInfo especifica este método getIndexInfo en la interfaz java.sql.DatabaseMetaData.

El conjunto de resultados devuelto por el método getIndexInfo contendrá la siguiente información:

Nombre Tipo Descripción

TABLE_CAT

String

Nombre de la base de datos en que reside la tabla especificada.

TABLE_SCHEM

String

Esquema de la tabla.

TABLE_NAME

String

Nombre de la tabla.

NON_UNIQUE

boolean

Indica si los valores de índice pueden ser no únicos.

INDEX_QUALIFIER

String

Nombre del propietario del índice. Se devolverá un valor NULL cuando TYPE sea tableIndexStatistic.

INDEX_NAME

String

Nombre del índice.

TYPE

short

Tipo del índice. Puede ser uno de los siguientes valores:

tableIndexStatistic (0)

tableIndexClustered (1)

tableIndexHashed (2)

tableIndexOther (3)

ORDINAL_POSITION

short

Posición ordinal de la columna en el índice. La primera columna del índice es 1.

COLUMN_NAME

String

Nombre de columna.

ASC_OR_DESC

String

Orden utilizado en la intercalación del índice: Puede ser uno de los siguientes valores:

A (ascendente)

D (descendente)

NULL (no aplicable)

Nota

SQL Server siempre devuelve "A".

CARDINALITY

int

Número de filas de la tabla o de valores únicos del índice.

PAGES

int

Número de páginas para el almacenamiento del índice o tabla.

FILTER_CONDITION

String

Condición del filtro.

Nota

SQL Server siempre devuelve NULL.

Nota

Para obtener más información sobre los datos que devuelve el método getIndexInfo, vea "sp_indexes (Transact-SQL)" en los Libros en pantalla de SQL Server.

Ejemplo

En el siguiente ejemplo se muestra cómo utilizar el método getIndexInfo para devolver información sobre los índices y estadísticas de la tabla Person.Contact en la base de datos de ejemplo SQL Server 2005 AdventureWorks.

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

Vea también

Referencia

Clase SQLServerDatabaseMetaData

Conceptos

Métodos SQLServerDatabaseMetaData
Miembros SQLServerDatabaseMetaData