Uso del modelo Entidad-Relación en la creación de la base de datos para la empresa porcina Sancti Spiritus (página 2)
Para las categorías de precio oficial
existen las siguientes variantes con diferentes valores de
precio entre ellas.
– Menos de 60 kgs.
- Entre 60 y 79 Kgs.
- Mayor de 80 Kgs.
Para las otras categorías las variantes
son:
- De 40 a 59 Kgs.
- De 60 a 69 Kgs.
- De 70 a 84 Kgs.
- De 85 a 138 Kgs
- Más de 138 Kgs.
2.1 Diagrama
Entidad Relación (E/R).
a) Convenios.
2.2 Entidades y atributos.
AÑOS: Esta entidad aglutina los
años que se van incorporando en la BD y para los
cuales se captarán Convenios. Sus atributos son el
número del año y un código identificador
único.MUNICIPIOS: Esta entidad modela los
municipios de la provincia. Sus atributos son un
código identificador único y el
nombre.TIPOS CONVENIOS: Define los patrones de los
convenios que se firmarán. Sus atributos manifiestan
los
valores de las variables
que entran en los cálculos: pienso de inicio, pienso
de lactación, pienso B, carne a precio
oficial y diferenciada. Se define para cada uno de los
patrones un código identificador único y su
descripción.CONVENIOS: Agrupa los documentos
firmados y vigentes. Sus atributos son el año y el
consecutivo, el convenista y los planes de carne y de
alimento firmados, así como los reales importados. Las
entidades precebas, reproductoras y cotos constituyen
especializaciones de esta entidad.PRECEBAS: Sus atributos son: TM inicialmente
recibidas y cabezas.REPRODUCTORAS: Sus atributos son: cabezas
pactadas, plan pienso
de lactación y plan de pienso de inicio.COTOS: No tiene atributos individuales como
entidad.TIPO DE COTOS: Define el patrón de los
convenios de cotos y sus atributos son: coeficiente de carne
a precio oficial, descripción y un código
identificador único.- Convenios.
MUNICIPIOS: Idem. Convenios.
FACTURAS: Esta entidad engloba los documentos
del mismo nombre y sus atributos son: consecutivo, fecha y
estado.
Esta entidad posee 2 entidades especializadas: las facturas
de convenios y las facturas de unidades, las cuales no poseen
atributos por si solas.UNIDADES: Describe las unidades que
pertenecen a la empresa
provincial y sus atributos son: el nombre y un identificador
único.SURTIDOS: Representa los diferentes surtidos
comercializados por la entidad. Sus atributos son: precio,
descripción y conversión, además de un
código identificador único.Las demás entidades que intervienen en esta
BD están detalladas en el epígrafe
anterior. - Pienso.
- Carne.
CENTROS: Define los centros de acopio que la
empresa tiene
creados, sus atributos son el nombre y un identificador
único.
COMPRADOR: Cataloga a los trabajadores de la
empresa que realizan las compras a
los convenios, sus atributos son: nombre y código
identificador.
RECEPCIÓN: Representa el documento que
media entre el comprador y el convenio. Sus atributos son:
número, fecha y estado.
TIPO DE COMPRAS: Define los tipos de compras
que se van a realizar a los convenios. Sus atributos son la
descripción y el código identificador.
CATEGORÍAS: recoge los capítulos
en que se dividen los tipos de compras. Atributos:
Descripción, descuento y código
identificador.
SUBCATEGORÍAS: Agrupa los
subcapítulos de cada categoría, sus atributos
son: precio, descripción y código
identificador.
2.3 Interrelaciones y atributos.
A continuación se describen las interrelaciones
que se establecieron entre las entidades básicas del
diagrama E/R:
DETALLA (Pienso): Interrelación binaria.
Relaciona a las facturas con los surtidos por una cantidad y un
precio.
DETALLA (Carne): interrelación binaria.
Relaciona a las recepciones con las subcategorías con
los atributos de cantidad, precio, cabezas y
descuento.
2.4 Diseño
lógico.
Partiendo del esquema entidad relación se obtuvo
el esquema relacional. Esta transformación fue realizada
utilizando las reglas habituales de transformación.
("Manual del
Profesor de la
asignatura Bases de Datos de
la UCI")
2.5 Tablas y atributos
- Convenios.
Años: (IdAño,
Año)
Municipios: (IdMunicipio, Municipio)
TiposConvenios: (IdTipoConvenio, DescripTipo,
CoefCneOf, CoefCneDif, CoefPsoB, CoefPsoLac,
CoefPsoIni)
Convenios: (IdConvenio, IdAño, IdMcpio,
IdTipo, Número, Convenista, PlanCarneDif, PlanCarneOf,
PlanPsoB, RealPsoB, RealCarneOf, RealCarneDif)
Precebas: (IdConvenio, TMIniciales,
Cabezas)
Reproductoras: (IdConvenio, Cabezas,
PlanLactación, PlanInicio)
Cotos: (IdConvenio, IdTipoCoto)
TipoCoto: (IdTipoCoto, DescripTipoCoto,
CoefCneOf)
b) Pienso.
Municipios: (IdMunicipio, Municipio)
Facturas: (IdFactura, Consec, Fecha, Estado,
IdMcpio)
FactConvenios: (IdFactura, IdConvenio)
FactUnidades: (IdFactura, IdUnidad)
Unidades: (IdUnidad, NombreUnidad)
Surtidos: (IdSurtido, DescripSurt, PrecioSurt,
Conversión)
DetallaFact: (IdFactura, IdSurtido, Precio,
Cantidad)
c) Carne.
Centros: (IdCentro, NombreCentro)
Comprador: (IdComprador, IdCentro,
NombreComprador)
Recepción: (IdRecepción,
Número, Fecha, Estado, IdComprador, IdConvenio)
TipoCompras: (IdTipoCompra,
NombTipoCompra)
Categorías: (IdCategoría,
IdTipoCompra, NombCateg, Descuento)
SubCategorías: (IdSubCategoría,
IdCategoría, NombSubCateg, Precio)
DetallaRecep: (IdRecepcion, IdSubCateg, Cantidad,
Precio, Cabezas, Descuento)
2.6 Llaves.
Tablas | Llaves | Llaves |
CONVENIOS | ||
Años | IdAño | |
Municipios | IdMunicipio | |
TiposConvenios | IdTipoConvenio | |
Convenios | IdConvenio |
|
Precebas | IdConvenio |
|
Reproductoras | IdConvenio |
|
Cotos | IdConvenio |
|
TipoCoto | IdTipoCoto | |
PIENSO | ||
Municipios | IdMunicipio | |
Facturas | IdFactura |
|
FactConvenios | IdFactura |
|
FactUnidades | IdFactura |
|
Unidades | IdUnidad | |
Surtidos | IdSurtido | |
DetallaFact | IdFactura, IdSurtido |
|
| ||
Centros | IdCentro | |
Comprador | IdComprador |
|
Recepción | IdRecepción |
|
TipoCompra | IdTipoCompra | |
Categorías | IdCategoría |
|
SubCategorías | IdSubCategoría |
|
DetallaRecep | IdRecepcion, IdSubCategoría |
|
Tabla 2.1. Llaves
2.7 Llaves principales
En este epígrafe se describen las llaves
principales de las tablas de la base de
datos:
Tablas | Llaves | Descripción |
CONVENIOS | ||
Años | IdAño | Código único. |
Municipios | IdMunicipio | Código único. |
TiposConvenios | IdTipoConvenio | Código único. |
Convenios | IdConvenio | Formado por IdMunicipio, IdTipoConvenio, |
Precebas | IdConvenio | Llave principal en tabla Convenios. |
Reproductoras | IdConvenio | Llave principal en tabla Convenios. |
Cotos | IdConvenio | Llave principal en tabla Convenios. |
TipoCoto | IdTipoCoto | Código único. |
PIENSO | ||
Municipios | IdMunicipio | Código único. |
Facturas | IdFactura | Formado por IdMunicipio, Año y |
FactConvenios | IdFactura | Llave principal en tabla Facturas. |
FactUnidades | IdFactura | Llave principal en tabla Facturas. |
Unidades | IdUnidad | Código único. |
Surtidos | IdSurtido | Código único. |
DetallaFact | IdFactura, IdSurtido | Ambos atributos forman la llave. |
| ||
Centros | IdCentro | Código único. |
Comprador | IdComprador | Código único. |
Recepción | IdRecepción | Formado por un consecutivo para cada IdComprador, |
TipoCompra | IdTipoCompra | Código único. |
Categorías | IdCategoría | Código único. |
SubCategorías | IdSubCategoría | Código único. |
DetallaRecep | IdRecepcion, IdSubCategoría | Ambos atributos forman la llave. |
- Restricciones adicionales.
Se definieron además algunas restricciones para
garantizar el correcto almacenamiento de
los datos:
- Se definió el dominio de los
valores numéricos que sólo pueden tomar valores
positivos. - El número consecutivo del convenio debe estar
entre 1 y 999, para mantener la estructura
usada como llave primaria en la tabla Convenios y en la cual
este atributo participa con 3 dígitos. - En la tabla Años, el código
identificador debe estar entre 1 y 99, para permitir la
compatibilidad creada en la llave primaria de la tabla
Convenios, donde este valor
interviene con 2 dígitos. - En la tabla Municipios, el código
identificador debe tomar valores entre 1 y 99 para permitir la
compatibilidad creada en la llave primaria de la tabla
Convenios donde este valor interviene con 2
dígitos. - En la tabla TipoConvenios, el código
identificador debe tomar valores entre 1 y 9 para permitir la
compatibilidad creada en la llave primaria de la tabla
Convenios donde este valor interviene con 1
dígito. - En la tabla Convenios la longitud del código
identificador debe tomar 7 caracteres para mantener la
compatibilidad con los demás campos que intervienen en
la llave primaria. - En la tabla Precebas, Reproductoras, Cotos,
FacturasConvenios y Recepciones la longitud del código
identificador del convenio debe tomar 7 caracteres para
mantener la compatibilidad con la llave primaria de la tabla
Convenios.
Bibliografías:
- Manual del Profesor de la asignatura Bases de Datos.
Curso 2003-2004. UCI. - Ullman, Jeffrey D. "Principles of Database
Systems" - Batini, C., Ceri, S., Navathe, S.B. (1994).
"Diseño Conceptual de Bases de Datos: Un enfoque de
entidades-interrelaciones", Addison-Wesley/Díaz de
Santos. - Codd, E.F. (1988). "Domains, Keys, and Referential
Integrity in Relational Databases", InfoDB 3. No.
1. - Codd, E.F. (1990). "The Relational Model for Database
Management Version 2. Reading, Mass.:
Addison-Wesley. - Chen, D.P. (1976). "The entity-relationship model:
Towards a unified view of data." ACM Transactions on Database
Systems. - Darwen, H. (1992). "Relation-Valued Atributes".
Addison-Wesley.
Datos del autor:
Ingeniero Luis Barceló
Ávila
Sancti Spiritus, Cuba.
Informático.
Otros datos del trabajo:
CUBA, Sancti Spiritus, Marzo 2008.
Página anterior | Volver al principio del trabajo | Página siguiente |