Partilhar via


Método getCrossReference (SQLServerDatabaseMetaData)

Baixar o JDBC Driver

Recupera uma descrição das colunas de chave estrangeira da tabela de chaves estrangeiras fornecida que referencia as colunas de chave primária da tabela de chaves primárias fornecida.

Sintaxe

  
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)  

Parâmetros

cat1

Uma String que contém o nome de catálogo da tabela que contém a chave primária.

schem1

Uma String que contém o nome de esquema da tabela que contém a chave primária.

tab1

Uma String que contém o nome de tabela da tabela que contém a chave primária.

cat2

Uma String que contém o nome de catálogo da tabela que contém a chave estrangeira.

schem2

Uma String que contém o nome de esquema da tabela que contém a chave estrangeira.

tab2

Uma String que contém o nome de tabela da tabela que contém a chave estrangeira.

Valor retornado

Um objeto SQLServerResultSet.

Exceções

SQLServerException

Comentários

Esse método getCrossReference é especificado pelo método getCrossReference na interface java.sql.DatabaseMetaData.

O conjunto de resultados retornado pelo método getCrossReference conterá as seguintes informações:

Nome Tipo Descrição
PKTABLE_CAT Cadeia de caracteres O nome do catálogo que contém a tabela de chaves primárias.
PKTABLE_SCHEM Cadeia de caracteres O nome do esquema da tabela de chaves primárias.
PKTABLE_NAME Cadeia de caracteres O nome da tabela de chaves primárias.
PKCOLUMN_NAME Cadeia de caracteres O nome da coluna da chave primária.
FKTABLE_CAT Cadeia de caracteres O nome do catálogo que contém a tabela de chaves estrangeiras.
FKTABLE_SCHEM Cadeia de caracteres O nome do esquema da tabela de chaves estrangeiras.
FKTABLE_NAME Cadeia de caracteres O nome da tabela de chaves estrangeiras.
FKCOLUMN_NAME Cadeia de caracteres O nome da coluna da chave estrangeira.
KEY_SEQ short O número de sequência da coluna em uma chave primária de várias colunas.
UPDATE_RULE short A ação aplicada à chave estrangeira quando a operação SQL for uma atualização. Pode ser um dos seguintes valores:

importedKeyNoAction (3)

importedKeyCascade (0)

importedKeySetNull (2)

importedKeySetDefault (4)

importedKeyRestrict (1)
DELETE_RULE short A ação aplicada à chave estrangeira quando a operação SQL for uma exclusão. Pode ser um dos seguintes valores:

importedKeyNoAction (3)

importedKeyCascade (0)

importedKeySetNull (2)

importedKeySetDefault (4)

importedKeyRestrict (1)
FK_NAME Cadeia de caracteres O nome da chave estrangeira.
PK_NAME Cadeia de caracteres O nome da chave primária.
DEFERRABILITY short Indica se a avaliação da restrição de chave estrangeira poderá ser adiada até uma confirmação. Pode ser um dos seguintes valores:

importedKeyInitiallyDeferred (5)

importedKeyInitiallyImmediate (6)

importedKeyNotDeferrable (7)

Observação

Para saber mais sobre os dados retornados pelo método getCrossReference, confira "sp_fkeys (Transact-SQL)" nos Manuais Online do SQL Server.

Exemplo

O exemplo a seguir demonstra como usar o método getCrossReference para retornar informações sobre a relação de chave primária e estrangeira entre as tabelas Person.Contact e HumanResources.Employee no banco de dados de exemplo AdventureWorks2022.

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();  
   }  
}  

Consulte Também

Métodos SQLServerDatabaseMetaData
Membros SQLServerDatabaseMetaData
Classe SQLServerDatabaseMetaData