Bonjour
Dans ma base Oracle j'ai une table contenant une liste de table
Je souhaiterai pouvoir connaitre le nombre de lignes que contiennent chacune de ces tables.
Je pensais notamment créer un curseur dans lequel je recupere le nom des tables puis ensuite faire un EXECUTE pour connaitre le nombre de ligne de la table contenu dans le curseur, mais je sais pas du tout comment on fait.
la table contenant la liste des table s'appelle REF_TABLE et contient la colonne TABLE_NAME qui contient le nom des tables.
Je veux mettre le resultat dans une autre table nommé GRS_TABLE contient la colonne TABLE_NAME pour le nom de la table et NB_LIGNE pour le nombre de ligne.
je pensais faire un truc du style(je sais que c'est completement faux mais c'est pour donner une idée) :
DECLARE
NB_LIGNE INTEGER;
BEGIN
for MTABLE in
(select NOM_TABLE
From REF_TABLE)
LOOP
NB_LIGNE = EXECUTE ("select count(*) from " || MTABLE.NOM_TABLE );
EXECUTE("INSERT INTO GRS_TABLE VALUES(" || MTABLE.NOM_TABLE || "," || NB_LIGNE ||")") ;
END LOOP;
END;
Merci de votre aide
Partager