Précédent   Forum des professionnels en informatique > Bases de données > Oracle > SQL
SQL Forum d'entraide sur le SQL pour 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 07/02/2011, 17h23   #1
Invité de passage
 
Inscription : mars 2007
Messages : 16
Détails du profil
Informations forums :
Inscription : mars 2007
Messages : 16
Points : 1
Points : 1
Par défaut Problème de syntaxe update

Bonjour,

J'ai un problème avec une requête :
Code :
1
2
3
4
UPDATE personne1 P1
   SET nom = (SELECT nom
                FROM personne2 P2
               WHERE P1.id = P2.identificateur);
La requête fait un update sur tout le champ nom

Merci d'avance.
cameleon8010 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/02/2011, 17h54   #2
Modérateur
 
Homme Fabien
Ingénieur d'études en décisionnel
Inscription : septembre 2008
Messages : 5 684
Détails du profil
Informations personnelles :
Nom : Homme Fabien
Âge : 34
Localisation : France, Yvelines (Île de France)

Informations professionnelles :
Activité : Ingénieur d'études en décisionnel
Secteur : Arts - Culture

Informations forums :
Inscription : septembre 2008
Messages : 5 684
Points : 10 459
Points : 10 459
Envoyer un message via ICQ à Waldar Envoyer un message via Skype™ à Waldar
Votre description du problème étant plutôt imprécise, cette solution peut fonctionner ou peut ne pas fonctionner :
Code :
1
2
3
4
5
6
7
UPDATE personne1 P1
   SET nom  = (SELECT nom
                 FROM personne2 P2
                WHERE P1.id = P2.identificateur)
 WHERE EXISTS (SELECT NULL
                 FROM personne2 P2
                WHERE P1.id = P2.identificateur);
__________________
Email : http://scr.im/waldar
Waldar est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/02/2011, 17h55   #3
Candidat au titre de Membre du Club
 
Inscription : juin 2009
Messages : 28
Détails du profil
Informations forums :
Inscription : juin 2009
Messages : 28
Points : 11
Points : 11
Ben oui il faut ajouter un WHERE à ton update pour qu'il ne se limite uniquement qu'au row que tu veux mettre à jour :

Code sql :
1
2
3
4
 
UPDATE personne1 P1 
SET nom = (SELECT nom FROM personne2 P2 WHERE P1.id=P2.identificateur) 
WHERE p1.colonne = valeur;

Diplomegalo
diplomegalo 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 07h40.


 
 
 
 
Partenaires

Hébergement Web