Bonjour à tous et merci d'avance de consacrer un peu de votre temps à mon petit souci

J'essaie de déclarer une variable avec la valeur de la partition courante.
Grosso modo, si je lance cette commande, ça fonctionne :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
Begin
dbms_stats.gather_table_stats(ownname=>'MANAG',tabname=>'HEADCOUNT_TOTAL',partname=>'"201010"',cascade=>true,DEGREE=> 2 ,METHOD_OPT => 'FOR ALL COLUMNS SIZE 1', granularity=>'PARTITION');
end;
 /
C'est une table partitionnée par List et les partitions sont déclarées avec des " ".

Par contre, si j'essaie de remplacer le nom de la partition en passant par une variable, j'obtiens :
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
 
set serveroutput on 
Declare max_partition varchar2(32) :=201010;
Begin
dbms_output.put_line(max_partition); 
dbms_stats.gather_table_stats(ownname=>'MANAG',tabname=>'HEADCOUNT_TOTAL',partname=>'"max_partition"',cascade=>true,DEGREE=> 2 ,METHOD_OPT => 'FOR ALL COLUMNS SIZE 1', granularity=>'PARTITION');
end;
 / 
201010
Declare max_partition varchar2(32) :=201010;
*
ERROR at line 1:
ORA-20000: max_partition invalid partition name
ORA-06512: at "SYS.DBMS_STATS", line 13437
ORA-06512: at "SYS.DBMS_STATS", line 13457
ORA-06512: at line 4
L'erreur doit se situer au niveaux des doubles ou des simples quotes mais j'avoue avoir tout essayé et être un perdue...
Help please