Bonjour,

Base Oracle 9i sur serveur Unix Solaris 8

Lors de l'execution de ce morceau de code en pl/sql,
je n'arrive pas a recuperer la valeur de V_ROWID au moment du delete.
Comment faire pour utiliser la valeur de la variable V_ROWID.

Je n'ai aucun message d'erreur:
PL:SQL PROCEDURE SUCCESSFULLY COMPLETED
Mais la ligne dans la table n'est pas supprimée.
Je pense que la procedure s'execute bien, mais la valeur recuperée de la variable, lors du delete n'est pas bon.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
set serveroutput on size 1000000;
DECLARE
v_rowid         	VARCHAR2(150);
v_fic                   UTL_FILE.FILE_TYPE;
BEGIN
	v_fic := UTL_FILE.FOPEN('UTL_FILE_TMP','del_rowid','R');
	LOOP
	BEGIN
	      UTL_FILE.get_line(v_fic,v_rowid)
	      dbms.output.put_line(v_rowid);
	      delete from pdmdm.dm_file_backup where rowid = v_rowid;
	      commit;
	      EXCEPTION
                   WHEN NO_DATA_FOUND THEN
                   utl_file.fclose(v_fic);
                   EXIT;
	END; 
	END LOOP;
		
END;
Merci

Balises ajoutées par Magnus, merci d'y penser à l'avenir