[firebase-br] Procedure demorada - Where + Order by

Felipe Aron felipearon em gmail.com
Ter Dez 16 11:58:38 -03 2008


Ei man vlw pela dica !! funcionou perfeitamente !!!! :)

2008/12/16 Cleber <cleber em agrosoftrs.com.br>

> procedure dinâmica, tem apartir da 1.5.
>
> param_in é um varchar que vc manda da aplicação para os parametros de
> entrada.
> execute statement  'select * from tabela where tabela.oi_codforn in
> '||param_in||'order by oi_codprod'
>
>
> ----- Original Message ----- From: "Felipe Aron" <felipearon em gmail.com>
> To: "FireBase" <lista em firebase.com.br>
> Sent: Tuesday, December 16, 2008 10:52 AM
>
> Subject: Re: [firebase-br] Procedure demorada - Where + Order by
>
>
> Só não entendi o "execute statement". Poderia me dar o exemplo ?
>
> 2008/12/16 Cleber <cleber em agrosoftrs.com.br>
>
>  veja se você tem o campo oi_codforn no indice, senão crie um indice com os
>> campos ou tente tirar o where e passe esse parametro do in em um varchar,
>> e
>> na procedure use um execute statement
>>
>> ----- Original Message ----- From: "Felipe Aron" <felipearon em gmail.com>
>> To: "FireBase" <lista em firebase.com.br>
>> Sent: Tuesday, December 16, 2008 10:26 AM
>> Subject: Re: [firebase-br] Procedure demorada - Where + Order by
>>
>>
>>
>> Vamos lá:
>> 1) Estou usando Fb 1.5, portanto não há tabelas temporárias...
>> Se não usar o where a procedure executa em 62ms ... com Where vai para
>> 960ms
>> e com order by vai para 3s .... isso localmente...
>> agora pela rede ai a coisa fica demorada mesmo...
>>
>> O que significa: "Passar uma string e montar as queries da procedure com
>> execute statement" ??
>>
>> 2008/12/16 Adriano dos Santos Fernandes <adrianosf em uol.com.br>
>>
>>  Felipe Aron escreveu:
>>
>>>
>>>  Pessoal estou com uma problemão:
>>>
>>>>
>>>> Tenho uma procedure que serve como base para um relatório.
>>>> Porém além dos parametros que eu passo para ela eu ainda tenho de usar
>>>> uma
>>>> consição Where e Order By na select da procedure:
>>>>
>>>> select rel_controleestoque.*
>>>> from rel_controleestoque('11/24/2008', '11/27/2008', 30, 0)
>>>> where rel_controleestoque.oi_codforn in (5238)
>>>> order by rel_controleestoque.oi_codprod
>>>>
>>>> Sem a condição where vai super rápido....
>>>>
>>>>
>>>>  Estranho, isso não deveria acontecer. Mas quanto tempo seria "super
>>> rápido"
>>> e não-"super rápido"?
>>>
>>> Qual a versão do FB? Quais os planos de execução com e sem o WHERE?
>>>
>>>  há alguma opção para enviar como
>>>
>>>  parametro um array na procedure ??
>>>>
>>>>  Você tem duas opções:
>>>>
>>>>
>>> 1) Passar uma string e montar as queries da procedure com execute
>>> statement
>>> 2) Cria uma tabela temporária com colunas (id [use generator], valor),
>>> insira os valores na tabela com um ID só. Passe o ID para a procedure. Na
>>> procedure, faça um join com a tabela temporária.
>>>
>>>
>>> Adriano
>>>
>>> ______________________________________________
>>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>>> Para saber como gerenciar/excluir seu cadastro na lista, use:
>>> http://www.firebase.com.br/fb/artigo.php?id=1107
>>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>>
>>>
>>>
>>
>> --
>> Com a força aprenda a suavidade. Através da suavidade a força prevalecerá!
>>
>> http://www.felipearon.net
>> http://br.groups.yahoo.com/group/xna-br/
>> ______________________________________________
>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>> Para saber como gerenciar/excluir seu cadastro na lista, use:
>> http://www.firebase.com.br/fb/artigo.php?id=1107
>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>
>>
>> ______________________________________________
>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>> Para saber como gerenciar/excluir seu cadastro na lista, use:
>> http://www.firebase.com.br/fb/artigo.php?id=1107
>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>
>>
>
>
> --
> Com a força aprenda a suavidade. Através da suavidade a força prevalecerá!
>
> http://www.felipearon.net
> http://br.groups.yahoo.com/group/xna-br/
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>



-- 
Com a força aprenda a suavidade. Através da suavidade a força prevalecerá!

http://www.felipearon.net
http://br.groups.yahoo.com/group/xna-br/



Mais detalhes sobre a lista de discussão lista