Précédent   Forum des professionnels en informatique > Bases de données > Oracle > Administration
Administration Forum d'entraide sur l'administration du serveur Oracle
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 25/11/2010, 15h15   #1
Membre régulier
 
Homme dieudonné madishon ngaya
Administrateur de base de données
Inscription : août 2003
Messages : 148
Détails du profil
Informations personnelles :
Nom : Homme dieudonné madishon ngaya
Âge : 48
Localisation : France, Seine et Marne (Île de France)

Informations professionnelles :
Activité : Administrateur de base de données
Secteur : Finance

Informations forums :
Inscription : août 2003
Messages : 148
Points : 89
Points : 89
Par défaut ORA-02298: cannot validate (SERVER.FKB7323ECE381D6300) - parent keys not found

Bonjour,
Je viens de faire un import d'un schema via datapump vers une autre base mais j'ai reçu l'erreur ci-dessous:
Citation:
ALTER TABLE "SERVER"."ITG_SETTINGS_CONTAINERS" ADD CONSTRAINT "FKBB09B98BC6590244" FOREIGN KEY ("KEY_ATTRIBUTE_ID") REFERENCES "SERVER"."ITG_SETTINGS_ATTRIBUTES" ("SETTINGS_ATTRIBUTE_ID") ENABLE

ORA-39083: Object type REF_CONSTRAINT failed to create with error:
ORA-02298: cannot validate (SERVER.FKB7323ECE381D6300) - parent keys not found
Failing sql is:
ALTER TABLE "SERVER"."ITG_SETTINGS_CONT_ATTRS" ADD CONSTRAINT "FKB7323ECE381D6300" FOREIGN KEY ("SETTINGS_ATTRIBUTE_ID") REFERENCES "SERVER"."ITG_SETTINGS_ATTRIBUTES" ("SETTINGS_ATTRIBUTE_ID") ENABLE
sur metalink, j'ai eu une requête ci-dessous pour savoir les lignes qui ne sont pas bonnes:

Code :
1
2
 
SELECT xx FROM child a WHERE NOT EXISTS (SELECT 'x' FROM parent WHERE primary_key = a.key_values);
Par contre, je ne comprends pas ce qu'il faut mettre dans key_values de cette requête.

voici ci-dessous les structures de deux tables:

Citation:
Table: ITG_SETTINGS_CONTAINERS
Name Null? Type
-------------------------------- -------- --------------------------------------------
SETTINGS_CONTAINER_ID NOT NULL NUMBER(19)
VERSION NOT NULL NUMBER(19)
CONTAINER_KEY_HASH NOT NULL VARCHAR2(32 CHAR)
KEY_ATTRIBUTE_ID NUMBER(19)
PARENT_CONTAINER_ID NUMBER(19)
SOURCE VARCHAR2(255 CHAR)
SOURCE_TYPE_CODE VARCHAR2(255 CHAR)
CREATED_BY NOT NULL NUMBER(19)
CREATION_DATE NOT NULL DATE
LAST_UPDATED_BY NOT NULL NUMBER(19)
LAST_UPDATE_DATE NOT NULL DATE



Table: PPM.ITG_SETTINGS_ATTRIBUTES
Name Null? Type
----------------------------------- -------- --------------------------------------------
SETTINGS_ATTRIBUTE_ID NOT NULL NUMBER(19)
VERSION NOT NULL NUMBER(19)
NAME NOT NULL VARCHAR2(255 CHAR)
CLASSTYPE VARCHAR2(200 CHAR)
VALUE VARCHAR2(3999 CHAR)
SOURCE VARCHAR2(255 CHAR)
SOURCE_TYPE_CODE VARCHAR2(255 CHAR)
CREATED_BY NOT NULL NUMBER(19)
CREATION_DATE NOT NULL DATE
LAST_UPDATED_BY NOT NULL NUMBER(19)
LAST_UPDATE_DATE NOT NULL DATE



les contraintes des tables sont:
__________________________

TABLE: ITG_SETTINGS_ATTRIBUTES
SYS_C00277758 ENABLED C SETTINGS_ATTRIBUTE_ID
SYS_C00277759 ENABLED C VERSION
SYS_C00277760 ENABLED C NAME
SYS_C00277761 ENABLED C CREATED_BY
SYS_C00277762 ENABLED C CREATION_DATE
SYS_C00277763 ENABLED C LAST_UPDATED_BY
SYS_C00277764 ENABLED C LAST_UPDATE_DATE
SYS_C00278765 ENABLED P SETTINGS_ATTRIBUTE_ID 1


-------------------------------------------------------------------------
TABLE: ITG_SETTINGS_CONTAINERS
SYS_C00277765 ENABLED C SETTINGS_CONTAINER_ID
SYS_C00277766 ENABLED C VERSION
SYS_C00277767 ENABLED C CONTAINER_KEY_HASH
SYS_C00277768 ENABLED C CREATED_BY
SYS_C00277769 ENABLED C CREATION_DATE
SYS_C00277770 ENABLED C LAST_UPDATED_BY
SYS_C00277771 ENABLED C LAST_UPDATE_DATE
SYS_C00278766 ENABLED P SETTINGS_CONTAINER_ID 1
FKBB09B98B25A0E939 ENABLED R PARENT_CONTAINER_ID 1
FKBB09B98BC6590244 DISABLED R KEY_ATTRIBUTE_ID 1
SYS_C00278767 ENABLED U CONTAINER_KEY_HASH 1
est ce que quelque peut me dire si qu'il faut faire ?
dngaya est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/11/2010, 21h34   #2
Membre actif
 
Inscription : février 2007
Messages : 167
Détails du profil
Informations forums :
Inscription : février 2007
Messages : 167
Points : 161
Points : 161
salut dngaya,


Code :
1
2
 
ALTER TABLE "SERVER"."ITG_SETTINGS_CONTAINERS" ADD CONSTRAINT "FKBB09B98BC6590244" FOREIGN KEY ("KEY_ATTRIBUTE_ID") REFERENCES "SERVER"."ITG_SETTINGS_ATTRIBUTES" ("SETTINGS_ATTRIBUTE_ID") ENABLE
Je comprends que la table containers dépend de la table attributes.
La fille est containers et la mère attributes.

On cherche donc les containers.key_attribute_id orphelines d'un attribute.setting_attribute_id.


Je tenterais :

Code :
1
2
3
4
 
SELECT a.KEY_ATTRIBUTE_ID FROM ITG_SETTINGS_CONTAINERS a 
WHERE NOT EXISTS 
(SELECT 'x' FROM ITG_SETTINGS_ATTRIBUTES b WHERE  b.SETTINGS_ATTRIBUTE_ID = a.KEY_ATTRIBUTE_ID);
Pozzo
Pozzo est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 18h54.


 
 
 
 
Partenaires

Hébergement Web