Na verdade a página também não diz o porque, só diz pra fazer : como o teste 
abaixo funciona independentemente do NLS no 9.2.0.8, vou ** supor ** que devia 
mesmo ser bug das versões antigas, o que não me surpreenderia nada... Bom, OK, 
fica no ar, só perguntei de curiosidade, já que necessariamente os (poucos) 
bancos 9i que ainda podem me cruzar o caminho no cliente atual são patcheados 
ao menos pra 9.2.0.6...

 []s

  Chiappa

C:\Documents and Settings\chiappa>C:

C:\Documents and Settings\chiappa>set ORACLE_SID=O9IR2

C:\Documents and Settings\chiappa>set ORACLE_HOME=C:\O9IR2

C:\Documents and Settings\chiappa>SET PATH=%ORACLE_HOME%\BIN;%PATH%

C:\Documents and Settings\chiappa>sqlplus system/manager

SQL*Plus: Release 9.2.0.8.0 - Production 

Oracle9i Enterprise Edition Release 9.2.0.8.0 - Production
With the Partitioning, Oracle Label Security, OLAP and Oracle Data Mining option
s
JServer Release 9.2.0.8.0 - Production

==> o setting está como vírgula pra decimal ...

SQL> select 3/2 from dual;

       3/2
----------
       1,5

SQL> exec dbms_stats.gather_table_stats(ownname=>'SCOTT',tabname=>'DEPT', estima
te_percent=>DBMS_STATS.AUTO_SAMPLE_SIZE, method_opt=>'FOR ALL INDEXED COLUMNS SI
ZE AUTO', cascade =>TRUE );

Procedimento PL/SQL concluÝdo com sucesso.

==> funcionou, agora altero pra ponto como decimal :

SQL> alter session set NLS_NUMERIC_CHARACTERS='.,';

SessÒo alterada.

SQL> select 3/2 from dual;

       3/2
----------
       1.5

SQL> exec dbms_stats.gather_table_stats(ownname=>'SCOTT',tabname=>'DEPT', estima
te_percent=>DBMS_STATS.AUTO_SAMPLE_SIZE, method_opt=>'FOR ALL INDEXED COLUMNS SI
ZE AUTO', cascade =>TRUE );

Procedimento PL/SQL concluÝdo com sucesso.

==> funcionou a mesma coisa...













--- Em oracle_br@yahoogrupos.com.br, Eduardo Souza <pjabran...@...> escreveu
>
> Acesse o link.....
> 
> http://dbaspot.com/forums/oracle-server/86353-dbms_stats-gather-auto-option-ora-00933-a.html
> 
> 2009/11/26 jlchiappa <jlchia...@...>
> 
> >
> >
> > Muuuuito estranho, pois essa NLS controla caracteres de milhar/decimal, e o
> > AUTO_SAMPLE_SIZE é um valor numérico Inteiro (sem decimal) e menor que 100,
> > não deveria interferir em nada.... De curiosidade, de onde vc tirou essa
> > informação ? Isso parece work-around pra bug interno, mas eu não o
> > conhecia...
> >
> > []s
> >
> > Chiappa
> >
> >
> > --- Em oracle_br@yahoogrupos.com.br <oracle_br%40yahoogrupos.com.br>,
> > Eduardo Souza <pjabrantes@> escreveu
> > >
> > > Obtive uma informação para utilizar o seguinte comando antes:
> > >
> > > alter session set NLS_NUMERIC_CHARACTERS='.,';
> > > e agora está funcionando.
> > >
> > > 2009/11/25 jlchiappa <jlchiappa@>
> >
> > >
> > > >
> > > >
> > > > Colega, cfrme abaixo (copiei do seu texto) a sintaxe em si está
> > correta, a
> > > > primeira suposição aqui que o problema é algo que a gente não possa ver
> > (ie,
> > > > um ENTER ou algum caracter de controle, algum espaço a mais, vírgulas a
> > mais
> > > > ou a menos) ... Outra seria algum ** bug ** na 9.2.0.4, que aliás era o
> > que
> > > > mais tinha nela, a 9ir2 só ficou estável mesmo após 9.2.0.6 no
> > mínimo...
> > > > recheque...
> > > >
> > > > []s
> > > >
> > > > Chiappa
> > > >
> > > > => demonstração :
> > > >
> > > > SQL*Plus: Release 9.2.0.8.0 - Production on Qua Nov 25 21:00:11 2009
> > > >
> > > > Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
> > > >
> > > > Conectado a:
> > > > Oracle9i Enterprise Edition Release 9.2.0.8.0 - Production
> > > > With the Partitioning, Oracle Label Security, OLAP and Oracle Data
> > Mining
> > > > options
> > > > JServer Release 9.2.0.8.0 - Production
> > > >
> > > > sys...@o9ir2:SQL> exec dbms_stats.gather_table_stats(ownname
> > > > =>'SCOTT',tabname=>'DEPT',
> > estimate_percent=>DBMS_STATS.AUTO_SAMPLE_SIZE,
> > > > method_opt=>'FOR ALL INDEXED COLUMNS SIZE AUTO', cascade =>TRUE );
> > > >
> > > > Procedimento PL/SQL concluído com sucesso.
> > > >
> > > > sys...@o9ir2:SQL>
> > > >
> > > > --- Em oracle_br@yahoogrupos.com.br 
> > > > <oracle_br%40yahoogrupos.com.br><oracle_br%
> > 40yahoogrupos.com.br>,
> >
> > > > Eduardo Souza <pjabrantes@> escreveu
> > > >
> > > > >
> > > > > Caros amigos,
> > > > >
> > > > > Estou executando o seguinte comando:
> > > > >
> > > > >
> > > > > exec *dbms_stats.gather_table_stats*(
> > > > >
> > > > > ownname => 'BRA'
> > > > >
> > > > > ,tabname => 'FIN_AGING_REPORTS'
> > > > >
> > > > > ,estimate_percent =>*DBMS_STATS.AUTO_SAMPLE_SIZE
> > > > > *
> > > > >
> > > > > ,method_opt => 'FOR ALL INDEXED COLUMNS SIZE AUTO'
> > > > >
> > > > > ,cascade => TRUE );
> > > > >
> > > > > e recebendo a seguinte mensagem de erro:
> > > > >
> > > > > ORA-00933: SQL command not properly ended
> > > > > ORA-06512: at "SYS.DBMS_STATS", line 9375
> > > > > ORA-06512: at "SYS.DBMS_STATS", line 9389
> > > > > ORA-06512: at line 1
> > > > >
> > > > > Justamente no comando 'estimate_percent
> > =>*DBMS_STATS.AUTO_SAMPLE_SIZE'*
> > > > >
> > > > > *Se eu tirar o uso do **DBMS_STATS.AUTO_SAMPLE_SIZE por 100 por
> > exemplo,
> > > > > executa normalmente.*
> > > > >
> > > > > *O que há de errado?*
> > > > >
> > > > > *Outros dados:*
> > > > >
> > > > > *BANNER*
> > > > >
> > > > > *Oracle9i Enterprise Edition Release 9.2.0.4.0 - 64bit Production
> > > > > PL/SQL Release 9.2.0.4.0 - Production
> > > > > *
> > > > >
> > > > > **
> > > > >
> > > > > **
> > > > >
> > > > > **
> > > > >
> > > > >
> > > > > [As partes desta mensagem que não continham texto foram removidas]
> > > > >
> > > >
> > > >
> > > >
> > >
> > >
> > > [As partes desta mensagem que não continham texto foram removidas]
> > >
> >
> >  
> >
> 
> 
> [As partes desta mensagem que não continham texto foram removidas]
>


Responder a