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

evitar columna null en mysql

Estas en el tema de evitar columna null en mysql en el foro de Bases de Datos General en Foros del Web. hola amigos, tengo un pequeño problema estoy hasiendo una consulta en una base de datos, y no se como evitar la columna null, en la ...
  #1 (permalink)  
Antiguo 29/01/2009, 14:51
 
Fecha de Ingreso: agosto-2005
Mensajes: 722
Antigüedad: 18 años, 8 meses
Puntos: 2
Pregunta evitar columna null en mysql

hola amigos, tengo un pequeño problema
estoy hasiendo una consulta en una base de datos, y no se como evitar la columna null, en la tabla sobre la cula realizo la consulta algunas celdas estan vacias, y bueno al hacer el query quisiera que se muestre un espacio en blanco, bueno la verdad nose como hacer porfa ayudenme
  #2 (permalink)  
Antiguo 29/01/2009, 15:11
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: evitar columna null en mysql

Hola alfil123,

Si bien entiendo ese no es problema de tu base de datos, si no del lenguaje de programación que uses, tienes que comparar si el valor es nulo entonces insertas el espacio.

Si es HTML, puedes usar CSS para evitar eso poniendo el valor de empty-cells: "show".

Saludos
  #3 (permalink)  
Antiguo 29/01/2009, 15:44
 
Fecha de Ingreso: agosto-2005
Mensajes: 722
Antigüedad: 18 años, 8 meses
Puntos: 2
Respuesta: evitar columna null en mysql

gracias gatov, si es del gestor de base de datos, y pues esa era mi pregunta, como se hace esa comparacion o verifiacion, no se si alguien sabe?
  #4 (permalink)  
Antiguo 29/01/2009, 17:18
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: evitar columna null en mysql

Para evitar una columna en NULL, lo primero es no invocarla si no la vas a usar. Hacer un SELECT * FROM ... es la peor forma de consulta si no vas a usar realmente TODAS las columnas. Y aún usándolas, si alguna de ellas puede ser NULL, lo que debes hacer es ponerlas todas en el SELECT, para poder administrar el problema.
La cosa es sencilla si usas la función IFNULL(). Supongamos tres campos, uno VARCHAR, uno FLOAT y uno INTEGER, que pueden entrar en NULL:
Código sql:
Ver original
  1. SELECT
  2.     IFNULL(Campo1,'') Campo1,
  3.     IFNULL(Campo2,0.0) Campo2,
  4.     IFNULL(Campo3,0) Campo3
  5. FROM Tabla1;

Estoy poniendo los alias a continuación para que los encabezados de las columnas vuelvan a ser los de la tabla. Sino el encabezado tendrá la forma de la función.
Obviamente, esto no sirve si no se ponen uno por uno los campos a usar...
La otra opción, es eliminar en el WHERE aquellos registros donde pueda darse en NULL:
Código sql:
Ver original
  1. SELECT *
  2. FROM Tabla1
  3. WHERE
  4.      (Campo1 IS NOT NULL OR Campo2 IS NOT NULL OR Campo3 IS NOT NULL);
En este caso se le indica que esos registros no se los muestre.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
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 11:15.