Re: [firebase-br] Defalt não funciona

Jeferson Oliveira jefersonfoliveira em gmail.com
Ter Jun 26 16:04:24 -03 2007


Juvencio Leite escreveu:
> no firebird
> existe a coluna Default, que deveria ser para na hora de gravar no sistema,
> caso não seja escolhido o campo venha ser diferente de null (o que gera
> muitos transtornos com funções envolvendo calculos), minha pergunta e a
> seguinte? Alem de informar no defalt o tipo que eu quero, o que mais e
> necessário fazer pra funcionar?

Se você explicita algo como:
insert into TABELA (Campo1, Campo2) values ('Valor1', null)

O Frebird não é tão atrevido a ponto de pensar: "O Juvêncio mandou eu
anular o valor do Campo2 mas eu sou malcrizdo e vou colocar lá o valor
default.". Não. Se você explicitou que o campo deve ficar nulo ele
ficará nulo. Impedir que campos recebam valores nulos é papel do flag
NOT NULL. Atribuir um valor a um campo caso ele esteja nulo cabe as
triggers BeforeInsert e BeforeUpdate.

Se tiver algo como:
insert into TABELA (Campo1) values ('Valor1')

O valor default será atribuído ao Campo2, pois não foi especificado
qualquer valor para ele, o que é diferente de especificar NULL.


Não estou acompanhando ativamente a lista, mas se não me engano li um
tópico sobre esse assunto essa semana.


> خوفنسيو يته دا سيلفا

Traduza aí pra gente. :)


Abraço!
Jeferson Oliveira


Mais detalhes sobre a lista de discussão lista