Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

rafa-martin

qual erro na procedure

Recommended Posts

pessoal qual é o erro nessa procedure?

 

create or replace procedure sp_recupera_dados_bs
(
	   pCodCia		 in number(2),
	   pCodRamo		in number(3),
	   pCodSector	  in number(3),
	   pNumCertificado in varchar2
	   
)

is

begin

	select
		*
	from
		b2009001_vcr
	where
		 cod_cia = pCodCia		and
		 cod_ramo = pCodRamo	  and
		 cod_sector = pCodSector  and
		 num_certificado = pNumCertificado;

end;

Compartilhar este post


Link para o post
Compartilhar em outros sites

arrumei:

 

create or replace procedure sp_recupera_dados_bs

(

pCodCia in number,

pCodRamo in number,

pCodSector in number,

pNumCertificado in varchar2

 

)

 

is

 

v_b2009001_vcr b2009001_vcr%rowtype;

 

begin

 

select

* into v_b2009001_vcr

from

b2009001_vcr

where

cod_cia = pCodCia and

cod_ramo = pCodRamo and

cod_sector = pCodSector and

num_certificado = pNumCertificado;

 

end sp_recupera_dados_bs;

Compartilhar este post


Link para o post
Compartilhar em outros sites

Um SELECT ..... INTO só pode retornar 1 linha.

 

Para mais de uma linha linha deve-se usar um cursor que pode ser com um FOR

 

for r in (select campo1,campo2 from ....)

loop

if r.campo1 ......

end loop;

 

ou utilizar um cursor explicito.

 

Para maiores detalhes veja o manual de plsql que é público no site da Oracle.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.