Erreur "Subquery returns more than 1 row"
dicyz
Messages postés
82
Date d'inscription
Statut
Membre
Dernière intervention
-
Pitu Messages postés 1441 Date d'inscription Statut Contributeur Dernière intervention -
Pitu Messages postés 1441 Date d'inscription Statut Contributeur Dernière intervention -
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é :
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.
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é :
Update cvpatient cv SET cv.idEntreprise=(SELECT en.idEntreprise FROM entreprise en 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.
A voir également:
- Erreur "Subquery returns more than 1 row"
- Erreur 0x80070643 - Accueil - Windows
- Erreur 4101 france tv - Forum Lecteurs et supports vidéo
- Erreur 4201 france tv ✓ - Forum Réseaux sociaux
- J'aime par erreur facebook notification - Forum Facebook
- Code erreur f3500-31 ✓ - Forum Bbox Bouygues
1 réponse
Bonjour,
Effectivement, c'est à peu près cela.
Tu peux faire un "update" sur plusieurs lignes à la fois, mais à partir de la même valeur.
Là, ta requête est telle que tu voudrais qu'elle écrive n valeurs différentes sur n lignes.
A ta place, je ferais un déchargement de ta table dans un excel pour ensuite fabriquer les requêtes propres à chacune des lignes à mettre à jour.
Effectivement, c'est à peu près cela.
Tu peux faire un "update" sur plusieurs lignes à la fois, mais à partir de la même valeur.
Là, ta requête est telle que tu voudrais qu'elle écrive n valeurs différentes sur n lignes.
A ta place, je ferais un déchargement de ta table dans un excel pour ensuite fabriquer les requêtes propres à chacune des lignes à mettre à jour.