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

consulta mysql error en columan

Estas en el tema de consulta mysql error en columan en el foro de Mysql en Foros del Web. hola tengo una tabla llamada variante y la duda que tengo es que cuando quiero ingresar la informacion por medio de un formulario en mysql ...
  #1 (permalink)  
Antiguo 28/05/2016, 19:39
 
Fecha de Ingreso: marzo-2015
Mensajes: 96
Antigüedad: 9 años, 1 mes
Puntos: 0
consulta mysql error en columan

hola tengo una tabla llamada variante y la duda que tengo es que cuando quiero ingresar la informacion por medio de un formulario en mysql me sale esto como resultado:

Array ( [0] => Incorrect integer value: '' for column 'codigo_barra_variante' at row 1


la columna codigo_barra_variante es int(10), lo que pasa es que no siempre se ingresa ese dato en db.

la columna permite nulos.

lo que hago en php es validar si es igual a vacio y si es asi le asigno valor 0 a la variable que viene desde el formulario.

la duda es por que si la columna esta como aceptar valores nulos y le envio desde formulario ningun valor me sale ese error.

en varios valores enteros lo he solucionado asi pero no creo que sea lo mas optimo:

if(!empty($id_categoria)){ $id_categoria =0; }

esto lo hago para que no me arroje el error de arriba
  #2 (permalink)  
Antiguo 28/05/2016, 21:23
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, 4 meses
Puntos: 2658
Respuesta: consulta mysql error en columan

La clave está aquí:
Cita:
la duda es por que si la columna esta como aceptar valores nulos y le envio desde formulario ningun valor me sale ese error.
Que una columna pueda aceptar nulos, no implica que no le envíes un valor, sino que ese valor ppuede ser NULL... que no es lo mismo que no enviar nada.

¿Se entiende la diferencia?

Básicamente, si una columna puede ser nula, podría ser:

Código MySQL:
Ver original
  1. INSERT INTO tabla(campo1, capo2, camponulable)
  2. VALUES('valor1', 'valor2', NULL);

Pero no puede ser así:

Código MySQL:
Ver original
  1. INSERT INTO tabla(campo1, capo2, camponulable)
  2. VALUES('valor1', 'valor2', );

¿Queda claro?

Es tu responsabilidad hacer que el SQL creado en forma dinámica esté bien construido y con sus valores correctos.
SI creas mal el SQL, simplemente no te funcionará.

Como aclaración, a la BBDD no le interesa, y no es relevante si tu formulario manda o no datos necesarios. Eso es un problema de programación, y ese tema es OFF TOPIC en este foro de MySQL. Lo que tu tienes que resolver en programación es evitar que el usuario no envíe los datos obligatorios, y resolver qué hacer cuando no los envía y son necesarios.
En otras palabras, deberás programar tu aplicación para no mandarle datos MAL a la base. La base no puede andar adivinando lo que le mandas. Solo debe almacenarlo.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 28/05/2016, 21:27
 
Fecha de Ingreso: marzo-2015
Mensajes: 96
Antigüedad: 9 años, 1 mes
Puntos: 0
Respuesta: consulta mysql error en columan

me quedo claro muchas gracias

Etiquetas: sql, tabla
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 07:20.