Précédent   Forum des professionnels en informatique > Bases de données > Autres SGBD > InterBase
InterBase Forum d'entraide sur le SGBD InterBase de Codegear. Avant de poster -> F.A.Q Interbase, Tutoriels
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 14/12/2004, 18h11   #1
GMI
Invité de passage
 
Inscription : novembre 2002
Messages : 13
Détails du profil
Informations forums :
Inscription : novembre 2002
Messages : 13
Points : 0
Points : 0
Par défaut suppression d'une foreign key

bonjour à tous

je suis actuellement en train de modifier un logiciel (en delphi) et sa base de donnée interbase et je dois supprimer une foreign key d'une table (pas le champ, juste le fait que ce champ soit une foreign key).

le probléme: je ne peux pas supprimer la fk car on me dis que l'index (automatiquement créer par interbase) est utiliser, or je ne peux pas le supprimer...

voici le message qu'on m'envoye quand j'essaye de supprimer la fk :
"This operation is not defined for system tables
unsuccessful metadata update
object INDEX is in use"

comment faire??? est ce que je dois vider la table de toutes c données(trés embétant...)?

merci d'avance
GMI est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/12/2004, 19h21   #2
Membre Expert
 
Avatar de Barbibulle
 
Frédéric
Inscription : octobre 2002
Messages : 1 722
Détails du profil
Informations personnelles :
Nom : Frédéric
Âge : 42

Informations forums :
Inscription : octobre 2002
Messages : 1 722
Points : 2 025
Points : 2 025
Fermez Delphi et tout autres logiciels qui pourait se connecter à votre base. Et essayez de nouveau de supprimez la FK depuis IBConsole.

Code :
ALTER TABLE LA_TABLE_CONTENANT_LA_FK DROP CONSTRAINT INTEG_XX;
INTEG_XX est le nom de la contrainte correspondant à votre FK.

On peut la trouver avec cette requete :
Code :
1
2
3
4
5
6
7
SELECT RC.RDB$CONSTRAINT_NAME
FROM RDB$RELATION_CONSTRAINTS RC
INNER JOIN rdb$index_segments I ON I.rdb$index_name=RC.rdb$index_name
WHERE RC.rdb$constraint_type='FOREIGN KEY'
 
AND rc.rdb$relation_name='LA_TABLE_CONTENANT_LA_FK'
AND i.rdb$field_name='LE_NOM_DE_LA_COLONNE_CONTENANT_LA_FK'
Barbibulle est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/12/2004, 10h53   #3
GMI
Invité de passage
 
Inscription : novembre 2002
Messages : 13
Détails du profil
Informations forums :
Inscription : novembre 2002
Messages : 13
Points : 0
Points : 0
merci pour ta réponse.

le probleme est toujours le meme: j'ai tout fermer (aucun logiciel ne se connecte à ma base), j'ai ouvert IBConsole et essayer de lancer la requete : ALTER TABLE CLIENT_ARTICLE DROP CONSTRAINT FK_CLIENT_ARTICLE2 mais toujours la meme reponse:

"Unsuccessful metadata update
object INDEX is in use
Statement: ALTER TABLE CLIENT_ARTICLE DROP CONSTRAINT FK_CLIENT_ARTICLE2"


y'a pas moyen de supprimer l'index qui fait reference à ce champ?
GMI est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/12/2004, 10h49   #4
Membre Expert
 
Avatar de Barbibulle
 
Frédéric
Inscription : octobre 2002
Messages : 1 722
Détails du profil
Informations personnelles :
Nom : Frédéric
Âge : 42

Informations forums :
Inscription : octobre 2002
Messages : 1 722
Points : 2 025
Points : 2 025
Essayez de stopper le serveur et le redemarer avant d'essayer de nouveau.

Si ca ne marche pas je serais bien currieux de voir la définition de vos deux tables/index/clé etrangère.
Barbibulle est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/02/2005, 09h47   #5
Futur Membre du Club
 
Inscription : décembre 2004
Messages : 36
Détails du profil
Informations forums :
Inscription : décembre 2004
Messages : 36
Points : 17
Points : 17
Par défaut j'ai le meme prob

j'ai exactement le meme problème ...

je met ca :

Code :
1
2
3
ALTER TABLE CHANTIER
 
DROP CONSTRAINT CT_FK_CHEF_PROJET;
et cette erreur vient !

Code :
1
2
3
4
Unsuccessful metadata UPDATE
CONSTRAINT CT_FK_CHEF_PROJET does NOT exist
Statement: ALTER TABLE CHANTIER
DROP CONSTRAINT CT_FK_CHEF_PROJET
je comprend pas !
Darkdaemons est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/02/2005, 10h18   #6
Membre Expert
 
Avatar de Barbibulle
 
Frédéric
Inscription : octobre 2002
Messages : 1 722
Détails du profil
Informations personnelles :
Nom : Frédéric
Âge : 42

Informations forums :
Inscription : octobre 2002
Messages : 1 722
Points : 2 025
Points : 2 025
Ce n'est pas EXACTEMENT le même probleme car si vous lisiez le message d'erreur de GMI, il n'est pas du tout le même que le votre.

Votre message vous indique qu'il n'existe pas de contrainte CT_FK_CHEF_PROJET.
Donc vérifiez que votre foreign key se nomme bien comme ça, ou qu'elle existe bien encore...
Barbibulle est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/02/2005, 10h43   #7
Futur Membre du Club
 
Inscription : décembre 2004
Messages : 36
Détails du profil
Informations forums :
Inscription : décembre 2004
Messages : 36
Points : 17
Points : 17
Par défaut c vrai

c vrai c pas exactement le meme...

pourtant je vous assure qu'elle existe... et ca fais tout ce matin que je cherche sur des forums pour trouver pourquoi ca marche pas !!!

je sais quel existe car je n'arrive pas a supprimer la table qui contient la FK (la liaison est toujours existante)

voila le code de création de cette liaison :

Code :
1
2
3
4
5
6
ALTER TABLE "CHANTIER" 
 
ADD CONSTRAINT "ct_fk_chef_projet" 
FOREIGN KEY ("FK_CHEF_PROJET") 
REFERENCES CHEF_PROJET ("PK_CHEFP") 
ON UPDATE CASCADE ON DELETE CASCADE;
merci... ++
Darkdaemons est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/02/2005, 11h07   #8
Futur Membre du Club
 
Inscription : décembre 2004
Messages : 36
Détails du profil
Informations forums :
Inscription : décembre 2004
Messages : 36
Points : 17
Points : 17
JE DEVIENT FOU !!! J'Y CROI PAS !!!

j'ai juste oublier de mettre ces P***** de guillemets

et c'est pour ca que ca allait pas !!!

Code :
1
2
3
ALTER TABLE CHANTIER
 
DROP CONSTRAINT "ct_fk_chef_projet"
AHAHGRGGR

merci quand meme... ++
Darkdaemons est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 17h41.


 
 
 
 
Partenaires

Hébergement Web