Diferencia Entre Campo Vacío Y Null


Objetivo: Diferencia Entre Campo Vacío Y Null
buenas,

así como para no admitir campos nulos se usa "not null"
para un campo vacío como seria?

Objetivo: Re: Diferencia Entre Campo Vacío Y Null
Pues supongo que "is null".

Objetivo: Re: Diferencia Entre Campo Vacío Y Null
Cuando declaras que un campo como not null, ya has establecido que no se pueda grabar un registro sin suministrarle valores a tal campo.
Hay motores de datos, como Mysql, que te permiten además, asignar un valor por defecto del campo. Es decir, puedes declarar un campo boolean como 'not null default true' o un campo string como "not null default 'No consta'" y en creación se le asignará tal valor si no se suministra otro.
Nunca lo he probado con SQLite.

La BD genera un error si intentas grabar un registro con campos Not Null sin suministrarle valores, pero el que no se pueda grabar un valor vacío lo tienes que controlar tú en tu código de gambas. La BD no lo puede hacer por tí.

Saludos

última edición por shordi el Viernes, 16 Septiembre 2016, 08:58; editado 1 vez
Perfil MP  
Objetivo: Re: Diferencia Entre Campo Vacío Y Null
Shordi:

Puede que le interese dejar el campo en blanco. Para comprobar luego si se ha rellenado o no.
Por ejemplo para comprobar si se cumple una condición.

Imagina que tengo una base de datos de reparación de vehículos que tienen que pasar una revisión.
En ese campo se pone una fecha de la revisión, si no existe ningún valor es nulo, por lo tanto aun
no se ha reparado el vehículo.

Saludos

Objetivo: Re: Diferencia Entre Campo Vacío Y Null
Citar:
En ese campo se pone una fecha de la revisión, si no existe ningún valor es nulo, por lo tanto aun
no se ha reparado el vehículo.


Ok, eso te lo depura la BD generando un error, como digo arriba, siempre, claro, que hayas establecido el campo como NOT NULL.

Pero el problema que plantea V3ctor es distinto, se refiere a campos vacíos, que no es lo mismo que campos nulos.
Un campo nulo es un campo sin valor. Un campo vacío es un campo con valor, pero que no tiene contenido.

No es lo mismo Nombre=NULL (si es que eso es posible), que Nombre="".

En el primero no hay valor, en el segundo hay una cadena vacía.

Esta distinción puede ser banal o puede ser definitoria, según la definición de la tabla y el motor de base de datos que usemos pero la depuración de los campos vacíos (que no nulos) hay que hacerla en gambas, la BD no puede hacer eso.

No sé si me explico.

Perfil MP  
Objetivo: Re: Diferencia Entre Campo Vacío Y Null
Shordi:

Citar:

No sé si me explico.


Si, supuse que era bien distinto.
En cambio en gambas NULL puede hacer referencia a una cadena de longitud cero. Lo mismo que "".

Da verdadero.

Supongo que para saber si el campo no tiene valor, funcionara...
=''

O en caso contrario.
<>''


Parece un error frecuente.

Saludos


Página 1 de 1


  
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
Puede descargar archivos
No puede publicar eventos en el calendario

   

Está utilizando la versión (Lo-Fi). Para ver la versión completa del foro, haga clic aquí.

Powered by Icy Phoenix based on phpBB
Design by DiDiDaDo

Página generada en:: 0.1793s (PHP: -62% SQL: 162%)
Consultas SQL: 30 - Debug off - GZIP Activado