getCrossReference 메서드(SQLServerDatabaseMetaData)

JDBC 드라이버 다운로드

지정된 외래 키 테이블에서 지정된 기본 키 테이블의 기본 키 열을 참조하는 외래 키 열에 대한 설명을 검색합니다.

구문

  
public java.sql.ResultSet getCrossReference(java.lang.String cat1,  
                                            java.lang.String schem1,  
                                            java.lang.String tab1,  
                                            java.lang.String cat2,  
                                            java.lang.String schem2,  
                                            java.lang.String tab2)  

매개 변수

cat1

기본 키가 포함된 테이블의 카탈로그 이름이 들어 있는 문자열입니다.

schem1

기본 키가 포함된 테이블의 스키마 이름이 들어 있는 문자열입니다.

tab1

기본 키가 포함된 테이블의 테이블 이름이 들어 있는 문자열입니다.

cat2

외래 키가 포함된 테이블의 카탈로그 이름이 들어 있는 문자열입니다.

schem2

외래 키가 포함된 테이블의 스키마 이름이 들어 있는 문자열입니다.

tab2

외래 키가 포함된 테이블의 테이블 이름이 들어 있는 문자열입니다.

Return Value

SQLServerResultSet 개체입니다.

예외

SQLServerException

설명

이 getCrossReference 메서드는 java.sql.DatabaseMetaData 인터페이스의 getCrossReference 메서드에 의해 지정됩니다.

getCrossReference 메서드에서 반환되는 결과 집합에는 다음 정보가 포함됩니다.

Name Type Description
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 커밋될 때까지 FOREIGN KEY 제약 조건의 확인을 지연시킬 수 있는지 여부를 나타냅니다. 다음 값 중 하나일 수 있습니다.

importedKeyInitiallyDeferred(5)

importedKeyInitiallyImmediate(6)

importedKeyNotDeferrable(7)

참고

getCrossReference 메서드에서 반환되는 데이터에 대한 자세한 내용은 SQL Server 온라인 설명서의 “sp_fkeys(Transact-SQL)”를 참조하세요.

예제

다음 예제에서는 getCrossReference 메서드를 사용하여 AdventureWorks2022 샘플 데이터베이스의 Person.Contact와 HumanResources.Employee 테이블 간의 기본 및 외래 키 관계에 대한 정보를 반환하는 방법을 보여 줍니다.

public static void executeGetCrossReference(Connection con) {  
   try {  
      DatabaseMetaData dbmd = con.getMetaData();  
      ResultSet rs = dbmd.getCrossReference("AdventureWorks", "Person", "Contact", null, "HumanResources", "Employee");  
      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 클래스