Hola,
Tengo un formulario con bastantes datos, algunos de ellos no obligatorios. Me gustaría que si alguno de estos campos se queda vació en la BD se guardara "NULL" y no una cadena vacía.
Gracias
| |||
Guardar NULL en la BD Hola, Tengo un formulario con bastantes datos, algunos de ellos no obligatorios. Me gustaría que si alguno de estos campos se queda vació en la BD se guardara "NULL" y no una cadena vacía. Gracias |
| ||||
Re: Guardar NULL en la BD lo primero es especificar que el campo acepte nulos y después puedes hacer tus insert's o update's con NULL. saludos. Editado: ya respondieron antes
__________________ El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa la tristeza no existe, solo es... la ausencia de la felicidad. |
| |||
Re: Guardar NULL en la BD Saludos. Eso va a depender del motor de BD que estes usando. Ya te han comentado cómo hacerlo en algunos casos, pero debes tener en cuenta que el comportamiento entre los diferentes motores varía, para tipos de datos, llenado etc. Sí bien es cierto que existe un estándar SQL, cada uno tiene su propio "valor agregado". Por otro lado, y sin alejarno mucho, NULL, para algunos motores, es lo mismo que vacío, así que revisa lo que quieres, y aporta mayores datos al hacer tu pregunta. En general, lo que ya respondieron podría servirte.
__________________ Gracias de todas todas ----- Linux! |
| |||
Re: Guardar NULL en la BD Hola de nuevo, Debí ser más concreta con la duda... Estoy utilizando mysql. Y todos los campos de la tabla en cuestión estan predeterminados con NULL. Como tengo muchos campos que podrían ir vacíos (que el usuario no haya introducido nada en alguno de ellos), me gustaría poder hacer algun control antes de guardarlo en la base de datos. El "control" nada más consistiría en que si dado un campo, este está vacio "", en la BD se guarde NULL y no vacío como lo que hago ahora. |
| |||
Re: Guardar NULL en la BD Cita: Por defecto los campos los tengo a NULL.Pongo un miniejemplo: formulario: Código HTML: <form name="form1" method="post" action="variables.php"> Nombre: <input type="text" name="nom"> Apellido: <input type="text" name="cog"> <input type="submit" name="Submit" value="Enviar"> </form> Código PHP: Gracias |
| ||||
Re: Guardar NULL en la BD intenta con algo como esto Código PHP:
__________________ El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa la tristeza no existe, solo es... la ausencia de la felicidad. Última edición por eits; 23/05/2007 a las 16:07 |
| |||
Re: Guardar NULL en la BD Gracias eits por la respuesta, lo he probado y sí que funciona. Ahora me surge otro problema, y es que esta base de datos ya la tenía cargada con datos, algunos campos de algunas filas estaban a NULL por defecto (y aparece en cursiva), y a partir de ahora cuando introduzca (por el formulario) algun campo vacío se guardará como NULL. Entonces cuando haga una consulta, por ejemplo select * from nombre where ape = "null" solo me cojera los que haya introducido ultimamente y no los que estan guardados como NULL Hay alguna manera de coger los dos? |
| ||||
Re: Guardar NULL en la BD al parecer hay un problema con las comillas aqui Código PHP: prueba con esto Código PHP: suerte y saludos.
__________________ El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa la tristeza no existe, solo es... la ausencia de la felicidad. |
| |||
Re: Guardar NULL en la BD gracias de nuevo eits, lo he probado pero no funciona. Sólo guarda $nom y $ape tienen valores los dos. Si alguno o ninguno es vacío no guarda nada en la BD. |
| ||||
Re: Guardar NULL en la BD a mi me funciona, prueba con esto para que veas la diferencia Código PHP: INSERT INTO nombre (`nombre`,`apellidos`) VALUES (NULL, NULL) Código PHP: INSERT INTO nombre (`nombre`,`apellidos`) VALUES ('algo', 'otra cosa') suerte y saludos.
__________________ El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa la tristeza no existe, solo es... la ausencia de la felicidad. Última edición por eits; 24/05/2007 a las 11:15 |