Bonjour,
j'ai défini une clé étrangère dans la table contrat qui référence la table bailleur. J'ai défini ce champ on delete set NULL, puis on delete cascade et aucun changement n'apparaît.
Voici mes résultats :
TABLE_NAME CONSTRAINT_NAME C DELETE_RU
------------------------------ ------------------------------ - ---------
CONTRAT CONTRAT_CONTRATID_PK P
CONTRAT FK_CONTRAT_BAILLEUR R CASCADE
CONTRAT FK_CONTRAT_REGLEEVOL R NO ACTION
CONTRAT FK_CONTRAT_CONTRAT R NO ACTION
CONTRAT FK_CONTRAT_LIVRAISON R NO ACTION
CONTRAT FK_CONTRAT_LIVRAISON_2 R NO ACTION
CONTRAT FK_CONTRAT_ADDCONTRAT R NO ACTION
CONTRAT FK_CONTRAT_DEVISE R NO ACTION
CONTRAT FK_CONTRAT_GROUPECTR R NO ACTION
CONTRAT FK_CONTRAT_POLICE R NO ACTION
SQL> delete from bailleur where bailleurid=67970551;
delete from bailleur where bailleurid=67970551
*
ERREUR à la ligne 1 :
ORA-02292: integrity constraint (ASSETTEST.FK_CONTACTBAIL_BAILLEUR) violated - child record found
SQL> select bailleurid, contratid from contrat where contratid=68276671;
BAILLEURID CONTRATID
---------- ----------
67970551 68276671
Est-ce parce que d'autres foreign key sont définies en NO ACTION que le contrat n'a pas été supprimé??
Y a t'il une solution à ce problème?
Merci