Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Valores null y not null

Estas en el tema de Valores null y not null en el foro de Mysql en Foros del Web. Buen día, me he informado un poco sobre estos 2 valores,y,entendí que not null y null sueltan valores 0 y 1, null suelta el valor ...
  #1 (permalink)  
Antiguo 18/01/2013, 07:57
Avatar de andres_15_  
Fecha de Ingreso: septiembre-2008
Ubicación: Cali
Mensajes: 232
Antigüedad: 16 años, 2 meses
Puntos: 7
Pregunta Valores null y not null

Buen día, me he informado un poco sobre estos 2 valores,y,entendí que not null y null sueltan valores 0 y 1, null suelta el valor 0 y not null el valor 1 (según entendi), pero en principio creia que estos valores eran para hacer una especie de "validacion", es decir , si el campoesta vacio no deberia ingresar ningun registro. Alguien por favor que me aclare esto.Mucha gracias
  #2 (permalink)  
Antiguo 18/01/2013, 08:05
 
Fecha de Ingreso: noviembre-2012
Ubicación: Caracas - Venezuela
Mensajes: 116
Antigüedad: 12 años
Puntos: 1
Respuesta: Valores null y not null

Null significa que el regsitro o el campo de dicho registro "no contiene valores dentro de él", en MySQL lo puedes utilizar como validacion cuando estás creando tablas, por ejemplo si tienes una tabla de usuarios y al campo nombre le pones NOT NULL, significa que ese campo no puede quedar vacio en la base de datos, si intentas dejarlo vacio la base de datos te dará un error.

A medida que avances programando usar NULL tanto en base de datos como en lenguajes de desarrollo de torna muy util para hacer verificaciones o validacion sobre ciertos campos o búsquedas.
  #3 (permalink)  
Antiguo 18/01/2013, 08:57
Avatar de andres_15_  
Fecha de Ingreso: septiembre-2008
Ubicación: Cali
Mensajes: 232
Antigüedad: 16 años, 2 meses
Puntos: 7
Respuesta: Valores null y not null

Cita:
Iniciado por angelsds Ver Mensaje
Null significa que el regsitro o el campo de dicho registro "no contiene valores dentro de él", en MySQL lo puedes utilizar como validacion cuando estás creando tablas, por ejemplo si tienes una tabla de usuarios y al campo nombre le pones NOT NULL, significa que ese campo no puede quedar vacio en la base de datos, si intentas dejarlo vacio la base de datos te dará un error.

A medida que avances programando usar NULL tanto en base de datos como en lenguajes de desarrollo de torna muy util para hacer verificaciones o validacion sobre ciertos campos o búsquedas.
Gracias,buena explicacion aunque no me valida porque los coloco not null y aun asi sin llenarlos entran los otros datos.Te doy unos puntitos ya que yo no tengo
  #4 (permalink)  
Antiguo 18/01/2013, 09:17
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: Valores null y not null

En un tema crítico en las bases de datos, y difícil de entender para los legos, y algunas veces para los programadores.
Para estos últimos, un valor Null o Nothing, es el resultado de un error, y en ese sentido algo que no debe existir.
En las bases de datos, es una restricción de consistencia de datos, de integridad referencial, un valor esperable, una condición deseada o una condición a evitar.
Se trata de algo que en definitiva se usa constantemente en todas las operaciones de consultas, altas, bajas o modificaciones de datos.
Yendo a su definición un poco más estricta, NULL no es un dato, sino un estado. Es un estado de indefinición, y como tal no operan contra él (al menos en MySQL) los operadores lógicos como =, <, >, o cosas similares. Se lo debe analizar verificando si es o no es NULL, pero no es "igual a ". Por eso mismo un NULL no puede devolver cero o 1, sino que eso lo devuelve la operación lógica usada o la función que se aplique.
IS NULL o IS NOT NULL, es la comparación más habitual, por ejemplo, pero en algunos casos puede usarse alguna función como ISNULL().

A nivel de integridad de datos, por ejemplo, se usa para generar la restricción de que un cierto dato no puede quedar vacío. Es una de las formas más habituales de crear esa condición.
Con las relaciones entre tablas, además, sirve para verificar que no pueda existir un registro no relacionado con otra entidad, si esa relación es obligatoria.
Por ejemplo, en el detalle de una factura, el código de producto es siempre NOT NULL, porque debe existir el producto para ser facturado. Siempre.
En otros casos se puede definir que algo sea opcional, simplemente dejando que sea NULL, pero bajo ciertas condiciones.

Cuando realizas una consulta entre dos tablas, pero buscando aquello que no relaciona la primera con la segunda tablas, la segunda devolverá NULL(al usar LEFT JOIN), y en ese caso es una condición buscada.
En resumen: El uso de NULL en las bases es múltiple y constante. Raro es que no lo uses en algún momento.

El manual de referencia de MySQL tiene un capítulo entero dedicado a ese tema.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: null, campos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:16.