[firebase-br] RES: Firebird é lento na rede?!'

Sandro sandro_rebelo em ibest.com.br
Sex Ago 27 16:44:38 -03 2010


Tente criar um indice pro nome do produto.

Ja que ele ta usando o like com '%' no fim, não há problema, pois o motor do 
fb vai usar indice na consulta. Quem sabe ajuda




----- Original Message ----- 
From: "Emerson Sanches" <emerson.sanches em gmail.com>
To: "FireBase" <lista em firebase.com.br>
Sent: Friday, August 27, 2010 4:30 PM
Subject: Re: [firebase-br]RES: Firebird é lento na rede?!'


Essa consulta fica lenta se vc executar ela diretamente no banco? Sem o
intermedio do Delphi.


Emerson Sanches
Analista de Sistemas


Em 27 de agosto de 2010 16:26, Rafael Barros - Twins <
rafael.barros em twins.inf.br> escreveu:

>  Porque você usa um like no nome de produto? É relmente preciso iso?
>
> Eu faria uma busca pelo código do produto e se precisar realmente de like
> faz o like no teu CDS e não na consulta
>
>  Vou colocar a instrução SQL que uso para realizar essa busca:
>>
>> Seque a query:
>>
>> select produto.prod_cod, produto.prod_nome, produto.prod_marca,
>> produto.prod_preco, produto.prod_foto, produto.prod_obs, 
>> produto.prod_qtd,
>> fornecedor.forn_nome, fornecedor.forn_cidade, fornecedor.forn_uf,
>> fornecedor.forn_tel1, fornecedor.forn_tel2, fornecedor.forn_cel1,
>> fornecedor.forn_email, fornecedor.forn_reprenome,
>> fornecedor.forn_reprecidade, fornecedor.forn_repretel,
>> fornecedor.forn_reprecel, fornecedor.obs, tipo_peca.tipo_nome,
>> tipo_peca.cat_cod, categoria.cat_nome, unidade.und_desc from unidade 
>> inner
>> join produto on (unidade.und_cod = produto.und_cod) inner join tipo_peca
>> on
>> (produto.tipo_cod = tipo_peca.tipo_cod) inner join fornecedor on
>> (produto.forn_cod = fornecedor.forn_cod) inner join categoria on
>> (tipo_peca.cat_cod = categoria.cat_cod) where UPPER(PRODUTO.PROD_NOME)
>> like
>> :PROD_NOME
>>
>> Agora vou colocar como está sendo feita a busca no Delphi:
>>
>> TSQLDataSet<  TDataSetProvider (poAllowCommandText  = True)<
>>  TClientDataSet
>> <  TDataSource<  DBGrid
>>
>> E tenho um edidt com o seguinte código no evento OnKeyPress:
>>
>>    if key = #13 then
>>     begin
>>       cdsBuscaGenerica.Close;
>>       cdsBuscaGenerica.Params[0].
>> AsString := (eBusca.Text+'%');
>>       cdsBuscaGenerica.Open;
>>       Key:=#0;
>>     end;
>>
>>
>> Em 27 de agosto de 2010 15:51, Felix - Sol<felix.sol em terra.com.br
>> >escreveu:
>>
>>  Pois tem algo muito errado ai, deveria levar menos de 1 segundo. Posta a
>>> query ?
>>>
>>>
>>> Fco. Felix
>>> Desenvolvimento de Sistemas
>>> www.soltecnologia.com.br
>>>
>>>
>>> -----Mensagem original-----
>>> De: lista-bounces em firebase.com.br [mailto:lista-bounces em firebase.com.br]
>>> Em
>>> nome de Ricardo Rocha
>>> Enviada em: sexta-feira, 27 de agosto de 2010 15:36
>>> Para: FireBase
>>> Assunto: Re: [firebase-br] Firebird é lento na rede?!'
>>>
>>> a consulta trás 1307 registros! e a busca é feita em rede local
>>>
>>> Em 27 de agosto de 2010 15:03, Infosag<infosag em terra.com.br>  escreveu:
>>>
>>>  ricardo qntos registros trás essa tua consulta ?
>>>>
>>>>
>>>> --------------------------------------------------
>>>> From: "Ricardo Rocha"<rmsrlinus em gmail.com>
>>>> Sent: Friday, August 27, 2010 2:54 PM
>>>> To:<lista em firebase.com.br>
>>>> Subject: [firebase-br] Firebird é lento na rede?!'
>>>>
>>>>  Olá à todos!
>>>>
>>>>> Desenvolvi um sistema delphi+firebird. Porém estou um pouco triste com
>>>>> o
>>>>> firebird. É o seguinte tenho um formulário para fazer busca de 
>>>>> produtos
>>>>>
>>>> e
>>>
>>>> a
>>>>> busca está muito lenta muito lenta mesmo.
>>>>> Será que pode ser por que eu estou usando inner join na busca? Se eu
>>>>>
>>>> usar
>>>
>>>> view para fazer busca tem como melhor esse desempenho? Usando view eu
>>>>> posso
>>>>> parametrizar o campo nome do produto?
>>>>>
>>>>> Obrigado,
>>>>>
>>>>> Ricardo Rocha
>>>>> ______________________________________________
>>>>> 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
>>>>
>>>>  ______________________________________________
>>> 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
>>>
>>>  ______________________________________________
>> 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
>
______________________________________________
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 





Mais detalhes sobre a lista de discussão lista