Me da el siguiente error en Oracle SQL Developer:

Error starting at line 1 in command:
    ALTER TABLE AEROPUERTO ADD CONSTRAINT AEROPUERTO_FK FOREIGN KEY (CODIGO_CIUDAD) REFERENCES CIUDAD(CODIGO)

Error report:
    SQL Error: ORA-02298: cannot validate (SYSTEM.AEROPUERTO_FK) - parent keys not found
    02298. 00000 - "cannot validate (%s.%s) - parent keys not found"
    *Cause:    an alter table validating constraint failed because the table has
               child records.
    *Action:   Obvious

¿Por qué?

OriginalEl autor andandandand | 2011-01-15

2 Comentarios

  1. 32

    Hay registros en AEROPUERTO que seleccione los registros que no existen en CIUDAD.

    Para averiguar que los registros de AEROPUERTO tener ese tipo de problema:

    select * from AEROPUERTO where CODIGO_CIUDAD not in (select CODIGO from CIUDAD)

    Si el resultado conjunto es no vacío, hacer han orphanaged registros. Usted tendrá que agregar la falta CIUDAD registros con el fin de crear la AEROPUERTO_FK de clave externa, o actualización de todas las errónea AEROPUERTO.CODIGO_CIUDAD a null (si se trata de un campo acepta valores null, pero se perderá la información de la ciudad para aquellos aeropuerto de registros).

    OriginalEl autor rsenna

  2. 2

    quitar la restricción de clave principal de la columna en la que desea agregar la clave externa

    OriginalEl autor Amit Kumar

Dejar respuesta

Please enter your comment!
Please enter your name here