Diseño de tablas

14/10/2007 - 18:20 por Clara | Informe spam
Hola, tengo un problema a la hora de diseñar una tabla.
Se trata de una tabla de albaranes. Los hay de entrada, que provienen de un
proveedor, y los hay de salida que van hacia un cliente (una obra en mi
caso).
O sea, los de entrada deben de tener obligatoriamente el proveedor del que
provienen, y los de salida deben tener obligatoriamente una obra hacia dónde
se sirven.

La tabla que está definida actualmente es más o menos así:

Codigo nvarchar(10) not null
Tipo char(1) not null
Obra nvarchar(10) null
Proveedor nvarchar(6) null

siendo que si Tipo = 'E' Proveedor no puede ser NULL, y si tipo = 'S' obra
no puede ser NULL. Pero no me acaba de gustar mucho, y habia pensado en
crear una tabla para Albaranes de Salida, y otra para Albaranes de Entrada.
Pero tampoco me gusta mucho porque la única diferencia entre ellas dos, será
que una tiene el campo Obra, y el otro el campo Proveedor (eso si, los podré
definiri como NOT NULL)

Qué me recomandais?
(SQL Server 2005)

Grácias
 

Leer las respuestas

#1 Alejandro Mesa
14/10/2007 - 18:40 | Informe spam
Hola Clara,

Si las unicas columnas que seran diferentes son esas dos, entonces no veo
porque separarla en dos. De todas maneras ambas opciones son validas. Busca
en tus libros o en el internet por el topico "Sepertipos y subtipos".


AMB

"Clara" wrote:

Hola, tengo un problema a la hora de diseñar una tabla.
Se trata de una tabla de albaranes. Los hay de entrada, que provienen de un
proveedor, y los hay de salida que van hacia un cliente (una obra en mi
caso).
O sea, los de entrada deben de tener obligatoriamente el proveedor del que
provienen, y los de salida deben tener obligatoriamente una obra hacia dónde
se sirven.

La tabla que está definida actualmente es más o menos así:

Codigo nvarchar(10) not null
Tipo char(1) not null
Obra nvarchar(10) null
Proveedor nvarchar(6) null

siendo que si Tipo = 'E' Proveedor no puede ser NULL, y si tipo = 'S' obra
no puede ser NULL. Pero no me acaba de gustar mucho, y habia pensado en
crear una tabla para Albaranes de Salida, y otra para Albaranes de Entrada.
Pero tampoco me gusta mucho porque la única diferencia entre ellas dos, será
que una tiene el campo Obra, y el otro el campo Proveedor (eso si, los podré
definiri como NOT NULL)

Qué me recomandais?
(SQL Server 2005)

Grácias




Preguntas similares