Delen via


methode getCrossReference (SQLServerDatabaseMetaData)

JDBC-stuurprogramma downloaden

Haalt een beschrijving op van de vreemde sleutelkolommen in de gegeven vreemde sleuteltabel die verwijst naar de primaire sleutelkolommen van de gegeven primaire sleuteltabel.

Syntaxis

  
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)  

Parameterwaarden

cat1

Een string die de catalogusnaam bevat van de tabel die de primaire sleutel bevat.

schem1

Een string die de schemanaam bevat van de tabel die de primaire sleutel bevat.

tab1

Een string die de tabelnaam bevat van de tabel die de primaire sleutel bevat.

cat2

Een string die de catalogusnaam bevat van de tabel die de vreemde sleutel bevat.

schem2

Een string die de schemanaam bevat van de tabel die de vreemde sleutel bevat.

tab2

Een string die de tabelnaam bevat van de tabel die de vreemde sleutel bevat.

Retourwaarde

Een SQLServerResultSet-object .

Exceptions

SQLServerException

Opmerkingen

Deze getCrossReference-methode wordt gespecificeerd door de getCrossReference-methode in de java.sql.DatabaseMetaData-interface.

De resultaatset die door de getCrossReference-methode wordt teruggegeven, bevat de volgende informatie:

Naam Typologie Description
PKTABLE_CAT String De naam van de catalogus die de primaire sleuteltabel bevat.
PKTABLE_SCHEM String De naam van het schema van de primaire sleuteltabel.
PKTABLE_NAME String De naam van de primaire sleuteltabel.
PKCOLUMN_NAME String De kolomnaam van de primaire sleutel.
FKTABLE_CAT String De naam van de catalogus die de vreemde sleuteltabel bevat.
FKTABLE_SCHEM String De naam van het schema van de vreemde sleutel-tabel.
FKTABLE_NAME String De naam van de vreemde sleutel-tabel.
FKCOLUMN_NAME String De kolomnaam van de vreemde sleutel.
KEY_SEQ kort Het volgnummer van de kolom in een primaire sleutel met meerdere kolommen.
UPDATE_RULE kort De actie die wordt toegepast op de vreemde sleutel wanneer de SQL-operatie een update is. Dit kan een van de volgende waarden zijn:

geïmporteerdKeyNoAction (3)

importedKeyCascade (0)

importedKeySetNull (2)

importedKeySetDefault (4)

importedKeyRestrict (1)
DELETE_RULE kort De actie die wordt toegepast op de vreemde sleutel wanneer de SQL-operatie wordt uitgevoerd, is een verwijdering. Dit kan een van de volgende waarden zijn:

geïmporteerdKeyNoAction (3)

importedKeyCascade (0)

importedKeySetNull (2)

importedKeySetDefault (4)

importedKeyRestrict (1)
FK_NAME String De naam van de vreemde sleutel.
PK_NAME String De naam van de primaire sleutel.
UITSTELBAARHEID kort Geeft aan of de evaluatie van de vreemde sleutel-beperking kan worden uitgesteld tot een commit. Dit kan een van de volgende waarden zijn:

importedKeyInitiallyDeferred (5)

importedKeyInitiallyImmediate (6)

geïmporteerdKeyNotDeferrable (7)

Opmerking

Voor meer informatie over de gegevens die door de getCrossReference-methode worden teruggegeven, zie "sp_fkeys (Transact-SQL)" in SQL Server Books Online.

Example

Het volgende voorbeeld laat zien hoe je de getCrossReference-methode kunt gebruiken om informatie terug te geven over de primaire en vreemde sleutelrelatie tussen de Person.Contact- en HumanResources.Employee-tabellen in de AdventureWorks2025 voorbeelddatabase.

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

Zie ook

SQLServerDatabaseMetaData-methoden
SQLServerDatabaseMetaData-leden
SQLServerDatabaseMetaData-klasse