Powered By Blogger

miércoles, 6 de noviembre de 2013


2013

MODELAMIENTO DE BASE DE DATOS











INTEGRANTES:
MIGUEL AHUMADA
ENRIQUE OLIVARES
JAVIER VERGARA
















Contenido










 





INTRODUCCION


            La estructura del contenido sigue un orden lógico y jerárquico de ideas, aunque para fines didácticos se ha realizado una separación entre los elementos físicos que componen un computador (hardware) y las colecciones de programas (Software) básicos necesarios para el funcionamiento del mismo. Pese a esta separación, se busca, en todo momento, que el estudiante comprenda e identifique las relaciones que involucran ambos componentes, para que obtenga una visión global e integradora de lo que sería un entorno de trabajo digital. La práctica directa sobre el computador es una de las mejores alternativas para lograr este propósito; por lo que deben ser incluidas, sobre todo, en lo referente a software.
El objetivo es que se evalúe mediante la presentación de ideas concretas para que el estudiante pueda identificar distintos elementos y/o conceptos
asociados a esta unidad Unidad.




 

 

 

 


Diseño base de datos


            El diseño de una base de datos no es un proceso sencillo. Habitualmente, la complejidad de la información y la cantidad de requisitos de los sistemas de información hacen que sea complicado.

            Por lo tanto, conviene descomponer el proceso del diseño en varias etapas; en cada una se obtiene un resultado intermedio que sirve de punto de partida de la etapa siguiente, y en la última etapa se obtiene el resultado deseado.
            De acuerdo con el Instituto Nacional Estadounidense de Estándares (ANSI) un modelo de datos se puede interpretar como un esquema:
·        Modelo conceptual: que especifica las expresiones permitidas por el modelo mismo, comunica las reglas y definiciones esenciales de los datos a los usuarios.
·         Modulo lógico: que describe la semántica de tablas y columnas, clases orientadas a objetos, etcétera, representada por una tecnología de manipulación en particular (como ser el lenguaje SQL)
·        Modelo físico: que detalla los medios en los que se almacena la información, como ser particiones de disco
 






Como realizar un modelo de datos


            Para realizar un modelo de datos básico a partir de los requerimientos del usuario debemos seguir los siguientes pasos:

1) Identificar las categorías (nombres)

2) Identificar los componentes de las categorías o atributos (agregación)

3) Identificar las claves

4) Verificar generalización entre categorías.

5) Identificar  asociaciones entre categorías

6) Identificas las restricciones:
a. Dominio
b. Cardinalidad
c. Explícito (adicional al modelo)

7) Identificar y describir las operaciones.



Las personas socias de la biblioteca disponen de un código de socio y además necesitar almacenar su rut, dirección, teléfono, nombre y apellidos.

La biblioteca almacena libros que presta a los socios y socias, de ellos se almacena su título, editorial, el año en el que se escribió el libro, el nombre completo del autor( o autores), el año en que se editó y en que editorial fue, cada libro es único( no ahí mas de un ejemplar disponible).

Necesitamos poder indicar si un volumen en la biblioteca esta deteriorado o no

Queremos controlar cada  préstamo que se realiza almacenando la fecha en la que se realiza, la fecha tope para devolver ( que son  15 días más que la fecha en la que se realiza el préstamo) y la fecha real en la que se devuelve el libro











Modelo entidad/relación


            Para este problema creamos el siguiente modelo entidad relación, identificando cada uno de las entidades y sus respectivos atributos, además de las llaves primarias y las respectivas cardinalidades.









Modelo entidad/relación


            Para este problema creamos el siguiente modelo entidad relación, identificando cada uno de las entidades y sus respectivos atributos, además de las llaves primarias y las respectivas cardinalidades.





Modelo entidad/relación en Data Modeler


El modelo lógico realizado en SQL Developer es el siguiente:








Generación del diccionario de datos


El código DLL generado por este modelo es el siguiente:


-- Generado por Oracle SQL Developer Data Modeler 3.1.0.699
--   en:        2013-11-04 20:15:43 CLST
--   sitio:      Oracle Database 10g
--   tipo:      Oracle Database 10g



CREATE TABLE Libros
    (
     id_Codigo INTEGER  NOT NULL ,
     Titulo VARCHAR2 (30)  NOT NULL ,
     Editorial VARCHAR2 (25)  NOT NULL ,
     AñoInscripcion DATE  NOT NULL ,
     NombreAutor VARCHAR2 (40)  NOT NULL ,
     AñoEdicion DATE ,
     id_CodigoSocio INTEGER  NOT NULL
    )
;



ALTER TABLE Libros
    ADD CONSTRAINT "biblioteca PK" PRIMARY KEY ( id_Codigo ) ;



CREATE TABLE Prestamos
    (
     IdCodigo INTEGER  NOT NULL ,
     FechaInicioPrestamo DATE  NOT NULL ,
     FechaTope DATE  NOT NULL ,
     FechaDevolucion DATE ,
     id_CodigoSocio INTEGER  NOT NULL
    )
;



ALTER TABLE Prestamos
    ADD CONSTRAINT "Prestamos PK" PRIMARY KEY ( IdCodigo ) ;



CREATE TABLE Socios
    (
     id_CodigoSocio INTEGER  NOT NULL ,
     Rut VARCHAR2 (10)  NOT NULL ,
     Nombres VARCHAR2 (30)  NOT NULL ,
     Apellidos VARCHAR2 (30)  NOT NULL ,
     Direccion VARCHAR2 (30)  NOT NULL ,
     Telefono INTEGER
    )
;



ALTER TABLE Socios
    ADD CONSTRAINT "Socios PK" PRIMARY KEY ( id_CodigoSocio ) ;




ALTER TABLE Prestamos
    ADD CONSTRAINT solicita FOREIGN KEY
    (
     id_CodigoSocio
    )
    REFERENCES Socios
    (
     id_CodigoSocio
    )
;


ALTER TABLE Libros
    ADD CONSTRAINT tiene FOREIGN KEY
    (
     id_CodigoSocio
    )
    REFERENCES Socios
    (
     id_CodigoSocio
    )
;



-- Informe de Resumen de Oracle SQL Developer Data Modeler:
--
-- CREATE TABLE                             3
-- CREATE INDEX                             0
-- ALTER TABLE                              5
-- CREATE VIEW                              0
-- CREATE PACKAGE                           0
-- CREATE PACKAGE BODY                      0
-- CREATE PROCEDURE                         0
-- CREATE FUNCTION                          0
-- CREATE TRIGGER                           0
-- ALTER TRIGGER                            0
-- CREATE STRUCTURED TYPE                   0
-- CREATE COLLECTION TYPE                   0
-- CREATE CLUSTER                           0
-- CREATE CONTEXT                           0
-- CREATE DATABASE                          0
-- CREATE DIMENSION                         0
-- CREATE DIRECTORY                         0
-- CREATE DISK GROUP                        0
-- CREATE ROLE                              0
-- CREATE ROLLBACK SEGMENT                  0
-- CREATE SEQUENCE                          0
-- CREATE MATERIALIZED VIEW                 0
-- CREATE SYNONYM                           0
-- CREATE TABLESPACE                        0
-- CREATE USER                              0
--
-- DROP TABLESPACE                          0
-- DROP DATABASE                            0
--
-- ERRORS                                   0
-- WARNINGS                                 0




            CONCLUSION


             Las bases de datos nos ayudan a almacenar la información que usará un sistema de información solicitado.

            Según las necesidades y los requisitos de los usuarios finales de este sistema de información, por lo cual debemos tomar en cuenta adecuadamente de las decisiones anteriores.

             El diseño de una base de datos consiste en definir la estructura de los datos que debe tener la base de datos de un sistema de información determinado. En el caso relacional, esta estructura será un conjunto de esquemas de relación con sus atributos, dominios de atributos, claves primarias, claves foráneas, etc.

            El programa SQL developer es una excelente herramienta para realizar y construir una base de datos.