Bonjour !
Je travaille sue une base oracle 9.2.0.3 sous AIX5.1L et je suis entraine de récuperer le nombre de lignes de chaque table pour cela j'utilise un script comme suit:
Càd je veux insérer dans la table "table_nbr" le propirtaire de lable (owner),le nom_table (object_name),et le nombre de lignes (v_count)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 declare type enr_table IS RECORD (owner sys.all_objects.owner%TYPE,object_name sys.all_objects.object_name%TYPE, v_count NUMBER); type typ_table is table of enr_table; tab_lignes typ_table; begin select owner,object_name,0 bulk collect into tab_lignes from all_objects where object_type = 'TABLE' and owner in ('AP','GL'); for i in 1..tab_lignes.count loop execute immediate 'insert into table_nbr values ('|| tab_lignes(I).owner ||','||tab_lignes(I).object_name ||','||tab_lignes(I).v_count||')'; end loop; end;
Mon probleme est que je reçois cette erreur à chaque execution :ORA-00984
Donc mon objectif est de récupérer chaque valeur de ligne de type enregistrement dans la table avec la commande " insert in to "!
Ya-t-il une erreur de syntaxe oubien ce n'est pas possible de faire ça !
Merci pour votre aide !
Partager