Précédent   Forum des professionnels en informatique > Bases de données > Oracle > PL/SQL
PL/SQL Forum d'entraide sur le PL/SQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 13/02/2007, 09h06   #1
Membre régulier
 
Inscription : février 2005
Messages : 283
Détails du profil
Informations forums :
Inscription : février 2005
Messages : 283
Points : 84
Points : 84
Par défaut Afficher le résultat d'une procédure PLSQL

Bonjour,

Je suis confronté au problème suivant, jusqu'à présent j'utilisais la précédure suivante pour remplir une table de test :
Citation:
declare i integer;
ename varchar2(10);
begin
for j in 1 .. 400
loop
for i in 1 .. 4000
loop
ename:=DBMS_RANDOM.STRING('X',10);
insert into EMP values (empno_seq.nextval,ename,'','','','','','50');
end loop;
end loop;
end;
/
Ce qui me permettais d'insérer 1600000 enregistrements, en fin de procédure j'avais le message suivant :

Citation:
Procédure PL/SQL terminée avec succès
1600000 lignes insérées
Mon problème est le suivant, le nombre de lignes insérées n'est plus affiché (aucun changement notable sur ma base !!!)

J'ai essayé un peu toutes les options possibles sur mon client sqlplus mais sans succès, de plus mon collègue (dba comme moi) me certifie que dans un bloc PLSQL le résultat (nombre de lignes insérées, mise à jours, supprimées) n'est jamais affiché.

J'avoue que je suis un peu dérouté, merci pour votre aide
Cordialement,
A.Personnat
apersonnat est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/02/2007, 09h12   #2
Rédacteur/Modérateur
 
Avatar de orafrance
 
Inscription : janvier 2004
Messages : 15 861
Détails du profil
Informations personnelles :
Âge : 35

Informations forums :
Inscription : janvier 2004
Messages : 15 861
Points : 16 212
Points : 16 212
à mon avis c'était pas dans un bloc PL/SQL. En PL/SQL on ne voit pas le résultat à moins d'utiliser la commande DBMS_OUTPUT
orafrance est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/02/2007, 09h51   #3
Membre régulier
 
Inscription : février 2005
Messages : 283
Détails du profil
Informations forums :
Inscription : février 2005
Messages : 283
Points : 84
Points : 84
c'est bien ce qui m'étonne et je certifie que c'était bien cette procédure que j'exécutais.

Dans le cas de l'utilisation du package dbms_output, quelles sont les options à positionner pour afficher le résultat (nbre de lignes insérées)?

Merci,
A.Personnat
apersonnat est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/02/2007, 09h54   #4
Expert Confirmé
 
Inscription : février 2006
Messages : 3 433
Détails du profil
Informations forums :
Inscription : février 2006
Messages : 3 433
Points : 3 462
Points : 3 462
http://oracle.developpez.com/faq/?page=3-2#sqlrowcount
__________________
P. Forstmann

AskTom Forums OTN doc 8, 9, 10 et 11
pifor est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/02/2007, 09h54   #5
McM
Expert Confirmé Sénior
 
Inscription : juillet 2003
Messages : 3 450
Détails du profil
Informations forums :
Inscription : juillet 2003
Messages : 3 450
Points : 4 209
Points : 4 209
Vu que c'est dans une boucle, tu incrémentes une variable ex v_nb.
puis DBMS_OUTPUT.PUT_LINE(v_nb ||' lignes insérées');
McM est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/02/2007, 10h17   #6
Membre régulier
 
Inscription : février 2005
Messages : 283
Détails du profil
Informations forums :
Inscription : février 2005
Messages : 283
Points : 84
Points : 84
super, merci beaucoup pour le coup de main, je passe ce post en résolu.

en revanche je ne m'explique toujours pas le pourquoi du comment ...

encore merci,
A.Personnat
apersonnat est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 02h13.


 
 
 
 
Partenaires

Hébergement Web