Méthode getCrossReference (SQLServerDatabaseMetaData)
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
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