FK surrogada NULL o cero?

13/09/2008 - 22:10 por Pablo Roca | Informe spam
Hola,

Para una Foreign Key surrogada ... ¿Que utilizariais para los valores que no
se pueden conocer o no sean aplicables en ciertos casos?

NULL o cero?
cero

Porque hay bastante polémica con el tema.


Saludos,

Pablo Roca
La Coruna - Spain
http://www.portalfox.com

Preguntas similare

Leer las respuestas

#1 Carlos M. Calvelo
13/09/2008 - 22:46 | Informe spam
Hola Pablo,

On 13 sep, 22:10, "Pablo Roca" wrote:
Hola,

Para una Foreign Key surrogada ... ¿Que utilizariais para los valores que no
se pueden conocer o no sean aplicables en ciertos casos?




Normalización (dividir la tabla en dos).

Saludos,
Carlos
Respuesta Responder a este mensaje
#2 Pedro
13/09/2008 - 23:07 | Informe spam
Si la columna puede ser null es porque es una relación opcional por tanto
NULL es lo más conveniente.


"Pablo Roca" escribió en el mensaje
news:%
Hola,

Para una Foreign Key surrogada ... ¿Que utilizariais para los valores que
no se pueden conocer o no sean aplicables en ciertos casos?

NULL o cero?
cero

Porque hay bastante polémica con el tema.


Saludos,

Pablo Roca
La Coruna - Spain
http://www.portalfox.com

Respuesta Responder a este mensaje
#3 Alfredo Novoa
13/09/2008 - 23:48 | Informe spam
Hola Pablo,

El Sat, 13 Sep 2008 22:10:48 +0200, Pablo Roca escribió:

Para una Foreign Key surrogada ... ¿Que utilizariais para los valores que no
se pueden conocer o no sean aplicables en ciertos casos?

NULL o cero?
cero



Pues depende del caso. En principio lo que dice Carlos, sobre todo si la
mayor parte de los datos son desconocidos o no aplicables, y si puedes
evitar usar claves sustitutas pues mejor.

Pero también puedes representar explicitamente por que falta el dato. Es
decir en la otra tabla creas filas como estas:

0, Desconocido
1, No aplicable
2, Es secreto
3, Pendiente de actualizar
4, No asignado
5, Estado A
6, Estado B
...

Una clave sustituta de este tipo seguramente no vale para nada, y sería
mejor eliminarla del nivel lógico de la base de datos.

Si te da igual el motivo por el que falta el dato también podrías usar una
cadena vacía en la descripción.

Si haces estas cosas tienes que tener cuidado con las consultas que usen
operadores de agregados. O mejor no hagas esto si vas a usar muchas
consultas con agregados.


Saludos
Respuesta Responder a este mensaje
#4 Carlos M. Calvelo
14/09/2008 - 00:18 | Informe spam
Hola Alfredo,

On 13 sep, 23:48, Alfredo Novoa wrote:
Hola Pablo,

El Sat, 13 Sep 2008 22:10:48 +0200, Pablo Roca escribió:

> Para una Foreign Key surrogada ... ¿Que utilizariais para los valores que no
> se pueden conocer o no sean aplicables en ciertos casos?

> NULL o cero?
> cero

Pues depende del caso. En principio lo que dice Carlos, sobre todo si la
mayor parte de los datos son desconocidos o no aplicables, ...



Solo añadir que.. especialmente si se dá mucho el caso
de *No Aplicable*. Entonces seguro que estamos hablando
de dos tipos de entidad distintos (-> dos tablas).

Saludos,
Carlos
Respuesta Responder a este mensaje
#5 Pablo Roca
14/09/2008 - 17:37 | Informe spam
Gracias Pedro,

Yo es que le tengo un poco de manía a los NULL, pero bueno son cosas mias :)


Saludos,

Pablo Roca
La Coruna - Spain
http://www.portalfox.com
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida