erreur "Subquery returns more than 1 row"

erreur "Subquery returns more than 1 row" - SQL/NoSQL - Programmation

Marsh Posté le 04-04-2012 à 11:40:02    

Bonjour, je suis en train de remanier une base de donnée et je veux remplacer les noms d'entreprises par leur id.
 
Il y a deux tables : une cvpatient qui comprend un nom d'entreprise (en autre)
 
et entreprise qui comprend le nom de l'entreprise avec son id
 
Moi je voudrai que dans cvpatient, j'ai une colonne idEntreprise qui comprend l'id de l'entreprise et qui serai trouvé grace à la comparaison des noms d'entreprises de chaque tables.
J'ai donc crée une colonne idEntreprise où il n'y a aucune valeur et voici le code SQL réalisé :
 

Code :
  1. Update cvpatient cv SET cv.idEntreprise=(SELECT en.idEntreprise FROM entreprise en
  2. WHERE en.nomEntreprise= cv.Entreprise)


 
Le problème étant que je reçois le message d'erreur suivant : "#1242 - Subquery returns more than 1 row"
Donc je ne sais pas comment faire pour résoudre ce problème.
Je pense que cela vient que l'update ne peut faire qu'une seule ligne mais y'a t'il une solution?
 
Merci d'avance pour votre aide.


Message édité par mandanda-15 le 04-04-2012 à 11:54:08
Reply

Marsh Posté le 04-04-2012 à 11:40:02   

Reply

Marsh Posté le 04-04-2012 à 13:37:28    

Bonjour,
 
Sans être un expert SQL, est-ce que la requête ci-dessous ne répondrait pas à ton besoin ?
 

Code :
  1. Update cvpatient cv , entreprise en SET cv.idEntreprise= en.idEntreprise
  2. WHERE en.nomEntreprise= cv.Entreprise

Reply

Marsh Posté le 04-04-2012 à 13:42:36    

effectivement ça à marché !!
 
Merci beaucoup pour votre aide

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed