Méthode getCrossReference (SQLServerDatabaseMetaData)

Télécharger le pilote JDBC

Récupère une description des colonnes de clés étrangères dans la table de clés étrangères donnée qui référence les colonnes de clés primaires de la table de clés primaires donnée.

Syntaxe

  
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)  

Paramètres

cat1

Chaîne contenant le nom du catalogue qui contient la table de clés primaires.

schem1

Chaîne contenant le nom du schéma qui contient la table de clés primaires.

tab1

Chaîne contenant le nom de la table qui contient de clés primaires.

cat2

Chaîne contenant le nom du catalogue de la table qui contient la clé étrangère.

schem2

Chaîne contenant le nom du schéma de la table qui contient la clé étrangère.

tab2

Chaîne contenant le nom de la table qui contient la clé étrangère.

Valeur de retour

Objet SQLServerResultSet.

Exceptions

SQLServerException

Notes

Cette méthode getCrossReference est spécifiée par la méthode getCrossReference de l’interface java.sql.DatabaseMetaData.

Le jeu de résultats retourné par la méthode getCrossReference contient les informations suivantes :

Nom Type Description
PKTABLE_CAT Chaîne Nom du catalogue qui contient la table de clés primaires.
PKTABLE_SCHEM Chaîne Nom du schéma de la table de clés primaires.
PKTABLE_NAME Chaîne Nom de la table de clés primaires.
PKCOLUMN_NAME Chaîne Nom de colonne de la clé primaire.
FKTABLE_CAT Chaîne Nom du catalogue qui contient la table de clés étrangères.
FKTABLE_SCHEM Chaîne Nom du schéma de la table de clés étrangères.
FKTABLE_NAME Chaîne Nom de la table de clés étrangères.
FKCOLUMN_NAME Chaîne Nom de colonne de la clé étrangère.
KEY_SEQ short Numéro séquentiel de la colonne dans une clé primaire multicolonne.
UPDATE_RULE short Action appliquée à la clé étrangère lorsque l'opération SQL correspond à une mise à jour. Ce peut être l’une des valeurs suivantes :

importedKeyNoAction (3)

importedKeyCascade (0)

importedKeySetNull (2)

importedKeySetDefault (4)

importedKeyRestrict (1)
DELETE_RULE short Action appliquée à la clé étrangère lorsque l'opération SQL correspond à une suppression. Ce peut être l’une des valeurs suivantes :

importedKeyNoAction (3)

importedKeyCascade (0)

importedKeySetNull (2)

importedKeySetDefault (4)

importedKeyRestrict (1)
FK_NAME Chaîne Nom de la clé étrangère.
PK_NAME Chaîne Nom de la clé primaire.
DEFERRABILITY short Indique si l'évaluation de la contrainte de clé étrangère peut être différée jusqu'à une opération de validation. Ce peut être l’une des valeurs suivantes :

importedKeyInitiallyDeferred (5)

importedKeyInitiallyImmediate (6)

importedKeyNotDeferrable (7)

Notes

Pour plus d’informations sur les données retournées par la méthode getCrossReference, consultez « sp_fkeys (Transact-SQL) » dans la documentation en ligne de SQL Server.

Exemple

L’exemple suivant montre comment utiliser la méthode getCrossReference pour retourner des informations sur les relations de clés primaires et étrangères entre les tables Person.Contact et HumanResources.Employee dans l’exemple de base de données 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();  
   }  
}  

Voir aussi

Méthodes SQLServerDatabaseMetaData
SQLServerDatabaseMetaData, membres
SQLServerDatabaseMetaData, classe