Tentei enviar este email com o WHITE PAPER à lista, mas acho que por causa do ANEXO, o email não deu certo, mas queria deixar aos companheiros a forma como utilizei, agradeço também ao Ricardo Pilotto pela sugestão, mas acho que daí eu teria que estar utilizando pelo menos a versão 3.1 do Centura se não me engano, mas a idéia que segui é praticamente a mesma.... valeu!! Caso alguém queira o material, favor enviar email...
 
 
----- Original Message -----
Sent: Tuesday, October 03, 2006 3:00 PM
Subject: Re: [sqlwin] Procedure PL/SQL retornando valores

        Olá Erasmo e demais da lista...
 
        Resolvi meu problema a partir de um White Paper enviado pelo Humberto, que me ajudou muito, onde basicamente crio uma "package" no banco onde são criados variáveis do tipo "PL/SQL Table" e daí crio procedures com parâmetros OUT do tipo destas variáveis PL/SQL Table declaradas na package, aí na aplicação é realizado um loop normal inserindo as linhas com SalTblInsertRow.... ficou MUITO mais rápido... como eu esperava. Utilizo a versão 3.0.... com Oracle XE.
 
        Mas muito obrigado pela atenção Erasmo!!!
 
 Obs: segue material, caso interesse a mais alguém. 
 
 
 
 Atenciosamente
 

________________________________
Januario Lachman Junior
Analista de Sistemas
Badesc - Agência de Fomento de SC
[EMAIL PROTECTED]
www.badesc.gov.br
(48)3216-5081
 
 
----- Original Message -----
From: Erasmo
Sent: Tuesday, October 03, 2006 11:50 AM
Subject: Re: [sqlwin] Procedure PL/SQL retornando valores

Não existe o conceito de ResultSet de resposta no Oracle, como há no Sybase e no SQLServer, ou seja, na execução de uma procedure no Oracle o máximo de retorno são parâmetros IN OUT, nunca uma lista de registros. Mas basta implementar isso rodando a procedure, gravando os registros numa tabela temporária, e depois dando select normalmente nesta tabela temporária. Por exemplo:

Call SqlOraPLSQLPrepare( hsql, 'begin procedure_teste(); end;')
Call SqlOraPLSQLExecute( hsql )
Call SalTblPopulate( tbl1, hsql, 'select nome, endereco from tmp_proc_teste', TBL_FillAll)

Sds,
Erasmo

- 

Erasmo Bispo de Oliveira Junior
Gerente de Pesquisa e Desenvolvimento
Softway - Softcomex Informática Ltda.
Pabx:   +55 (19) 3739.9200
Direto: +55 (19) 3739.9361
Fax:    +55 (19) 3739.9240
e-mail: [EMAIL PROTECTED]
web:    http://www.softcomex.com.br

Januario Lachman Junior wrote:
        Olá pessoal, alguém poderia me enviar um exemplo de como utilizar PROCEDURES PL/SQL que retorem valores, por exemplo, eu gostaria de popular uma "child table window" a partir de uma procedure, pois está um pouco lento para popular via select dentro da aplicação. Eu usava muito isso com o banco SYBASE, gerava uma tabela temporária na PROC, melhorou bastante a performance,gostaria de um exemplo para o Oracle. Utilizo Centura 3.0
 
 
    Atenciosamente
 

________________________________
Januario Lachman Junior
Analista de Sistemas
Badesc - Agência de Fomento de SC
[EMAIL PROTECTED]
www.badesc.gov.br
(48)3216-5081
 
 


-

Responder a