Foreign Key de Vista

05/02/2009 - 20:23 por Francizk0 | Informe spam
Q tal gente acudiendo a uds

Tengo dos tablas articulos:
- Articulo de Venta ( 10 Campos )
- Articulo de Produccion ( 23 campos )
Cada tabla es independiend ya q contiene campos total mente distintos
salvo 3 q son
CodArticulo , DescArticulo , CodFamilia
y tengo una tabla de ordenes de compra que su campo CodArticulo puede
ser FK de cualquiera de estas 2 tablas.
Mi duda es posible hacer esto que el campo CodArticulo de la tabla O.
de Compra sea FK de ambas tablas?????? o como puede hacer para hacer
algo similar
 

Leer las respuestas

#1 Jesús
05/02/2009 - 21:26 | Informe spam
Aquí tienes un modelado de tipos y subtipos. Hay dos alternativas:

Alternativa 1:

Tres tablas

Tabla Artículo con los campos CodArticulo, DescArticulo, CodFamilia, donde
CodArticulo es clave primaria

Tabla Articulo de Venta; con los campos CodArticulo y los campos especificos
de un artículo de venta, donde CodArticulo es clave primaria y clave externa
referenciando a la tabla Artículo

Tabla Artículo de producción: con los campos CodArtículo y los campos
específicos de un artículo de producción, donde CodArticulo es clave
primaria y clave externa referenciando a la tabla Artículo


La tabla ordenes de compra tiene el campo CodArticulo que es clave externa
referenciando a la tabla Artículos.


Alternativa 2:

Una tabla:

La tabla Articulos que tiene todos los campos de un artículo de venta y
todos los campos de un artículo de producción, mas un campo adicional
TipoArtículo que puede tener solo dos valores: "Artículo de Venta" y
"Artículo de producción"

La tabla órdenes de compra tiene el campo CodArtículo que es clave externa
referenciando a la tabla Artículos


La altenativa 1 es normalizada, mientras que la alternativa 2 es
desnormalizada. La alternativa 2 es más eficiente y sencilla, pero deja
muchos valores nulos en los campos.

"Francizk0" escribió en el mensaje de noticias
news:

Q tal gente acudiendo a uds

Tengo dos tablas articulos:
- Articulo de Venta ( 10 Campos )
- Articulo de Produccion ( 23 campos )
Cada tabla es independiend ya q contiene campos total mente distintos
salvo 3 q son
CodArticulo , DescArticulo , CodFamilia
y tengo una tabla de ordenes de compra que su campo CodArticulo puede
ser FK de cualquiera de estas 2 tablas.
Mi duda es posible hacer esto que el campo CodArticulo de la tabla O.
de Compra sea FK de ambas tablas?????? o como puede hacer para hacer
algo similar

Preguntas similares