Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Claudio De Lima Costa

Relacionamento

Recommended Posts

Boa tarde,

 

Estou com uma dúvida quanto ao branco e null.

 

A dúvida segue na seguinte situação eu tenho um cadastro de funcionários e tem informações que ele pode deixar em "branco ou nulo", mas eu queria saber se na hora que o campo estiver em branco sem ser preenchido por opção eu envio NULL para o banco de dados ou deixo em branco?

 

A minha dúvida caso não fique clara é qual ocupa menos à memória na hora de criar uma SELECT ou que deixa o banco de dados mais leve. eu acredito que tem diferença na hora de processamento por isso à dúvida.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Empty e Null são 'meramente' iguais, o único problema vai ser na hora de você testar isso, vamos supor, quero todas as linhas cujo o campo X é NULL

WHERE x IS NULL 

 

Só que se estiver empty no banco 'em branco', esse campo não vai ser atingido, daí você tem que fazer um

WHERE x IS NULL OR x = ''

 

Em desempenho não influencia absolutamente nada.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Lembre que branco " " é diferente de null.

 

Falo de pelo menos um espaço em branco.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Lembre que branco " " é diferente de null.

 

Exato .. o banco diferencia isso ! se fosse no PHP .

<?php
      $x = '' ;
      var_dump ( $x == null ) ; // true
      var_dump ( $x == '' ) ; // true

 

Já no MySQL

mysql> SELECT IF ( '' IS NULL , 'Ok' , 'Nopz' ) `t1`, IF ( NULL IS NULL , 'Ok' , 'Nopz' ) `t2`;
+------+----+
| t1   | t2 |
+------+----+
| Nopz | Ok |
+------+----+
1 row in set (0.00 sec)

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.