|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Nouveau Membre du Club
![]() Inscription : février 2006 Messages : 167 ![]() |
Bonjour,
Je souhaiterais faire des requêtes de suppression de données ou lles COMMIT se feront par groupes de 1000 échantillions. Je suis donc partie de l'idée de construire une boucle. Code :
Auriez vous la bonté de me donner une piste ? Merci bcp PS: je suis en Oracle 9I |
||
|
|
00
|
|
|
#2 | ||
|
Expert Confirmé
![]() Chef de projet en SSII Inscription : janvier 2004 Messages : 2 866 ![]() |
Si, la notion de loop est reconnue par Oracle en PL/SQL.
Code :
__________________
Un problème sans solution est un problème mal posé Merci de poser vos questions sur le forum, je ne réponds pas aux questions posées par MP. |
||
|
|
00
|
|
|
#3 | ||
|
Nouveau Membre du Club
![]() Inscription : février 2006 Messages : 167 ![]() |
merci pour ton aide !
Une question cependant en procédant ainsi ne va t on pas commiter chaque enregistrement ? Ne vaudrait il mieux pas faire : Code :
|
||
|
|
00
|
|
|
#4 |
|
Expert Confirmé Sénior
![]() Inscription : juillet 2003 Messages : 3 450 ![]() |
Non, En sqlplus chaque instruction est exécutée "séparément".
Que tu fasses ensuite un COMMIT ou un EXIT l'instruction UPDATE est finie. PS :
|
|
|
00
|
|
|
#5 |
|
Nouveau Membre du Club
![]() Inscription : février 2006 Messages : 167 ![]() |
Merci à tous le code fonctionne je l'ai testé avec succès via PL/SQL
et Désolé pour les balises, je ferai attention a l'avenir. Une dernière question : Si le code détaillé ci dessus est dans un fichier mon_fichier.sql et que je souhaite lancer le script via sqlplus. Comment faire ? en effet j'ai fait : Or Il me rend la main avec en face un nombre de lignes. J'ai l'impression qu'il prend en compte ce qu'il y a entre le begin et le end mais ne l'éxécute pas. Pour parler simplement quel serait selon vous l'équivalent au F8 de PL/SQL sous sqlplus ? |
|
|
00
|
|
|
#6 | ||
|
Expert Confirmé
![]() Inscription : février 2006 Messages : 3 433 ![]() |
Il faut un "/":
Code :
|
||
|
|
00
|
|
|
#7 | |
|
Expert Confirmé
![]() Chef de projet en SSII Inscription : janvier 2004 Messages : 2 866 ![]() |
Citation:
Là l'objectif (si j'ai bien compris) est de supprimer les lignes par paquet de 1000 (d'où le commit intermédiaire).
__________________
Un problème sans solution est un problème mal posé Merci de poser vos questions sur le forum, je ne réponds pas aux questions posées par MP. |
|
|
|
00
|
|
|
#8 |
![]() ![]() Inscription : janvier 2004 Messages : 15 861 ![]() |
mais alors là ça sert à rien de faire des paquets de 1000 le but étant de faire des commits intermédiaires
Pour les perfs, c'est un FORALL qu'il faut faire Edit : over grillé
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com