Bonjour,
J'essaye de passer les stats d'un table avec le package DBMS_STATS en utilisant la constante DBMS_STATS.AUTO_SAMPLE_SIZE pour estimate_percent :
Ca plante avec, le message est le suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 begin DBMS_STATS.GATHER_TABLE_STATS (ownname => 'XXX', tabname => 'YYY', estimate_percent => DBMS_STATS.AUTO_SAMPLE_SIZE, cascade => TRUE); end; /
Si je remplace DBMS_STATS.AUTO_SAMPLE_SIZE par 10 en dur, ça marche.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 ORA-00933: La commande SQL ne se termine pas correctement ORA-06512: à "SYS.DBMS_STATS", ligne 9375 ORA-06512: à "SYS.DBMS_STATS", ligne 9389 ORA-06512: à ligne 2
J'ai remarqué que la valeur de DBMS_STATS.AUTO_SAMPLE_SIZE est 0, or la doc. Oracle spécifie que la plage de valeurs possible est [0.000001,100].
En effet, si je remplace DBMS_STATS.AUTO_SAMPLE_SIZE par 0, ça plante avec le même message d'erreur.
Y a-t-il une actions préalable à faire pour utiliser DBMS_STATS.AUTO_SAMPLE_SIZE ?
Doit-on intervenir à la création du package DBMS_STATS sur la valeur de DBMS_STATS.AUTO_SAMPLE_SIZE ?
Merci pour vos réponses.
Partager