Précédent   Forum des professionnels en informatique > Bases de données > Firebird > SQL
SQL Forum d'entraide sur le SQL pour Firebird
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 19/04/2004, 10h20   #1
Invité régulier
 
Inscription : septembre 2002
Messages : 22
Détails du profil
Informations forums :
Inscription : septembre 2002
Messages : 22
Points : 9
Points : 9
Par défaut Suppression de clé primaire

Bonjour ,
mon problème est que je n'arrive pas à supprimer la clé primaire
d'une de mes tables. J'utilise la commande SQL suivante:
Code :
ALTER TABLE phonogrammes DROP constraint RDB$PRIMARY84;
Merci de m'aider
nico27 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/04/2004, 10h37   #2
Invité régulier
 
Inscription : septembre 2002
Messages : 22
Détails du profil
Informations forums :
Inscription : septembre 2002
Messages : 22
Points : 9
Points : 9
Je pense que je me suis trompé de commande, c'est plutôt
celle-ci à mon avis:
Code :
DROP INDEX RDB$PRIMARY84;
Mais j'ai toujours un message d'erreur:
Citation:
ERASE RDB$INDICE failed.
action cancelled by trigger(1) to preserve data integrity
Je ne vois pas pourquoi il me parle de trigger alors que je n'en ai pas
sur cette table?

A l'aide!!!
nico27 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/04/2004, 10h38   #3
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
Et bien l'ordre est correct donc si ca ne marche pas il faut lire le message d'erreur...

Code :
ALTER TABLE MATABLE DROP CONSTRAINT NOMDECLEPRIMAIRE
Barbibulle est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/04/2004, 10h41   #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
Vous avez d'autres tables qui font références à cette clé primaire.
Je pense que vous avez créé des clés étrangères (Foreign key). Et donc il faut avant tout supprimer les contraintes référentieles avant de pouvoir supprimer la clé primaire.
Barbibulle est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/04/2004, 12h00   #5
Invité régulier
 
Inscription : septembre 2002
Messages : 22
Détails du profil
Informations forums :
Inscription : septembre 2002
Messages : 22
Points : 9
Points : 9
J'ai enfin réussi.
Après avoir supprimé toutes les Foreign Key de la table, j'ai executé
la commande SQL suivante
Code :
1
2
 
ALTER TABLE phonogrammes DROP constraint RDB$PRIMARY84;
Mais IBCOnsole me mettait le message suivant :
Citation:
CONSTRAINT RDB$PRIMARY84 does not exist
En fait j'ai trouvé le nom de ma clé primaire de la forme INTEG_n, dans la table system
RDB$RELATION_CONTRAINTS . Et la cela a
fonctionné.

Merci Barbibulle pour votre aide.
nico27 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/04/2004, 12h15   #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
Citation:
Envoyé par nico27
En fait j'ai trouvé le nom de ma clé primaire de la forme INTEG_n.
Oui en général (si on ne présice pas un nom de contrainte), mais ce n'est pas obligatoire car on peux lui donner le nom que l'on veux.

Par exemple PK_MA_TABLE dans l'exemple suivant :
Code :
1
2
3
ALTER TABLE MA_TABLE
ADD constraint PK_MA_TABLE
PRIMARY KEY (NOM_COLONNE)
Barbibulle est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/07/2011, 17h34   #7
Candidat au titre de Membre du Club
 
Inscription : avril 2008
Messages : 40
Détails du profil
Informations personnelles :
Âge : 28

Informations forums :
Inscription : avril 2008
Messages : 40
Points : 10
Points : 10
Bonjour;
je sais que c'est une discussion de 2004, mais ca n'empeche pas de continue pour mieux comprendre.
y'as pas de requete pour supprimer une cle primaire et toutes les cles etrangere dans toutes les tables ou elle referencée?
oumlike 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 22h46.


 
 
 
 
Partenaires

Hébergement Web