getImportedKeys 方法 (SQLServerDatabaseMetaData)

下载 JDBC 驱动程序

检索表中外键列引用的主键列的说明。

语法

  
public java.sql.ResultSet getImportedKeys(java.lang.String cat,  
                                          java.lang.String schema,  
                                          java.lang.String table)  

参数

cat

一个包含目录名称的字符串 。

架构

一个包含架构名称的字符串

table

一个包含表名称的字符串

返回值

一个 SQLServerResultSet 对象。

例外

SQLServerException

备注

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

由 getImportedKeys 方法返回的结果集将包含以下信息:

名称 Type 说明
PKTABLE_CAT 字符串 包含主键表的目录名称。
PKTABLE_SCHEM 字符串 主键表的架构名称。
PKTABLE_NAME 字符串 主键表的名称。
PKCOLUMN_NAME 字符串 主键的列名称。
FKTABLE_CAT 字符串 包含外键表的目录名称。
FKTABLE_SCHEM 字符串 外键表的架构名称。
FKTABLE_NAME 字符串 外键表的名称。
FKCOLUMN_NAME 字符串 外键的列名称。
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 字符串 外键的名称。
PK_NAME 字符串 主键的名称。
DEFERRABILITY short 指示对外键约束的计算是否可以延迟到提交时。 可以为下列值之一:

importedKeyInitiallyDeferred (5)

importedKeyInitiallyImmediate (6)

importedKeyNotDeferrable (7)

注意

有关 getImportedKeys 方法返回的数据的详细信息,请参阅 SQL Server 联机丛书中的“sp_fkeys (Transact-SQL)”。

示例

以下示例演示了如何使用 getImportedKeys 方法返回有关引用 AdventureWorks2022 示例数据库中 Person.Address 表的外键的所有主键的信息。

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 类