Compartir vía


Método getCrossReference (SQLServerDatabaseMetaData)

Descargar controlador JDBC

Recupera una descripción de las columnas de clave externa en la tabla de clave externa determinada que hace referencia a las columnas de clave principal de la tabla de claves principales determinada.

Sintaxis

  
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

Objeto String que contiene el nombre del catálogo de la tabla que incluye la clave principal.

schem1

Objeto String que contiene el nombre del esquema de la tabla que incluye la clave principal.

tab1

Objeto String que contiene el nombre de tabla de la tabla que incluye la clave principal.

cat2

Objeto String que contiene el nombre del catálogo de la tabla que incluye la clave externa.

schem2

Objeto String que contiene el nombre del esquema de la tabla que incluye la clave externa.

tab2

Objeto String que contiene el nombre de tabla de la tabla que incluye la clave externa.

Valor devuelto

Objeto SQLServerResultSet.

Excepciones

SQLServerException

Observaciones

El método getCrossReference especifica este método getCrossReference en la interfaz java.sql.ParameterMetaData.

El conjunto de resultados devuelto por el método getCrossReference contendrá la siguiente información:

Nombre Escribir Descripción
PKTABLE_CAT String Nombre del catálogo que contiene la tabla de la clave principal.
PKTABLE_SCHEM String Nombre del esquema de la tabla de la clave principal.
PKTABLE_NAME String Nombre de la tabla de la clave principal.
PKCOLUMN_NAME String Nombre de la columna de la clave principal.
FKTABLE_CAT String Nombre del catálogo que contiene la tabla de la clave externa.
FKTABLE_SCHEM String Nombre del esquema de la tabla de la clave externa.
FKTABLE_NAME String Nombre de la tabla de la clave externa.
FKCOLUMN_NAME String Nombre de la columna de la clave externa.
KEY_SEQ short Número de secuencia de la columna en una clave principal en varias columnas.
UPDATE_RULE short Acción aplicada a la clave externa cuando la operación de SQL sea una actualización. Puede ser uno de los siguientes valores:

importedKeyNoAction (3)

importedKeyCascade (0)

importedKeySetNull (2)

importedKeySetDefault (4)

importedKeyRestrict (1)
DELETE_RULE short Acción aplicada a la clave externa cuando la operación de SQL sea una eliminación. Puede ser uno de los siguientes valores:

importedKeyNoAction (3)

importedKeyCascade (0)

importedKeySetNull (2)

importedKeySetDefault (4)

importedKeyRestrict (1)
FK_NAME String El nombre de la clave externa.
PK_NAME String Nombre de la clave principal.
DEFERRABILITY short Indica si la evaluación de la restricción de la clave externa se puede diferir hasta que se efectúe una confirmación. Puede ser uno de los siguientes valores:

importedKeyInitiallyDeferred (5)

importedKeyInitiallyImmediate (6)

importedKeyNotDeferrable (7)

Nota

Para más información sobre los datos que devuelve el método getCrossReference, consulte "sp_fkeys (Transact-SQL)" en los Libros en pantalla de SQL Server.

Ejemplo

En el siguiente ejemplo se muestra cómo utilizar el método getCrossReference para devolver información sobre la relación de las claves principal y externa con las tablas Person.Contact y HumanResources.Employee en la base de datos de ejemplo 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 también

Métodos SQLServerDatabaseMetaData
Miembros SQLServerDatabaseMetaData
Clase SQLServerDatabaseMetaData