擷取資料表中最佳資料行集的描述,此資料行集可唯一識別資料列。
語法
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。
傳回值
例外狀況
備註
這個 getBestRowIdentifier 方法是由 java.sql.DatabaseMetaData 介面中的 getBestRowIdentifier 方法所指定。
getBestRowIdentifier 方法所傳回的結果集將包含下列資訊:
名稱 | 類型 | Description |
---|---|---|
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 方法來傳回 AdventureWorks2022 範例資料庫中 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 類別