Transcript Modelo ER

Especialización en Administración
de Bases de Datos
Instructor: Ing. Sergio Arturo Medina Castillo
Especialización en Administración
de Bases de Datos
Modelo Relacional - SQL -> DDL
Lenguaje estructurado para bases de datos - SQL
Temas
Programación en Bases de datos PL-SQL
Instalación, configuración, manejo de usuarios
Administración de bases de datos
Especialización en Administración
de Bases de Datos
Tema No. 1:
Parte A - Modelo Relacional
Especialización en Administración
de Bases de Datos
Competencia
Manejo información BD
Modelar BD
Tema No. 1:
Modelo Relacional
Estándar hoy en día
Ejes temáticos
--Modelo relacional
--Normalización
--Esquema BD (SQL-DDL)
Especialización en Administración
de Bases de Datos
ALGO DE HISTORIA
El Dr. Peter Pin-Shan Chen es el creador del Modelo Entidad-Relación
(Modelo ER).
El Modelo ER ha sido la base para diversas metodologías sobre análisis y diseño de sistemas,
herramientas de ingeniería de software asistida por computador (CASE) y repositorios de
sistemas. En este sentido, el Modelo ER ha sido utilizado por el IBM Repository Manager/MVS y
por el DEC CDD/Plus. Los términos “Modelo de Entidad-Relación (Modelo ER)”, “Diagrama de
Entidad-Relación (Diagrama ER)” y “Peter Chen” son utilizados habitualmente en diccionarios
on-line, libros, artículos, páginas Web, textos de aprendizaje y en especificaciones de productos
comerciales.
Al Dr. Peter Chen le debemos la fundamentación detallada de todo lo que es
bases de datos
Especialización en Administración
de Bases de Datos
ALGO DE HISTORIA
Hoy en día, es muy probable encontrar al menos un capítulo que hable sobre el Modelo ER en libros de
diseño de sistemas de información o de bases de datos.
También es muy probable ver que el Modelo ER se explica en clases de Gestión de la Información.
Por ejemplo se explica en:
En la Universidad Estatal de Louisiana
(El Modelo ER se enseña en el Departamento de Ciencias de la Computación del Colegio de Ciencias
Básicas.
En el Departamento de Ingeniería Industrial y Sistemas de Manufacturación del Colegio de Ingenieros.
El Modelo ER también se enseña en otras universidades, por ejemplo:
En la Escuela de Administración de la Información en Berkeley,
En los programas de Biología Computacional y de Bioinformática de la Universidad de Pennsylvania.
En la Universidad de Drexel.
En la Universidad de Virginia
En la Universidad de Hong Kong.
Estos son sólo algunos ejemplos, ya que actualmente se enseña el Modelo ER en diversas instituciones
de educación superior.
Especialización en Administración
de Bases de Datos
ALGO DE HISTORIA
Edgar Frank Codd:
Científico informático inglés (23 de agosto de 1923 - 18 de abril de 2003), conocido por sus aportes a la
teoría de bases de datos relacionales.
En las décadas de los sesenta y los setenta trabajó en sus teorías sobre modelado de datos, publicando
su trabajo "Un modelo relacional de datos para grandes bancos de datos compartidos“.
El Señor codd tomo el Modelo-Entidad-Relación (ER) y le aplico las 12 reglas de codd que determinan
la fidelidad de un sistema relacional al modelo relacional.
VER LAS 12 REGLAS DE CODD
Trajo el concepto de llevar a desarrollar los DBA´S
Algunos de los DBA MAS CONOCIDOS SON:
ORACLE
DB2
Mas utilizado en el mercado
SQL SERVER
MYSQL
POSTGRESQL
Especialización en Administración
de Bases de Datos
Especialización en Administración
de Bases de Datos
-
Organización de los Datos:
Información (Entidades, tablas)
Relaciones
Aspectos
Modelo
Relacional
Manipulación de los Datos:
Lenguaje estructurado y estándar SQL
Especialización en Administración
de Bases de Datos
Objeto -> Almacenar información
Entidad-Tabla
Aspectos
Modelo
Relacional
Campo
Unidad de Información
Estructura de Datos: Tipo y longitud
Valor Nulo: Permiso campo vacío
Dominio: Valores de un campo (Finito – No Finito)
Llave Primaria: Campo Representativo - Unico
Especialización en Administración
de Bases de Datos
Asociación de 2 entidades
Relación
Cardinalidad: Un registro de una entidad – Cuántos
produce – Entidad relacionada (1 a 1) y ( 1 a N)
Tipo de Relación: Sumatoria de cardinalidades (1 a 1),
(1 a N) y (M a M)
Aspectos
Modelo
Relacional
Llave Foránea: Campo de Relación en la tabla hija
Integridad Referencial: Manejo de Huérfanos
Operaciones: Cascada , Nulll, no permitirlas
Ver Ejemplos de relaciones
Especialización en Administración
de Bases de Datos
EJEMPLOS DE RELACIONES
Proveedor
Cliente
Id_prove
Nom_prove
Id_client
Nom_client
M:
M:
Producto
Id_prove
Nom_prove
1:
M:
Cta_Ahorro
Id_cta
tipo_cta
Paciente
Id_pacient
Nom_pacient
1:
1:
Historia
Id_hist
Nom_hosp
Especialización en Administración
de Bases de Datos
Tema No. 1:
Parte B - SQL -> DDL
Especialización en Administración
de Bases de Datos
Análisis
Diseño
Diccionario de
datos
Modelo Conceptual
BD
(Modelo ER)
Normalización
Construcción / Programación
Esquema BD
DBMS
Herramienta software
Para implementar
1 FN= Identificar Entidades
Relación entre campos
(Modelo ER)
2 FN= Dependencias Funcionales
3 FN= Eliminar Relaciones DFT
4 FN= Relaciones Multivaluadas
DirectasLlaves primarias
Transitivas
Especialización en Administración
de Bases de Datos
Dueño(OWNER)
de las tablas
Usuario
Tabla
Una Sola para
todas las tabla
Base de Datos
DBMS para desarrollo de aplicaciones de alta complejidad
Especialización en Administración
de Bases de Datos
DDL
Lenguaje de Definición de
Datos
Mantenimiento
DML
Lenguaje de
Manipulación
de Datos
Consulta
Lenguaje Estructurado y Estándar para el manejo de B.D.
Especialización en Administración
de Bases de Datos
Create Table
Creación de Base de Datos
Alter Table
Modificar estructura de B.D.
Describe
Visualizar estructura de tabla
Rename
Drop Table
Cambiar nombre a una tabla
Eliminar una tabla
Lenguaje de Definición de Datos
Especialización en Administración
de Bases de Datos
CREATE TABLE Nombre ( campo TIPO(LONG),
Create Table
CONSTRAINT Reglas de Integridad );
NOT NULL (Valores Nulos)
CONSTRAINT
Nombre: Tabla_Campo_nn
PRIMARY KEY (Llave Primaria)
Nombre: Tabla_pk
FOREIGN KEY (Llave Foránea)
Nombre: Tabla_Campo_fk
UNIQUE (Valor sin duplicados)
Nombre: Tabla_Campo_un
CHECK (Chequeo - Condiicones)
Nombre: Tabla_Campo_ck
Creación de Tablas
Especialización en Administración
de Bases de Datos
CHAR(n): Alfanumérico (Reserva espacio de n)
Tipos de
Datos
VARCHAR2(n): Alfanumérico (Solo usa los ocupados)
NUMBER(p,d): Numérico, p=dígitos, d:decimales
DATE: Fecha,Hora (Manejar formatos)
Creación de Tablas
Especialización en Administración
de Bases de Datos
Drop Table
DROP TABLE Nombre;
Eliminar Tablas
Especialización en Administración
de Bases de Datos
ALTER TABLE Nombre
Alter Table
ADD ( campo TIPO(LONG) NULO) ,
MODIFY ( campo TIPO(LONG) NULO);
• Añadir más campos
• Modificar ancho columna, tipo de datos, restricciones.
Modificar estructura de Tablas
Especialización en Administración
de Bases de Datos
DESCRIBE Tabla;
Otros
Comandos
RENAME Tabla_Vieja TO Tabla_Nueva;
Visualizar y Renombrar tablas
Especialización en Administración
de Bases de Datos
Edit (ED): Crear ó modificar un archivo de comandos
Comandos
SQL PLUS
@Archivo: Ejecuta archivo de comandos
EXIT: Salir
Extensiones de archivos de comandos: TXT ó SQL
Comandos del SQL PLUS
Especialización en Administración
de Bases de Datos
Averiguar
con ejemplo
1. Operaciones de las Relaciones en ORACLE
2. Manejo de consecutivos en códigos
Tarea