petit probleme [sql] - SQL/NoSQL - Programmation
Marsh Posté le 29-05-2003 à 23:08:22
Je sais pas quel SGBD tu utilises, mais généralement, on met un ":" devant le nom des variables dans les requêtes...
Ca vient peut-être de là
Marsh Posté le 29-05-2003 à 23:09:03
Deplus, essaie de faire des jointures plutôt que des sous-requêtes à n'en plus finir...
Marsh Posté le 29-05-2003 à 23:12:13
select id_album |
Ca donne :
select c1.id_album |
Marsh Posté le 29-05-2003 à 23:38:05
la base de donnée est oracle ca vient pas de la conception du script.
Car en fait il peut pas traiter le truc car il me retourne trop de valeur.
Marsh Posté le 29-05-2003 à 23:44:18
déjà, ça peut pas planter là où tu dis.
par contre, quand tu écris where id_groupe = (select ...)
Ca ne peut que planter : Oracle va même pas essayer de voir s'il y a 1 ou plusieurs lignes car la sous-requête peut syntaxiquement retourner plusieurs lignes...
Donc soit tu fais un IN, soit tu fais une fonction de regroupement sur l'IP, par exemple un max()
Mais de toute façon, y'a pas plus goret que ton code, passe par des jointures : ça sera plus propre, plus rapide, et il n'y aura pas de risque de plantage.
Marsh Posté le 29-05-2003 à 23:49:12
limsa a écrit : il peut pas traiter le truc car il me retourne trop de valeur. |
trop de valeurs retournées, Oracle?
c surtout que tu fais un requete impossible à traiter... ta condition est mauvaise, ta sous requete renvoit plusieurs reponses, donc pas possible
comme dis MagicBuzz, fais des jointures, je comprends pas tu te compliques la vie là...
Marsh Posté le 30-05-2003 à 16:36:59
voila j'ai trouvé c de faire un curseur
qui va effacer les valeurs sequentiellement.
Marsh Posté le 30-05-2003 à 19:22:55
Où est-ce qu'on peut acheter des cordes ?
Non non, c'est pas pour me pendre, c'est pour attacher limsa, qu'il arrête le massacre
Marsh Posté le 31-05-2003 à 01:11:10
Bah parceque là t'es en train de traîter des pucerons au lance flamme.
Je te dis depuis le départ :
-> Réécrit proprement tes requêtes en utilisant des jointures, tu n'auras plus le bug, et surtout ça sera à la fois 1000 fois plus rapide, et 10E99999999999999 fois plus simple
Marsh Posté le 31-05-2003 à 23:53:33
Code :
|
c mieux comme ca nan ?
Marsh Posté le 29-05-2003 à 18:05:07
Bonjour
pourriez vous a resoudre ce probleme
voici mon code
Et quand j'execute la procedure il me dit qu'il retourne trop de valeur au niveau du
car des les chansons ont des id_chansons differents.
Quelqu'un a une idée.
Merci d'avance.