Compartir a través de


Método getBestRowIdentifier (SQLServerDatabaseMetaData)

Recupera una descripción del conjunto óptimo de columnas de una tabla que identifique una fila de forma única.

Sintaxis

public java.sql.ResultSet getBestRowIdentifier(java.lang.String catalog,
                                               java.lang.String schema,
                                               java.lang.String table,
                                               int scope,
                                               boolean nullable)

Parámetros

catalog

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.

scope

Un valor int que indica el ámbito de interés. Los valores pueden incluir lo siguiente:

bestRowTemporary (0)

bestRowTransaction (1)

bestRowSession (2)

nullable

Es true cuando se aceptan columnas con valores NULL. En caso contrario, es false.

Valor devuelto

Un objeto SQLServerResultSet.

Excepciones

SQLServerException

Notas

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

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

Nombre Tipo Descripción

SCOPE

short

Ámbito de los resultados devueltos. Puede ser uno de los siguientes valores:

bestRowTemporary (0)

bestRowTransaction (1)

bestRowSession (2)

COLUMN_NAME

String

Nombre de columna.

DATA_TYPE

short

Tipo de datos SQL de java.sql.Types.

TYPE_NAME

String

Nombre del tipo de datos.

COLUMN_SIZE

int

Precisión de la columna.

BUFFER_LENGTH

int

Longitud del búfer.

DECIMAL_DIGITS

short

Escala de la columna.

PSEUDO_COLUMN

short

Indica si la columna es una pseudocolumna. Puede ser uno de los siguientes valores:

bestRowUnknown (0)

bestRowNotPseudo (1)

bestRowPseudo (2)

Ejemplo

En el siguiente ejemplo se muestra cómo utilizar el método getBestRowIdentifier para devolver información acerca del mejor identificador de fila para la tabla Person.Contact en la base de datos de ejemplo SQL Server 2005 AdventureWorks.

public static void executeGetBestRowIdentifier(Connection con) {
   try {
      DatabaseMetaData dbmd = con.getMetaData();
      ResultSet rs = dbmd.getBestRowIdentifier(null, "Person", "Contact", 0, 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