getBestRowIdentifier 方法 (SQLServerDatabaseMetaData)

检索表中唯一标识一行的最佳列集的说明。

# 语法

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

# 参数

catalog

包含目录名称的 String。

schema

包含架构名称的 String。

table

包含表名称的 String。

scope

指示相关范围的 int 值。可以包括下列值：

bestRowTemporary (0)

bestRowTransaction (1)

bestRowSession (2)

nullable

true 可以包含可为 Null 的列。否则为 false。

# 返回值

SQLServerResultSet 对象。

# 异常

SQLServerException

# 注释

此 getBestRowIdentifier 方法由 java.sql.DatabaseMetaData 接口中的 getBestRowIdentifier 方法指定。

由 getBestRowIdentifier 方法返回的结果集将包含下列信息：

名称 | 类型 | 说明
--- | --- | ---
SCOPE | short | 返回结果的范围。可以是下列值之一： bestRowTemporary (0) bestRowTransaction (1) bestRowSession (2)
COLUMN_NAME | String | 列的名称。
DATA_TYPE | short | 来自 java.sql.Types 的 SQL 数据类型。
TYPE_NAME | String | 数据类型的名称。
COLUMN_SIZE | int | 列的精度。
BUFFER_LENGTH | int | 缓冲区长度。
DECIMAL_DIGITS | short | 列的小数位数。
PSEUDO_COLUMN | short | 指示列是否为伪列。可以是下列值之一： bestRowUnknown (0) bestRowNotPseudo (1) bestRowPseudo (2)

# 示例

下例演示了如何使用 getBestRowIdentifier 方法返回 SQL Server 2005AdventureWorks 示例数据库中的 Person.Contact 表的最佳行标识符的信息。

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

# 请参阅

SQLServerDatabaseMetaData 类
SQLServerDatabaseMetaData 方法
SQLServerDatabaseMetaData 成员
发送有关本主题的反馈至 Microsoft。

© 2012 Microsoft。保留所有权利。