Compartir a través de


getBestRowIdentifier Method (SQLServerDatabaseMetaData)

Retrieves a description of the optimal set of columns of a table that uniquely identifies a row.

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

Parámetros

catalog

A String that contains the catalog name.

schema

A String that contains the schema name.

table

A String that contains the table name.

scope

An int that indicates the scope of interest. Values can include the following:

bestRowTemporary (0)

bestRowTransaction (1)

bestRowSession (2)

nullable

true to include nullable columns. Otherwise, false.

Valor devuelto

A SQLServerResultSet object.

Excepciones

SQLServerException

Notas

This getBestRowIdentifier method is specified by the getBestRowIdentifier method in the java.sql.DatabaseMetaData interface.

The result set returned by the getBestRowIdentifier method will contain the following information:

Name Type Description

SCOPE

short

The scope of the returned results. It can be one of the following values:

bestRowTemporary (0)

bestRowTransaction (1)

bestRowSession (2)

COLUMN_NAME

String

The name of the column.

DATA_TYPE

short

The SQL data type from java.sql.Types.

TYPE_NAME

String

The name of the data type.

COLUMN_SIZE

int

The precision of the column.

BUFFER_LENGTH

int

The buffer length.

DECIMAL_DIGITS

short

The scale of the column.

PSEUDO_COLUMN

short

Indicates if the column is a pseudo column. It can be one of the following values:

bestRowUnknown (0)

bestRowNotPseudo (1)

bestRowPseudo (2)

Ejemplo

The following example demonstrates how to use the getBestRowIdentifier method to return information about the best row identifier for the Person.Contact table in the SQL Server 2005 AdventureWorks sample database.

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

SQLServerDatabaseMetaData Class

Conceptos

SQLServerDatabaseMetaData Methods
SQLServerDatabaseMetaData Members