[firebase-br] RES: RES: [Firebase-Br] Campos calculados. Vantagens edesvantagens no uso

Zottis bzottis em ig.com.br
Ter Mar 1 10:21:37 -03 2011


Qual é o problema de altera-los dessa Forma?

Fiquei preocupado, pois utilizo isso há bastante tempo, e até agora nunca
Corrompeu nenhuma base de dados.

Obrigado. 

-----Mensagem original-----
De: lista-bounces em firebase.com.br [mailto:lista-bounces em firebase.com.br] Em
nome de Eduardo Jedliczka
Enviada em: segunda-feira, 28 de fevereiro de 2011 22:07
Para: FireBase
Assunto: Re: [firebase-br] RES: [Firebase-Br] Campos calculados. Vantagens
edesvantagens no uso

KKK... continue trocando os campos calculados desta forma...

E, quando você menos esperar, e mais precisar,  o seu banco estará
corrompido e não funcionará mais.

Fico aliviado em saber que será impossível (ao SYSDBA) alterar as tabelas de
sistema no Firebird 3.0.

abraço,

Eduardo Jedliczka

Em 25 de fevereiro de 2011 09:03, Zottis <bzottis em ig.com.br> escreveu:
> Olá,
> Eu consigo alterar campos calculados sem Dropa-los com a rotina que 
> peguei dos e-mais da lista.
>
> Alter table ctarec
> add    TOTALTMP        COMPUTED BY (CASE
>                                WHEN (PAGO = 'N') AND (VCTO_ORIGINAL <
> CURRENT_DATE) THEN
>                                       CURRENT_DATE - VCTO_ORIGINAL
>                                WHEN (PAGO = 'S') AND (VCTO_ORIGINAL <
> DATA_PGTO)  THEN
>                                       DATA_PGTO - VCTO_ORIGINAL
>                                ELSE
>                                       0
>                                END);
>
> update RDB$RELATION_FIELDS set
> RDB$FIELD_SOURCE = (select RDB$FIELD_SOURCE
>                    from RDB$RELATION_FIELDS
>                    where RDB$FIELD_NAME = 'TOTALTMP' and
>                    RDB$RELATION_NAME = 'CTAREC') where RDB$FIELD_NAME 
> = 'DIAS_ATRASO' and RDB$RELATION_NAME = 'CTAREC'; /*O Nome dos campos 
> e da tabela tem que ser em Maiúsculo*/
>
> alter table ctarec
> drop totaltmp;
>
>
> espero que ajude.
>
>
>
> -----Mensagem original-----
> De: lista-bounces em firebase.com.br 
> [mailto:lista-bounces em firebase.com.br] Em nome de Tecnobyte 
> Informática Enviada em: quarta-feira, 23 de fevereiro de 2011 19:30
> Para: FireBase
> Assunto: Re: [firebase-br] [Firebase-Br] Campos calculados. Vantagens 
> edesvantagens no uso
>
> Boa tarde
>
> Uso muito este recurso nas bases de dados de meus sistemas. Segue 
> minha opinião.
>
>
> VANTAGENS
>
> - Simplifica muito os SELECTs, pois cálculos complexos ou repetitivos 
> podem ser colocados em campos calculados e não preciso mais me 
> preocupar com isto na hora de fazer consultas.
>
> - Se eu tiver que mudar a fórmula do cálculo, basta alterar a 
> expressão do campo calculado e todas as aplicações passam a usar o 
> novo cálculo automaticamente.
>
>
> DESVANTAGENS
>
> - Usar campo calculado para buscar dados de outras tabelas pode não 
> ser uma boa opção. Muitas vezes usar JOINs no SELECT resulta em melhor
performance.
> Cada caso precisa ser analisado com cuidado.
>
> - Campos calculados geralmente dependem de outros campos ou mesmo 
> outras tabelas. Isto significa que para fazer alterações nos campos 
> relacionados você precisará dropar o campo calculado primeiro; após 
> fazer as modificações
>
> terá que criar o campo calculado novamente. Isto é semelhante a outras 
> dependências (chaves, índices, domínios, etc).
>
>
> Daniel P. Guimarães
> Tecnobyte Informática
> www.tecnobyte.com.br
>
>
> ----- Original Message -----
> From: "Humberto S. Reis" <hsreisjr em gmail.com>
> To: "FireBase" <lista em firebase.com.br>
> Sent: Wednesday, February 23, 2011 4:20 PM
> Subject: [firebase-br] [Firebase-Br] Campos calculados. Vantagens 
> edesvantagens no uso
>
>
> Caros colegas
>
> Campos calculados. Quais as vantagens e desvantagens no uso?
>
> Grato.
>
> Humberto S. Reis
>
>
> ______________________________________________
> 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