NULL ou NOT NULL
Quando e quais tipo de campo deve ser NULL e quando deve ser NOT NULL.
Não Achei no forum esta resposta.
J.R.P.J.
Não Achei no forum esta resposta.
J.R.P.J.
Uoquisala
Curtidas 0
Respostas
Macario
23/06/2004
Ola programador.
Aqui sera retornado apenas registros onde o [b:916f98fd38]Campo1[/b:916f98fd38] esteja vazio
independente do tipo do campo (char,varchar,datetime,integer,etc)
ja neste caso sera retornado apenas registros onde o [b:916f98fd38]Campo1[/b:916f98fd38] não esteja vazio independente do tipo do campo (char,varchar,datetime,integer,etc)
espero ter ajudado.
Se houver mais duvidas, estamos sempre aqui.
[color=green:916f98fd38]
Select * from Nome_tabela
where campo1 is Null[/color:916f98fd38]
Aqui sera retornado apenas registros onde o [b:916f98fd38]Campo1[/b:916f98fd38] esteja vazio
independente do tipo do campo (char,varchar,datetime,integer,etc)
[color=red:916f98fd38]
Select * from Nome_tabela
where campo1 is Not Null[/color:916f98fd38]
ja neste caso sera retornado apenas registros onde o [b:916f98fd38]Campo1[/b:916f98fd38] não esteja vazio independente do tipo do campo (char,varchar,datetime,integer,etc)
espero ter ajudado.
Se houver mais duvidas, estamos sempre aqui.
GOSTEI 0
Vinicius2k
23/06/2004
Colega,
PKs (chaves primárias) e PFKs (chaves estrangeiras que fazem parte da chave primária) obrigatoriamente devem ser NOT NULL.
FKs (chaves estrangeiras) normalmente são NOT NULL a não ser que na regra de integridade referencial o delete na tabela pai acione SET NULL para o campo na tabela filha, neste caso a FK não pode ser NOT NULL.
Para os demais essa é uma decisão exclusivamente sua... os campos que vc julgar estritamente necessários o preenchimento para o correto funcionamento da sua aplicação vc pode dar-lhe o atributo NOT NULL...
Isso quer dizer que em hipótese alguma o SGBD vai inserir ou dar update em um registro se um campo designado para NOT NUL não contiver um valor...
Na prática, a maior parte dos colegas, inclusive eu, controlam isso através da própria aplicação, obrigando o preenchimento de TEdits, mas algo pode passar desapercebido e fazer esta trava dentro do banco de dados ajuda para que, mesmo que vc erre em alguma rotina de insert ou update, o registro não possa ser gravado, mantendo assim sua integridade lógica...
Espero ter ajudado...
T+
PKs (chaves primárias) e PFKs (chaves estrangeiras que fazem parte da chave primária) obrigatoriamente devem ser NOT NULL.
FKs (chaves estrangeiras) normalmente são NOT NULL a não ser que na regra de integridade referencial o delete na tabela pai acione SET NULL para o campo na tabela filha, neste caso a FK não pode ser NOT NULL.
Para os demais essa é uma decisão exclusivamente sua... os campos que vc julgar estritamente necessários o preenchimento para o correto funcionamento da sua aplicação vc pode dar-lhe o atributo NOT NULL...
Isso quer dizer que em hipótese alguma o SGBD vai inserir ou dar update em um registro se um campo designado para NOT NUL não contiver um valor...
Na prática, a maior parte dos colegas, inclusive eu, controlam isso através da própria aplicação, obrigando o preenchimento de TEdits, mas algo pode passar desapercebido e fazer esta trava dentro do banco de dados ajuda para que, mesmo que vc erre em alguma rotina de insert ou update, o registro não possa ser gravado, mantendo assim sua integridade lógica...
Espero ter ajudado...
T+
GOSTEI 0