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

#26 Alfredo Novoa
15/09/2008 - 14:08 | Informe spam
Hola Pedro,

El Mon, 15 Sep 2008 07:31:14 -0430, Pedro escribió:

Bueno tal vez quise decir que el valor de dicho atributo no existe para
una
determinada tupla.



Esto es una contradicción, por que una tupla es un conjunto de valores.




Pues mejor di "desconocido". Es difícil definir un concepto como el de
NULL.



Es difícil por que es un concepto que está muy liado, y en el estandar SQL
es inconsistente. La definición más habitual es que un nulo es una marca
que indica falta de valor.

Pero estoy seguro que entiendes lo que quise decir, igual que Carlos.



Ahora lo he entendido, antes no. Cuando se habla de estas cosas tan liosas
es importante ser muy preciso por que sino cada uno puede entender una cosa
diferente.

Insistir en ser tan preciso en una definición es desviar la discusión.
Mejor dénnos su definición de Null que yo la aceptaré humildemente :)

O si pueden, revisen:
http://en.wikipedia.org/wiki/Null_(SQL)



Si, aquí dicen lo mismo que yo, y no lo que dice el estandar SQL.

También Oracle, FireBird, SyBase, etc. tienen ese "gran error".



Efectivamente, todos son imitaciones del viejo System R y heredan la
mayoría de sus errores.

Pero comprando ese argumento, qué "valor"piensas que debe devolver una
columna al lado izquierdo de un Left Join cuando la condición no se cumple ?



Pues la forma más habitual de resolver eso es incluir un "valor de relleno"
en la consulta.

Por ejemplo con el Business System 12 los left outer joins se hacían así:

MERGE(t1, t2, t3)

Donde t1 y t2 son expresiones relacionales y t3 es una relación con una
sola tupla que contiene el valor de relleno.

Otra opción es que cada tipo de datos tenga un valor por defecto y usar ese
valor para rellenar cuando no se indique otra cosa.

O los Outer Join's son también un error? Verdad que no?



No, pero rellenar con nulos si que es un gran error.


Saludos
Respuesta Responder a este mensaje
#27 Alfredo Novoa
15/09/2008 - 14:11 | Informe spam
Hola Pedro,

El Mon, 15 Sep 2008 07:46:00 -0430, Pedro escribió:

Es que el link me queda sin el parentesis final. Favor copiar y pegar.


"Pedro" <pedrito> wrote in message
news:%

O si pueden, revisen:
http://en.wikipedia.org/wiki/Null_(SQL)




http://en.wikipedia.org/wiki/Null_(SQL)





Pues a mi me funcionan todos.


Saludos
Respuesta Responder a este mensaje
#28 Alfredo Novoa
15/09/2008 - 14:15 | Informe spam
El Mon, 15 Sep 2008 14:08:30 +0200, Alfredo Novoa escribió:

O los Outer Join's son también un error? Verdad que no?



No, pero rellenar con nulos si que es un gran error.



Se me olvidaba decir que con SQL Server cuando hago un outer join SIEMPRE
relleno los "huecos" usando COALESCE.


Saludos
Respuesta Responder a este mensaje
#29 Pedro
15/09/2008 - 14:16 | Informe spam
Es que el link me queda sin el parentesis final. Favor copiar y pegar.


"Pedro" <pedrito> wrote in message
news:%

O si pueden, revisen:
http://en.wikipedia.org/wiki/Null_(SQL)




http://en.wikipedia.org/wiki/Null_(SQL)


Respuesta Responder a este mensaje
#30 Alhambra Eidos Kiquenet
15/09/2008 - 15:45 | Informe spam
Señor, puede poner un ejemplo de su uso de COALESCE en los outer join ??

Gracias.
Se me olvidaba decir que con SQL Server cuando hago un outer join SIEMPRE
relleno los "huecos" usando COALESCE.


Saludos

Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida