[firebase-br] Select com um campo ComputedByquandolentodeixatodos os outros GDBs lento. Porque?

Jorge Henrique Aguiar jorginho em tauruslocacoes.com.br
Sex Dez 3 08:35:36 -03 2004


Chico, usar inner join e FK´s são mais faceis q tomar doce de criança e sua 
aplicação fica melhor q com esses computed by.

Ex:

Uma tabela de clientes:
CODIGO  INTEGER
NOME VARCHAR(40)
etc..

Tabela de vendas:
NUMERONF INTEGER
CODCLIENTE INTEGER,
VALORTOTAL
etc..

Aí vc quer fazer uma consulta aparecendo o nome do cliente, vc faz:

select VENDAS.numeronf, VENDAS.codcli, VENDAS.valortotal,CLIENTES.nome
from Vendas
inner join CLIENTES on VENDAS.codcli=CLIENTES.codigo

isso daria certo, porem vc ainda pode incluir no select acima:

WHERE (CLIENTES.nome LIKE "FULANO%")

Para definir a FK do código do cliente na tabela vendas, vc pode usar o 
IBExpert para fazer isso.
A FK somente impede q o usuário exclua o cliente sem excluir a venda, o q 
poderia resultar em
inconsistência na sua tabela de vendas, consequentemente no seu banco de 
dados.

Espero ter ajudado,

[]´s

Jorge Henrique.

----- Original Message ----- 
From: "Chico" <chico em auditecmatao.com.br>
To: "FireBase" <lista em firebase.com.br>
Sent: Friday, December 03, 2004 8:42 AM
Subject: Re: [firebase-br] Select com um campo 
ComputedByquandolentodeixatodos os outros GDBs lento. Porque?


> Não não ... eu não uso IBTables não... isso mata o sistema ... uso o 
> IBDataSet, IBQuery.
> Eu não uso tantos Computed By não ... agora eu gostaria se possivel que 
> você pudesse me explicar (mesmo que fosse em pvt) o que é e como usar 
> (exemplos) o FK, Join, Union.
>
> Grato.
> []s
> Chico.
> ----- Original Message ----- 
> From: "Eduardo Jedliczka" <eduardo em gerasoftinfo.com.br>
> To: "FireBase" <lista em firebase.com.br>
> Sent: Thursday, December 02, 2004 4:39 PM
> Subject: Re: [firebase-br] Select com um campo Computed 
> Byquandolentodeixatodos os outros GDBs lento. Porque?
>
>
>> Chico, eu diria que você tem uma tecnologia Client/Servidor e está
>> desperdiçando o melhor disto...
>>
>> É como se você programasse até hoje para DOS.
>>
>> Isto me fez pensar numa possibilidade, se você utiliza IBX, será que você
>> utiliza IBTable ? ou já aprendeu a utilizar a IBQuery ?
>>
>> [s]
>>
>> Só uma coisa, PKs, Fks, e Joins São básicos, Computed By na maioria das
>> vezes é "gambiarra"...
>>
>> =====================
>> Eduardo Jedliczka
>> GeraSoft Informática
>> Apucarana - PR
>> =====================
>> ----- Original Message ----- 
>> From: "Chico" <chico em auditecmatao.com.br>
>> To: "FireBase" <lista em firebase.com.br>
>> Sent: Thursday, December 02, 2004 6:24 PM
>> Subject: Re: [firebase-br] Select com um campo Computed By
>> quandolentodeixatodos os outros GDBs lento. Porque?
>>
>>
>>> Olha cara, pelo menos até hoje eu não precisei usar, pq todos os 
>>> sistemas
>>> estão rodando satisfatóriamente.
>>>
>>> Pode ser que um dia eu precise de alguma consulta mais cabeluda e venha
>>> correr atrás dessas instruções. Acho que é por aí.
>>>
>>> []s
>>> Chico.
>>>
>>> ----- Original Message ----- 
>>> From: "Eduardo Jedliczka" <eduardo em gerasoftinfo.com.br>
>>> To: "FireBase" <lista em firebase.com.br>
>>> Sent: Thursday, December 02, 2004 3:27 PM
>>> Subject: Re: [firebase-br] Select com um campo Computed By quando
>>> lentodeixatodos os outros GDBs lento. Porque?
>>>
>>>
>>> > Chico...
>>> >
>>> > se você não usa ForeignKey e Joins, como você consegue desenvolver os
>> seus
>>> > sistemas ????
>>> >
>>> > [s]
>>> >
>>> > =====================
>>> > Eduardo Jedliczka
>>> > GeraSoft Informática
>>> > Apucarana - PR
>>> > =====================
>>> > ----- Original Message ----- 
>>> > From: "Chico" <chico em auditecmatao.com.br>
>>> > To: "IB/FB" <lista em firebase.com.br>
>>> > Sent: Thursday, December 02, 2004 3:35 PM
>>> > Subject: [firebase-br] Select com um campo Computed By quando lento
>>> > deixatodos os outros GDBs lento. Porque?
>>> >
>>> >
>>> >> Pessoal, eu tenho um GDB aqui cujo uma tabela possue quase 4000
>>> >> registros.
>>> > Essa tabela tem um campo chamado FORNECEDOR que é COMPUTED BY. Quando 
>>> > eu
>>> > faço:
>>> >>
>>> >> Select * from CONTAPAGARNF
>>> >> Where UPPER(FORNECEDOR) Like UPPER('%FIA%')
>>> >>
>>> >> Ele demora uns 15 segundos para me retornar apenas 1 resultado. Só 
>>> >> que
>>> > enquanto ele demora, as demais maquina que estão processando outros
>>> > sistemas
>>> > com outros GDBs, ficam lentas. Aí quando esse select que eu fiz 
>>> > retorna
>> o
>>> > resultado. As maquinas voltam a velocidade normal.
>>> >> Alguem ja passou por isso ? Uso FireBird 1.0.2.908 D7 IBX
>>> >>
>>> >> Grato.
>>> >> Chico.
>>> >> ______________________________________________
>>> >> FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
>>> >> Para editar sua configuração na lista, use o endereço
>>> > http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
>>> >>
>>> >
>>> >
>>> > ______________________________________________
>>> > FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
>>> > Para editar sua configuração na lista, use o endereço
>>> > http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
>>> >
>>>
>>>
>>> ______________________________________________
>>> FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
>>> Para editar sua configuração na lista, use o endereço
>> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
>>>
>>
>>
>> ______________________________________________
>> FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
>> Para editar sua configuração na lista, use o endereço 
>> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
>>
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
> Para editar sua configuração na lista, use o endereço 
> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
>
> 






Mais detalhes sobre a lista de discussão lista