Update de deux tables. [Resolu] - SQL/NoSQL - Programmation
Marsh Posté le 04-05-2006 à 11:41:09
Tu peux désactiver ta contrainte le temps de la modif si tu sais ou faut le faire.
Sinon tu aurais pu mettre à null ta valeur dans entitemachine, puis update la table local, puis la table entitemachine mais tu as une contrainte NOT NULL qui traine !
Plus proprement, tu peux supprimer ta contrainte foreign key et la recréer de la maniere suivante :
alter table Entite_Machine add constraint FKLocalisation_Machine_FK
foreign key (Numero_Local)
references Local (Numero)
ON UPDATE CASCADE;
et faire l'update dans ta table Local !
Marsh Posté le 04-05-2006 à 11:50:20
Oki je vais essayer.
Marsh Posté le 04-05-2006 à 11:50:55
Cela fonctionne parfaitement ! Merci beaucoup
Marsh Posté le 04-05-2006 à 10:50:18
Bonjour !
Alors voilà, j'ai un petit problème concernant la mise à jour de mes tables.
Voici les deux tables principalement concernées :
create table Entite_Machine (
Nom_Machine char(30) not null,
Adresse_Ip char(15) not null,
Systeme_Exploitation char(30) not null,
Type_Ressource_M char(30) not null,
Numero_Local char(10) not null,
Nom_Script_Machine char(30) not null,
constraint ID_Entite_Machine_ID primary key (Nom_Machine));
create table Local (
Numero char(10) not null,
Telephone char(20) not null,
constraint ID_Local_ID primary key (Numero));
alter table Entite_Machine add constraint FKLocalisation_Machine_FK
foreign key (Numero_Local)
references Local (Numero);
J'aimerais pouvoir mettre à jour le numero du local. Or :
1) Lorsque je tente de mettre à jour la table local, j'obtiens le message d'erreur suivant :
#1217 - Cannot delete or update a parent row: a foreign key constraint fails
2) Lorsque je tente de mettre à jour la table entite_machine, j'obtiens celui-ci :
#1216 - Cannot add or update a child row: a foreign key constraint fails
Les deux messages sont logiques mais je n'arrive pas à trouver comment faire le tout en une seule fois
Merci d'avance de votre aide
Message édité par Tyam le 04-05-2006 à 12:59:35