Метод getImportedKeys (SQLServerDatabaseMetaData)
Возвращает описание столбцов первичного ключа, на которые ссылаются столбцы внешнего ключа таблицы.
Синтаксис
public java.sql.ResultSet getImportedKeys(java.lang.String cat,
java.lang.String schema,
java.lang.String table)
Параметры
cat
Значение типа String, содержащее имя каталога.
schema
Значение типа String, содержащее имя схемы.
table
Значение типа String, содержащее имя таблицы.
Возвращаемое значение
Объект SQLServerResultSet.
Исключения
Замечания
Этот метод getImportedKeys задается с помощью метода getImportedKeys в интерфейсе java.sql.DatabaseMetaData.
Результирующий набор, возвращаемый методом getImportedKeys, включает следующие данные:
Имя. | Тип | Описание |
---|---|---|
PKTABLE_CAT | String | Имя каталога, содержащего таблицу первичного ключа. |
PKTABLE_SCHEM | String | Имя схемы таблицы первичного ключа. |
PKTABLE_NAME | String | Имя таблицы первичного ключа. |
PKCOLUMN_NAME | String | Имя столбца первичного ключа. |
FKTABLE_CAT | String | Имя каталога, содержащего таблицу внешнего ключа. |
FKTABLE_SCHEM | String | Имя схемы таблицы внешнего ключа. |
FKTABLE_NAME | String | Имя таблицы внешнего ключа. |
FKCOLUMN_NAME | String | Имя столбца внешнего ключа. |
KEY_SEQ | short | Порядковый номер столбца в первичном ключе из нескольких столбцов. |
UPDATE_RULE | short | Действие, применяемое к внешнему ключу, если операцией SQL является операция обновления. Может иметь одно из следующих значений. importedKeyNoAction (3) importedKeyCascade (0) importedKeySetNull (2) importedKeySetDefault (4) importedKeyRestrict (1) |
DELETE_RULE | short | Действие, применяемое к внешнему ключу, если операцией SQL является операция удаления. Может иметь одно из следующих значений. importedKeyNoAction (3) importedKeyCascade (0) importedKeySetNull (2) importedKeySetDefault (4) importedKeyRestrict (1) |
FK_NAME | String | Имя внешнего ключа. |
PK_NAME | String | Имя первичного ключа. |
DEFERRABILITY | short | Указывает, можно ли отложить вычисление ограничения внешнего ключа до фиксации. Может иметь одно из следующих значений. importedKeyInitiallyDeferred (5) importedKeyInitiallyImmediate (6) importedKeyNotDeferrable (7) |
Примечание.
Дополнительные сведения о данных, возвращаемых методом getImportedKeys, см. в статье "sp_fkeys (Transact-SQL)" электронной документации на Microsoft SQL Server.
Пример
В следующем примере показано, как использовать метод getImportedKeys для возврата сведений обо всех первичных ключах, ссылающихся на внешние ключи таблицы Person.Address в примере базы данных AdventureWorks2022.
public static void executeGetImportedKeys(Connection con) {
try {
DatabaseMetaData dbmd = con.getMetaData();
ResultSet rs = dbmd.getImportedKeys("AdventureWorks", "Person", "Address");
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