Boa! E para setar o dbms_support

ops$marcio:LX10G> connect / as sysdba
Connected.
sys:LX10G> desc sys.dbms_support
ERROR:
ORA-04043: object sys.dbms_support does not exist

sys:LX10G> @?/rdbms/admin/dbmssupp.sql

Package created.


Package body created.

sys:LX10G> desc dbms_support
FUNCTION MYSID RETURNS NUMBER
FUNCTION PACKAGE_VERSION RETURNS VARCHAR2
PROCEDURE START_TRACE
 Argument Name                  Type                    In/Out Default?
 ------------------------------ ----------------------- ------ --------
 WAITS                          BOOLEAN                 IN     DEFAULT
 BINDS                          BOOLEAN                 IN     DEFAULT
PROCEDURE START_TRACE_IN_SESSION
 Argument Name                  Type                    In/Out Default?
 ------------------------------ ----------------------- ------ --------
 SID                            NUMBER                  IN
 SERIAL                         NUMBER                  IN
 WAITS                          BOOLEAN                 IN     DEFAULT
 BINDS                          BOOLEAN                 IN     DEFAULT
PROCEDURE STOP_TRACE
PROCEDURE STOP_TRACE_IN_SESSION
 Argument Name                  Type                    In/Out Default?
 ------------------------------ ----------------------- ------ --------
 SID                            NUMBER                  IN
 SERIAL                         NUMBER                  IN

sys:LX10G>


On 7/4/07, Oscar Nogueira Neto <[EMAIL PROTECTED]> wrote:
>
>   Boas,
>
> uma outra possibilidade é, se você estiver usando o pacote DBMS_SUPPORT
> para
> fazer o trace, passe o quarto parâmetro da procedure
> START_TRACE_IN_SESSION
> como TRUE.
>
> SQL> exec dbms_support.start_trace_in_session(sid, serial#, true, true);
>
> Depois disso, como disse o Márcio, analise o trace cru, sem passá-lo pelo
> tkprof.
>
> Até!
>
> Em 03/07/07, Marcio Portes <[EMAIL PROTECTED]<portes.marcio%40gmail.com>>
> escreveu:
>
> >
> > Faça um trace com o evento 10046 e veja no arquivo raw os binds. Não
> > execute
> > o tkprof, é preciso ver o arquivo raw.
> >
> > ops$marcio:LX10G> create table t ( x int );
> >
> > Table created.
> >
> > ops$marcio:LX10G>
> > ops$marcio:LX10G> alter session set events '10046 trace name context
> > forever, level 12';
> >
> > Session altered.
> >
> > ops$marcio:LX10G> begin
> > 2 for i in 1 .. 10
> > 3 loop
> > 4 insert into t values ( i );
> > 5 end loop;
> > 6 end;
> > 7 /
> >
> > PL/SQL procedure successfully completed.
> >
> > ops$marcio:LX10G> exit
> >
> > Identifique o número do parse do seu cursor.
> > PARSING IN CURSOR #8 len=28 dep=1 uid=55 oct=2 lid=55
> tim=1155776832951654
> > hv=1180080443 ad='402406d8'
> > INSERT INTO T VALUES ( :B1 )
> > END OF STMT
> > PARSE
> #8:c=0,e=260,p=0,cr=0,cu=0,mis=1,r=0,dep=1,og=4,tim=1155776832951644
> >
> > e veja os binds mais abaixo
> >
> > ...
> > BINDS #8:
> > kkscoacd
> > Bind#0
> > oacdty=02 mxl=22(22) mxlc=00 mal=00 scl=00 pre=00
> > oacflg=03 fl2=206001 frm=00 csi=00 siz=24 off=0
> > kxsbbbfp=b7162640 bln=22 avl=02 flg=05
> > value=1
> > EXEC
> >
> #8:c=5999,e=5928,p=0,cr=3,cu=22,mis=1,r=1,dep=1,og=4,tim=1155776832957679
> > BINDS #8:
> > kkscoacd
> > Bind#0
> > oacdty=02 mxl=22(22) mxlc=00 mal=00 scl=00 pre=00
> > oacflg=03 fl2=206001 frm=00 csi=00 siz=24 off=0
> > kxsbbbfp=b7162640 bln=22 avl=02 flg=05
> > value=2
> > EXEC
> #8:c=0,e=146,p=0,cr=0,cu=1,mis=0,r=1,dep=1,og=4,tim=1155776832957922
> > BINDS #8:
> > kkscoacd
> > Bind#0
> > oacdty=02 mxl=22(22) mxlc=00 mal=00 scl=00 pre=00
> > oacflg=03 fl2=206001 frm=00 csi=00 siz=24 off=0
> > kxsbbbfp=b7162640 bln=22 avl=02 flg=05
> > value=3
> > EXEC
> #8:c=0,e=117,p=0,cr=0,cu=1,mis=0,r=1,dep=1,og=4,tim=1155776832958090
> > BINDS #8:
> > kkscoacd
> > Bind#0
> > oacdty=02 mxl=22(22) mxlc=00 mal=00 scl=00 pre=00
> > oacflg=03 fl2=206001 frm=00 csi=00 siz=24 off=0
> > kxsbbbfp=b7162640 bln=22 avl=02 flg=05
> > value=4
> > EXEC
> > #8:c=999,e=130,p=0,cr=0,cu=1,mis=0,r=1,dep=1,og=4,tim=1155776832958269
> >
> > A linha com values representa o bind#0, ou seja, o primeiro bind, no meu
> > caso o único.
> > Outro exemplo que deixa mais claro é:
> > ops$marcio:LX10G> drop table t purge;
> >
> > Table dropped.
> >
> > ops$marcio:LX10G>
> > ops$marcio:LX10G> create table t ( x char(1) );
> >
> > Table created.
> >
> > ops$marcio:LX10G>
> > ops$marcio:LX10G> alter session set events '10046 trace name context
> > forever, level 12';
> >
> > Session altered.
> >
> > ops$marcio:LX10G> begin
> > 2 for i in ( select chr(ascii('A')+rownum-1) c
> > 3 from dual connect by level <= 26 )
> > 4 loop
> > 5 insert into t values ( i.c );
> > 6 end loop;
> > 7 end;
> > 8 /
> >
> > PL/SQL procedure successfully completed.
> >
> > less /oracle/admin/lx10g/udump/lx10g_ora_7479.trc
> > ...
> > ...
> > BINDS #2:
> > kkscoacd
> > Bind#0
> > oacdty=01 mxl=32(01) mxlc=00 mal=00 scl=00 pre=00
> > oacflg=13 fl2=206001 frm=01 csi=31 siz=32 off=0
> > kxsbbbfp=b717be64 bln=32 avl=01 flg=09
> > value="A"
> > EXEC
> >
> #2:c=2000,e=2013,p=0,cr=3,cu=22,mis=1,r=1,dep=1,og=4,tim=1155778712032583
> > BINDS #2:
> > kkscoacd
> > Bind#0
> > oacdty=01 mxl=32(01) mxlc=00 mal=00 scl=00 pre=00
> > oacflg=13 fl2=206001 frm=01 csi=31 siz=32 off=0
> > kxsbbbfp=b717be44 bln=32 avl=01 flg=09
> > value="B"
> > EXEC
> #2:c=0,e=145,p=0,cr=0,cu=1,mis=0,r=1,dep=1,og=4,tim=1155778712032820
> > BINDS #2:
> > kkscoacd
> > Bind#0
> > oacdty=01 mxl=32(01) mxlc=00 mal=00 scl=00 pre=00
> > oacflg=13 fl2=206001 frm=01 csi=31 siz=32 off=0
> > kxsbbbfp=b717be24 bln=32 avl=01 flg=09
> > value="C"
> > EXEC
> #2:c=0,e=131,p=0,cr=0,cu=1,mis=0,r=1,dep=1,og=4,tim=1155778712033009
> > BINDS #2:
> > kkscoacd
> > Bind#0
> > oacdty=01 mxl=32(01) mxlc=00 mal=00 scl=00 pre=00
> > oacflg=13 fl2=206001 frm=01 csi=31 siz=32 off=0
> > kxsbbbfp=b717bb74 bln=32 avl=01 flg=09
> > value="D"
> >
> > On 7/3/07, wilsonteixeira2000 <[EMAIL 
> > PROTECTED]<wilsonteixeira2000%40yahoo.com.br>
> <wilsonteixeira2000%40yahoo.com.br>>
> > wrote:
> > >
> > > Boa noite,
> > >
> > > Estamos executando um trace em um sistema e preciso saber o valor que
> > > está sendo passado para uma bind variable no trace ou se tiver alguma
> > > view do dicionario de dados onde eu possa obter este valor.
> > >
> > > obrigado.
> > >
> > >
> > >
> >
> > --
> > Marcio Portes
> > Material Tecnico em Portugues - http://mportes.blogspot.com
> > Practical Learning Oracle -
> > http://mportes.blogspot.com/2006/02/practical-learning-oracle.html
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> >
> >
>
> --
> Oscar Nogueira Neto
> oscarnogueira[at]gmail[dot]com
> http://www.oscarnogueira.com - Tentando explicar o Oracle!
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>  
>



-- 
Marcio Portes
Material Tecnico em Portugues - http://mportes.blogspot.com
Practical Learning Oracle     -
http://mportes.blogspot.com/2006/02/practical-learning-oracle.html


[As partes desta mensagem que não continham texto foram removidas]

Responder a