OK, very good!
  Já tirei algumas dúvidas em manuais, mas não sei o porquê, não estou conseguindo localizá-lo na web, você poderia enviar o link do manual para mim?
  Angain, thanks and best regards
  
  
  Wagner Vinicius
  
 

jlchiappa <[EMAIL PROTECTED]> escreveu:
  Eu recomendaria não o OTN pra isso, mas sim primeiro a sempre
importante leitura do manual Pl/SQL (que veja vc, eu respondi a
pergunta do colega só com ele!), e depois pra COMPLEMENTAR uma
pesquisa no http://asktom.oracle.com vai bem.

[]s

Chiappa

--- Em oracle_br@yahoogrupos.com.br, Wagner Vinicius
escreveu
>
> Boa tarde galera!
>
> Chiappa e turma será que eu poderia pegar um gancho aqui
sobre "Cursor"?
> Procurei no OTN mas não encontrei um conteúdo que abordasse sobre:
> -> REF CURSOR
> -> Cursor (Explícito x Implícito)
>
> Por favor, vocês poderiam dar algum comentário ou indicar algum
site (que pode ser no próprio OTN) onde não encontrei?
> Desde já, obrigadão
> Forte abraço.
>
> Wagner Vinicius
>
>
> jlchiappa escreveu:
> Márcio, REPITO aqui novamente again o que eu falei, SQL onde vc
não
> sabe uma parte ** IMPLICA ** em SQl dinâmico, no way about it, ou
no
> máximo, como eu já tinha falado também, se o range de tabelas é
> conhecido, uma série de cursores , tipo :
>
> if P_TABELA = 'EMP' then
> open cursor nn for selectdatabelaemp;
> elsif P_TABELA = 'DEPT' then
> open cursor nn for slectdatabeladept;
>
> ....
>
> e aí vai, afora essas duas possibilidades (SQL dinÃmico OU número
> limitado de cursores), NÃO TEM COMO, certo ??
>
> []s
>
> Chiappa
>
> --- Em oracle_br@yahoogrupos.com.br, MARCIO CASTRO
> escreveu
> >
> > Caro JLChiapa:
> >
> > O problema é justamente esse; eu não quero usar SQL dinâmico
> nem REF CURSOR. Note que eu consigo passar variáveis para uma query
> de um cursor, desde que esta NÃO referencie o nome da tabela:
> >
> > cursor c_exemplo(p_chave number)
> > is
> > select *
> > from DEPT
> > where DEPTNO = p_chave;
> >
> > E o que eu precisava era disto:
> >
> > cursor c_exemplo(p_tabela number)
> > is
> > select *
> > from p_tabela;
> >
> > Obrigado.
> >
> > PS: Nem me pergunte por que é que eu não sei o nome da tabela. Na
> vida, acontecem coisas das quais não se deve compreeender, ou
> acabaremos cometendo arakiri...
> >
> >
> > jlchiappa escreveu:
> > Colega, tem sim, mas se performance importa, via de regra vc deve
> > FUGIR de SQL dinâmico, e SQL onde vc não sabe em tempo de runtime
> > qquer componente afora cláusula de WHERE implica em SQL dinâmico,
> VAI
> > sim certamente fazer PARSE pracas, não é NEM DE LONGE
recomendável,
> > mas é possível sim. Pra ** VARIAR ** só um pouco vc não diz a
> versão,
> > mas em sendo 9i ou superior isso é fácil,exemplo copiado do
manual :
> >
> > [EMAIL PROTECTED]:SQL>ed
> > Gravou arquivo afiedt.buf
> >
> > 1 create or replace procedure PROC_DIN (P_TABLE in VARCHAR2) is
> > 2 TYPE EmpCurTyp IS REF CURSOR; -- define weak REF CURSOR
> type
> > 3 emp_cv EmpCurTyp; -- declare cursor variable
> > 4 my_ename varchar2(35);
> > 5 my_sal number;
> > 6 BEGIN
> > 7 OPEN emp_cv FOR -- open cursor variable
> > 8 'SELECT ename, sal FROM ' || P_TABLE;
> > 9 LOOP
> > 10 FETCH emp_cv INTO my_ename, my_sal; -- fetch next row
> > 11 EXIT WHEN emp_cv%NOTFOUND; -- exit loop when last row is
> > fetched
> > 12 dbms_output.put_line('ename=' || my_ename || ',sal=' ||
> > my_sal);-- process row
> > 13 END LOOP;
> > 14 CLOSE emp_cv;
> > 15* END;
> > [EMAIL PROTECTED]:SQL>/
> >
> > Procedimento criado.
> >
> > [EMAIL PROTECTED]:SQL>set serveroutput on size 1000000
> > [EMAIL PROTECTED]:SQL>exec PROC_DIN('EMP');
> > ename=SMITH,sal=800
> > ename=ALLEN,sal=1600
> > ename=WARD,sal=1250
> > ename=JONES,sal=2975
> > ename=MARTIN,sal=1250
> > ename=BLAKE,sal=2850
> > ename=CLARK,sal=2695
> > ename=SCOTT,sal=3000
> > ename=KING,sal=5500
> > ename=TURNER,sal=1500
> > ename=ADAMS,sal=1100
> > ename=JAMES,sal=950
> > ename=FORD,sal=3000
> > ename=MILLER,sal=1430
> >
> > Procedimento PL/SQL concluído com sucesso.
> >
> > Veja que pra acrescentar insulto à injúria, o SQL dinâmico ainda
por
> > cima implica em usar o ineficiente e trabalhoso cursor EXPLÍCITO,
> mas
> > é isso. Eu recomendaria porém que, se for algo importante, se
> possível
> > vc não tenha SQL dinãmico, e sim tenha vários cursores fixos e de
> > acordo com o parâmetro recebido abra um ou outro, com IF.
> >
> > []s
> >
> > Chiappa
> >
> > --- Em oracle_br@yahoogrupos.com.br, Márcio de Figueiredo Moura e
> > Castro escreveu
> > >
> > > Caros senhores:
> > >
> > > Preciso criar um cursor onde a tabela de oigem deverá ser um
> > parâmetro:
> > >
> > > cursor c_dept(v_tabela varchar2) is
> > > SELECT
> > > DEPTNO
> > > , DNAME
> > > , LOC
> > > FROM v_tabela;
> > >
> > > Tem algum jeito de obter o resultado que eu quero?
> > >
> > > No aguardo,
> > >
> > > Márcio de Figueiredo Moura e Castro
> > >
> > >
> > >
> > >
> > >
> > > [As partes desta mensagem que não continham texto foram
removidas]
> > >
> >
> >
> >
> >
> >
> >
> > ------------------------------------------------------------------
--
> ------------------------------------------------------
> > Atenção! As mensagens deste grupo são de acesso público e de
> inteira responsabilidade de seus remetentes.
> > Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/
> > ------------------------------------------------------------------
--
> ------------------------------------------------------
> __________________________________________________________________
> >
> > Este Grupo recebe o apoio da SQL Magazine -
> www.devmedia.com.br/sqlmagazine
> > __________________________________________________________________
> > O grupo Oracle_br não aceita anexos. Quando oferecer algum
arquivo,
> tenha o link do mesmo para evitar trafego(pedidos) desnecessário.
> >
> >
> > Yahoo! Grupos, um serviço oferecido por:
> PUBLICIDADE
> >
> >
> > ---------------------------------
> > Links do Yahoo! Grupos
> >
> > Para visitar o site do seu grupo na web, acesse:
> > http://br.groups.yahoo.com/group/oracle_br/
> >
> > Para sair deste grupo, envie um e-mail para:
> > [EMAIL PROTECTED]
> >
> > O uso que você faz do Yahoo! Grupos está sujeito aos Termos do
> Serviço do Yahoo!.
> >
> >
> >
> >
> > ---------------------------------
> > Yahoo! Messenger com voz - Instale agora e faça ligações de
graça.
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
>
>
>
>
>
>
>
> --------------------------------------------------------------------
------------------------------------------------------
> Atenção! As mensagens deste grupo são de acesso público e de
inteira responsabilidade de seus remetentes.
> Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/
> --------------------------------------------------------------------
------------------------------------------------------
__________________________________________________________________
>
> Este Grupo recebe o apoio da SQL Magazine -
www.devmedia.com.br/sqlmagazine
> __________________________________________________________________
> O grupo Oracle_br não aceita anexos. Quando oferecer algum arquivo,
tenha o link do mesmo para evitar trafego(pedidos) desnecessário.
> Links do Yahoo! Grupos
>
>
>
>
>
>
>
>
>
>
> __________________________________________________
> Fale com seus amigos de graça com o novo Yahoo! Messenger
> http://br.messenger.yahoo.com/
>
> [As partes desta mensagem que não continham texto foram removidas]
>






--------------------------------------------------------------------------------------------------------------------------
Atenção! As mensagens deste grupo são de acesso público e de inteira responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/
--------------------------------------------------------------------------------------------------------------------------__________________________________________________________________

Este Grupo recebe o apoio da SQL Magazine - www.devmedia.com.br/sqlmagazine
__________________________________________________________________
O grupo Oracle_br não aceita anexos. Quando oferecer algum arquivo, tenha o link do mesmo para evitar trafego(pedidos) desnecessário.
Links do Yahoo! Grupos









__________________________________________________
Fale com seus amigos  de graça com o novo Yahoo! Messenger
http://br.messenger.yahoo.com/

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



--------------------------------------------------------------------------------------------------------------------------
Atenção! As mensagens deste grupo são de acesso público e de inteira responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/
--------------------------------------------------------------------------------------------------------------------------__________________________________________________________________

Este Grupo recebe o apoio da SQL Magazine - www.devmedia.com.br/sqlmagazine
__________________________________________________________________
O grupo Oracle_br não aceita anexos. Quando oferecer algum arquivo, tenha o link do mesmo para evitar trafego(pedidos) desnecessário.



Yahoo! Grupos, um serviço oferecido por:
PUBLICIDADE


Links do Yahoo! Grupos

Responder a