Uso del modelo Entidad-Relación en la creación de la base de datos para la empresa porcina Sancti Spiritus (página 2)
Enviado por Luis Barcel� �vila
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 principales | Llaves extranjeras |
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 principales | 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, IdAño y Consecutivo. |
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 Consecutivo. |
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, el IdCentro y el año. |
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 |