Метод 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, содержащее имя таблицы.
область
Значение int, указывающее область действия. Возможны следующие значения:
bestRowTemporary (0)
bestRowTransaction (1)
bestRowSession (2)
nullable
Значение true, если включаются столбцы, допускающие значение NULL. В противном случае — false.
Возвращаемое значение
Объект SQLServerResultSet.
Исключения
Замечания
Этот метод getBestRowIdentifier задается с помощью метода getBestRowIdentifier в интерфейсе java.sql.DatabaseMetaData.
Результирующий набор, возвращаемый методом getTablePrivileges, включает следующие данные.
Имя. | Тип | Описание |
---|---|---|
ОБЛАСТЬ | short | Область возвращаемых результатов. Может иметь одно из следующих значений. bestRowTemporary (0) bestRowTransaction (1) bestRowSession (2) |
COLUMN_NAME | Строка | Имя столбца. |
DATA_TYPE | short | Тип данных SQL из java.sql.Types. |
TYPE_NAME | Строка | Имя типа данных. |
COLUMN_SIZE | INT | Точность столбца. |
BUFFER_LENGTH | INT | Длина буфера. |
DECIMAL_DIGITS | short | Масштаб столбца. |
PSEUDO_COLUMN | short | Указывает, является ли столбец псевдостолбцом. Может иметь одно из следующих значений. bestRowUnknown (0) bestRowNotPseudo (1) bestRowPseudo (2) |
Пример
В следующем примере показано, как использовать метод getBestRowIdentifier для возврата сведений о лучшем идентификаторе строки таблицы Person.Contact в образце базы данных AdventureWorks2022.
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