Bonjour j'ai conçu plusieurs scripts SQL tel que ci-dessous pour supprimer des éléments de versions obsolètes dans une base Oracle 9i :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
	delete
	from TABLE_VERSIONNEE
	where ID_TABLE_VERSIONNEE
	IN (
		select TABLE_VERSIONNEE.ID_TABLE_VERSIONNEE
		from TABLE_VERSIONNEE , version
		where TABLE_VERSIONNEE.id_version = version.id_version
		and  (etat='HISTORISE' )
		and (date_historisation < (SYSDATE-15*365) )
	)
);
Mais au final, je m'aperçcois que mes scripts se ressemble tous. Je souhaites donc optimisé mon code en créant une table supplémentaire :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
ID_ARCHI    TABLE_VERSIONNEE	ID_TABLE_VERSIONNEE                                             
--------------------------------------------------------------------------------------------
2 	        VARC                        id_version                                                      
2 		VRANSPORT          	id_vtransport  
--------------------------------------------------------------------------------------------
Seulement, je dois donc réinjecter ces éléments au sein de ma première requête.

De simples requêtes SQL ne suffissent pas et j'ai donc tenté ma chance avec du PL à l'aide des tutoriaux du forum mais je bloques.

J'aurais besoin d'aide et de votre savoir-faire.

Merci d'avance