|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité de passage
![]() Inscription : février 2010 Messages : 10 ![]() |
Bonsoir,
Je viens vers vous pour vous faire part d'une erreur pénible : j'ai tout une colonne qui se rempli d'une même fausse valeur. Comme vous, je pensais que ça venait d'un problème de type. Seul hic: toutes les variables appelées ici ont le même type : c'est-à-dire number. Pouvez-vous m'aider? Le code est chargé de calculer l'écart entre le nombre de réponse type à un questionnaire de hasard parmi mille répondants et le nombre de réponse réelle des répondants. Celui qui a le plus faible écart est premier. Voici mon code : Code :
|
||
|
|
00
|
|
|
#2 |
|
Membre actif
![]() Inscription : février 2007 Messages : 167 ![]() |
Bonjour,
C'est votre algorithme qui est erroné. Je suppose que le nombre de réponse réel est dans le champ rep2 et que le nombre de réponse type est dans P_NB_REP_TYPE. Vous affectez successivement chaque écart à la même variable v_ecart. En sortie de boucle loop v_ecart contient l'écart pour la dernière ligne de bons_bons. Ensuite vous mettez à jour TOUTE la table bons_bons avec cette valeur puisque qu'il n'y a pas de clause where à votre update. Donc tout le monde a l'écart du dernier. Si vous voulez utiliser du PlSql et une boucle il faut mettre à jour la table bons_bons à chaque tour de boucle à l'intérieur du loop, en utilisant une clé unique de la table bons_bons si elle en a une. En a-t-elle une ? Mais pour votre problème vous n'avez pas besoin d'une boucle. Un simple update sur la table suffit. Pozzo |
|
|
00
|
|
|
#3 | |||
|
Expert Confirmé Sénior
![]() Inscription : juillet 2003 Messages : 3 437 ![]() |
Citation:
Code :
__________________
More Code : More Bugs. Less Code : Less Bugs |
|||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com