|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre Expert
![]() Analyste-programmeur Inscription : mai 2002 Messages : 2 046 ![]() |
Voici mon problème :
J'ai une procédure stockée Oracle qui ne me renvoie pas le résultat attendu. Donc, je voudrais faire du pas-à-pas (avec des points d'arrêt conditionnels), et évaluer la valeur des variables. - J'ai essayé avec SQL Développeur (version 1.1.2.25), mais au bout de 20 minutes, il est toujours en train de faire semblant d'exécuter ma procédure, et ne répond plus. - J'ai téléchargé Toad free, mais je n'ai pas trouvé les outils de débugage. Je suppose qu'il faut la version payante, ce qui est exclu. Quelqu'un connaitrait-il un autre outil (gratuit) pour débuguer ma procédure ?
__________________
L'urgent est fait, l'impossible est en cours, pour les miracles prévoir un délai. ______________________________________________________________________________________________ Delphi 6#2 Entreprise - Delphi 2010 Architecte - Delphi XE2 Entreprise Win XP Pro - OpenGL 2.1 - Oracle 11g - Firebird 2.5.0.2 Écrivez dans un français correct !!
|
|
|
00
|
|
|
#2 |
|
Membre actif
![]() Inscription : août 2007 Messages : 176 ![]() |
PLSQL Developer
Alors c'est pas gratuit, mais on peut télécharger une version de démo complète valable pendant 30j, c'est largement suffisant pour tomber accro et faire des pieds et des mains pour que le père noël nous offre une licence : http://www.allroundautomations.com/plsqldev.html |
|
|
00
|
|
|
#3 |
|
Membre Expert
![]() Analyste-programmeur Inscription : mai 2002 Messages : 2 046 ![]() |
![]() Je vais voir ça ...
__________________
L'urgent est fait, l'impossible est en cours, pour les miracles prévoir un délai. ______________________________________________________________________________________________ Delphi 6#2 Entreprise - Delphi 2010 Architecte - Delphi XE2 Entreprise Win XP Pro - OpenGL 2.1 - Oracle 11g - Firebird 2.5.0.2 Écrivez dans un français correct !!
|
|
|
00
|
|
|
#4 |
|
Membre Expert
![]() Analyste-programmeur Inscription : mai 2002 Messages : 2 046 ![]() |
Bin, c'est pas intuitif tout ça ...
![]() Comment on exécute une procédure ? Comment on lui donne ses paramètres ? (Pour les points d'arrêts conditionnel, je crois avoir trouvé)
__________________
L'urgent est fait, l'impossible est en cours, pour les miracles prévoir un délai. ______________________________________________________________________________________________ Delphi 6#2 Entreprise - Delphi 2010 Architecte - Delphi XE2 Entreprise Win XP Pro - OpenGL 2.1 - Oracle 11g - Firebird 2.5.0.2 Écrivez dans un français correct !!
|
|
|
00
|
|
|
#5 | |
|
Membre actif
![]() Inscription : août 2007 Messages : 176 ![]() |
Citation:
Ensuite, tu te positionnes sur le nom de ta procédure et tu fais clic-droit et tu choisis tester, il va te créer une fenêtre de test, tu renseignes les variables qui seront dans la liste en bas, et tu fais F9 (ou bien tu cliques sur le bouton symbolisé par un engrenage surmontée d'une loupe) Il faut que tu ais les droits de débugger bien sûr, sinon, cela ne marche pas (c'est un GRANT à faire, si je me rappelle bien) Tu peux télécharger la traduction en français, cela le rend plus facile d'accès, mais normalement, si tu codes ou débugges beaucoup, il va vite devenir indispensable |
|
|
|
00
|
|
|
#6 |
|
Membre actif
![]() Inscription : août 2007 Messages : 176 ![]() |
Autre chose aussi, PLSQL developper va ouvrir une session par fenêtre dans son paramétrage par défaut, donc sans commit, tu ne vois pas dans une fenêtre le résultat d'un INSERT ou d'un update fait par une autre
Quand tu cliques sur nouveau, tu as plusieurs choix possible, les 4 principaux sont :
|
|
|
00
|
|
|
#7 | ||||
|
Membre Expert
![]() Analyste-programmeur Inscription : mai 2002 Messages : 2 046 ![]() |
Citation:
Bon, j'ai fais comme tu m'a dis. L'exécution démarre, et là il me dit que la variable de ma condition (du point d'arrêt) n'est pas défini. Code :
Je l'ai déjà exécutée plusieurs fois sans problème. Citation:
__________________
L'urgent est fait, l'impossible est en cours, pour les miracles prévoir un délai. ______________________________________________________________________________________________ Delphi 6#2 Entreprise - Delphi 2010 Architecte - Delphi XE2 Entreprise Win XP Pro - OpenGL 2.1 - Oracle 11g - Firebird 2.5.0.2 Écrivez dans un français correct !!
|
||||
|
|
00
|
|
|
#8 |
|
Membre actif
![]() Inscription : août 2007 Messages : 176 ![]() |
Voici ce que dit la doc à propose des conditions des points d'arrêts :
Utiliser condition – La case à cocher active ou désactive la condition. La condition doit être une expression booléenne. Lorsque la ligne du point d'arrêt est atteinte, l'exécution est interrompue uniquement si la condition est vraie. Vous pouvez utiliser n'importe quelle expression SQL dans la condition, et vous pouvez utiliser n'importe quelle variable connue à l'emplacement du point d'arrêt. Il s'agit des mêmes variables que celles que vous pouvez visionner ou définir au cours d'un débogage interactif. Les variables doivent être précédées d'un double point. Par exemple upper(:ename) = ‘ SMITH’ est une condition valide si ename est une variable valide à l'emplacement du point d'arrêt. Est-ce que tu as bien mis les double point ? |
|
|
00
|
|
|
#9 |
|
Membre Expert
![]() Analyste-programmeur Inscription : mai 2002 Messages : 2 046 ![]() |
Pas pensé aux deux-points. Ca s'exécute ... ![]()
__________________
L'urgent est fait, l'impossible est en cours, pour les miracles prévoir un délai. ______________________________________________________________________________________________ Delphi 6#2 Entreprise - Delphi 2010 Architecte - Delphi XE2 Entreprise Win XP Pro - OpenGL 2.1 - Oracle 11g - Firebird 2.5.0.2 Écrivez dans un français correct !!
|
|
|
00
|
|
|
#10 |
|
Expert Confirmé Sénior
![]() Inscription : juillet 2003 Messages : 3 450 ![]() |
Si c'est juste pour voir des variables, tu as toujours l'option du DBMS_OUPUT.
__________________
More Code : More Bugs. Less Code : Less Bugs |
|
|
00
|
|
|
#11 | |
|
Membre Expert
![]() Analyste-programmeur Inscription : mai 2002 Messages : 2 046 ![]() |
Citation:
Bon Loyd1974, PLSQL Developper fonctionne, mais pas vite. Il a mit plus de 3 heures pour faire tourner ma procédure qui en exécution normale, met moins de 5 minutes. Mais, lui au moins, il a pas planté comme SQL Developper d'Oracle.
__________________
L'urgent est fait, l'impossible est en cours, pour les miracles prévoir un délai. ______________________________________________________________________________________________ Delphi 6#2 Entreprise - Delphi 2010 Architecte - Delphi XE2 Entreprise Win XP Pro - OpenGL 2.1 - Oracle 11g - Firebird 2.5.0.2 Écrivez dans un français correct !!
|
|
|
|
00
|
|
|
#12 | |
|
Membre actif
![]() Inscription : août 2007 Messages : 176 ![]() |
Citation:
Bon, c'est vrai que je ne développe plus trop et que je fais rarement du débogage mais je n'ai jamais eu de tels comportements C'est peut être le breakpoint conditionné ? Je n'ai jamais utilisé cette option ...mystère Il faudrait voir si au lieu de mettre un breakpoint conditionné, tu pourrais mettre un IF dans ton code avec une ligne bidon qui sera ton breakpoint et de là, tu pourras faire du pas à pas. Peut-être qu'ainsi ce sera plus rapide ? |
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com