Ver Mensaje Individual
  #23 (permalink)  
Antiguo 02/10/2007, 09:08
Avatar de MACGREGOR
MACGREGOR
 
Fecha de Ingreso: enero-2005
Mensajes: 89
Antigüedad: 19 años, 4 meses
Puntos: 0
Re: null vs vacio

Veo que se ha vuelto a reabrir este post sobre NULL vs Vacio.

He releido los mensajes y creo que queda muy clara la diferencia entre NULL y Vacio.

En los últimos mensajes únicamente se genera polémica en torno a la cadena vacía.
Creo que también quedó claro que en ORACLE equivale a NULL y en Sql-Server NO. (provablemente en otros SGBD's tampoco).

Se ha hablado de si se ha definido de una manera o de otra en el standard sql...

Lo cierto es que a efectos prácticos es indiferente.

Lo importante es saber como dice Mithrandir
En SQL Server esa diferencia sí existe. Tanto que desde enterprise manager tienes una combinación de teclas especial para insertar NULL en lugar de dejar el '' que puedes haber colocado en un INSERT por separado.
Bueno conocer particularidades de otros manejadores


También se ha hablado de migrar una DDBB a otra...
Si tienes una DDBB ORACLE da lo mismo si insertas cadenas vacias o NULL's el SGBD inserta NULL de todas formas, lo importante es saber que una vez termines de migrar los datos (a Sql-Server por ej.) no tendrás ninguna cadena vacía todo nulls.
Y si la migración es hacia ORACLE debes saber que tendrás registros con NULL y otros con un carácter "extraño" que antes significaba cadena vacia.(provablemente un \n o \n\r como ya dije en otro mensaje anterior).

Siento mucho si me repito, pero lo importante es el "conocimiento", saber el comportamiento del SGBD con el que trabajas y saber las diferencias que tiene con otros.

Obviamente todo el mundo tiene derecho a opinar que forma le parece más razonable. Personalmente me resulta muy cómodo como lo maneja ORACLE, pero veo más lógica la otra forma.