UNIVERSIDAD TECNOLÓGICA DEL ESTADO DE ZACATECAS
UNIDAD ACADÉMICA DE PINOS
TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN
1
Materia
BASE DE DATOS II
Tema
DIAGRAMA E-R, DIAGRAMA RELACIONAL Y
DICCIONARIO DE DATOS.
Nombre completo del Alumno:
Guadalupe del Rosario López Guerrero
Mario Alejandro Sánchez
Jorge Humberto Donato Monreal
Mónica de los Ángeles Ramírez Moreno
Grado: 3 Grupo: “A”
Nombre del Docente: Omar Emmanuel Lara Juárez
Fecha de entrega : 20/06/2013 Pinos, Zac.
UNIVERSIDAD TECNOLÓGICA DEL ESTADO DE ZACATECAS
UNIDAD ACADÉMICA DE PINOS
TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN
2
INDICE
INDICE pag.2
DESCRIPCION GENERAL pag.3
MARCO TEORICO pag.4
DIAGRAMA E-R pag.7
DIAGRAMA RELACIONAL pag.8
DICCIONARIO DE DATOS pag.9
SCRIPT pag.13
CONCLUSION pag.
UNIVERSIDAD TECNOLÓGICA DEL ESTADO DE ZACATECAS
UNIDAD ACADÉMICA DE PINOS
TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN
3
DESCRIPCION GENERAL
A continuación presentamos una descripción acerca de lo que van a ver a
continuación, como primer punto se presentara un marco teórico donde se
explicara un poco de la historia acerca de los diagramas E-R, diagrama relacional
y diccionario de datos.
Después presentaremos algunos ejercicios con el diagrama de E-R.
A los cuales los convertimos a diagrama relacional uniéndolos ya sea de uno-
varios, varios-uno, varios-varios, uno-uno.
Al final creamos el diccionario de datos de cada tabla que resulto del diagrama
relacional y presentamos una conclusión conformada por los integrantes del
equipo.
UNIVERSIDAD TECNOLÓGICA DEL ESTADO DE ZACATECAS
UNIDAD ACADÉMICA DE PINOS
TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN
4
MARCO TEORICO
BASE DE DATOS
Un sistema de bases de datos se divide en módulos que se encargan de cada una
de las responsabilidades del sistema completo. Los componentes funcionales de
un sistema de bases de datos se pueden dividir a grandes rasgos en los
componentes gestor de almacenamiento y procesador de consultas. El gestor de
consultas es importante porque las bases de datos requieren normalmente una
gran cantidad de
la consistencia. Sin embargo, cada programa en sí mismo no transforma la base
de datos de un estado consistente en otro nuevo estado consistente.
Un sistema gestor de bases de datos (SGBD) consiste en una colección de
datos interrelacionados y
una colección de programas para acceder a esos datos. Los datos describen una
empresa particular. El objetivo principal de un SGBD es proporcionar un entorno
que sea tanto conveniente como eficiente para las personas que lo usan para la
recuperación y almacenamiento
de la información. Los sistemas de bases de datos se diseñan para almacenar
grandes cantidades de información. La gestión de los datos implica tanto la
definición de estructuras para el almacenamiento de la información como la
provisión de mecanismos para la manipulación de la información. Además, los
sistemas de bases de datos deben proporcionar la seguridad de la información
almacenada, en caso de caídas del sistema o intentos de accesos sin
autorización. Si los datos están compartidos por varios usuarios, el sistema debe
evitar posibles resultados anómalos.
UNIVERSIDAD TECNOLÓGICA DEL ESTADO DE ZACATECAS
UNIDAD ACADÉMICA DE PINOS
TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN
5
DIAGRAMA E-R
Un diagrama o modelo entidad-relación (a veces denominado por sus siglas en
inglés, E-R "Entity relationship", o del español DER "Diagrama de Entidad
Relación") es una herramienta para el modelado de datos que permite representar
las entidades relevantes de un sistema de información así como sus
interrelaciones y propiedades.
DIAGRAMA RELACIONAL
El modelo relacional para la gestión de una base de datos es un modelo de
datos basado en la lógica de predicados y en la teoría de conjuntos. Es el modelo
más utilizado en la actualidad para modelar problemas reales y administrar datos
dinámicamente. Tras ser postuladas sus bases en 1970 por Edgar Frank Codd, de
los laboratorios IBM en San José (California), no tardó en consolidarse como un
nuevo paradigma en los modelos de base de datos.
Su idea fundamental es el uso de «relaciones». Estas relaciones podrían
considerarse en forma lógica como conjuntos de datos llamados «tuplas». Pese a
que ésta es la teoría de las bases de datos relacionales creadas por Edgar Frank
Codd, la mayoría de las veces se conceptualiza de una manera más fácil de
imaginar, esto es, pensando en cada relación como si fuese una tablaque está
compuesta por registros (cada fila de la tabla sería un registro o tupla),
y columnas (también llamadas campos).
DICCIONARIO DE DATOS
Un diccionario de datos es un conjunto de metadatos que contiene las
características lógicas y puntuales de los datos que se van a utilizar en el sistema
que se programa, incluyendo nombre, descripción, alias, contenido y organización.
Identifica los procesos donde se emplean los datos y los sitios donde se necesita
el acceso inmediato a la información, se desarrolla durante el análisis de flujo de
UNIVERSIDAD TECNOLÓGICA DEL ESTADO DE ZACATECAS
UNIDAD ACADÉMICA DE PINOS
TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN
6
datos y auxilia a los analistas que participan en la determinación de los
requerimientos del sistema, su contenido también se emplea durante el diseño.
En un diccionario de datos se encuentra la lista de todos los elementos que
forman parte del flujo de datos de todo el sistema. Los elementos más importantes
son flujos de datos, almacenes de datos y procesos. El diccionario de datos
guarda los detalles y descripción de todos estos elementos.
UNIVERSIDAD TECNOLÓGICA DEL ESTADO DE ZACATECAS
UNIDAD ACADÉMICA DE PINOS
TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN
7
DIAGRAMA E-R
PIZZERIA “DELICIAS”
PEDIDO
CLIENTES
ATIEN
DEN REALIZ
A
NOM
BRE
TELEF
ONO
DIREC
CION
ID
NO.PED
IDO
TIPO DE
PEDIDOFOLIO
EMPLEADOS
PRODUCTOS
NOM
BRE
NO.EMP
LEADO
IDTELEF
ONO
MARC
A
NOMB
RE
CATEG
ORIA
DIREC
CION
APP
APM
PROVEEDO
R
TELEFO
NOPRECI
O
PROPOR
SIONA
CONTI
ENE
DIREC
CION
UNIVERSIDAD TECNOLÓGICA DEL ESTADO DE ZACATECAS
UNIDAD ACADÉMICA DE PINOS
TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN
8
DIAGRAMA MODELO RELACIONAL
UNIVERSIDAD TECNOLÓGICA DEL ESTADO DE ZACATECAS
UNIDAD ACADÉMICA DE PINOS
TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN
9
DICCIONARIO DE DATOS
Nombre de la tabla: Empleados Fecha creación: 20/06/2013
Descripción:
Esta tabla almacena información de los empleados de una pizzería
Nombre Tipo Tamaño Descripción
ID
NOMBRE
APP
APM
NO_EMPLEADO
DIRECCION
TELEFONO
PEDIDO
INT
VARCHAR
VARCHAR
VARCHAR
VARCHAR
VARCHAR
INT
INT
11
50
50
50
50
50
11
11
Es la llave principal
Relaciones Campo clave
Empleados relaciona empleados ID
Nombre de la tabla: Clientes Fecha creación: 20/06/2013
Descripción:
Esta tabla almacena información de los clientes
Nombre Tipo Tamaño Descripción
ID
NOMBRE
DIRECCION
TELEFONO
PEDIDO
INT
VARCHAR
VARCHAR
INT
INT
11
50
50
11
11
Es la llave principal
Relaciones Campo clave
Titulo relaciona a ediciones Titulo
UNIVERSIDAD TECNOLÓGICA DEL ESTADO DE ZACATECAS
UNIDAD ACADÉMICA DE PINOS
TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN
10
Nombre de la tabla: Pedido Fecha creación: 20/06/2013
Descripción:
Esta tabla almacena información de los pedidos
Nombre Tipo Tamaño Descripción
FOLIO
TIPO_DE_PEDIDO
NO_PEDIDO
INT
VARCHAR
INT
11
50
11
Es la llave principal
Relaciones Campo clave
Folio relaciona pedido Titulo
Nombre de la tabla: Productos Fecha creación: 20/06/2013
Descripción:
Esta tabla almacena información de los productos que se compran en latienda
Nombre Tipo Tamaño Descripción
MARCA
CATEGORIA
PRECIO
NOMBRE
PROVEEDOR
MARCA
INT
VARCHAR
DECIMAL
VARCHAR
VARCHAR
VARCHAR
11
50
4,2
VARCHAR
VARCHAR
VARCHAR
Es la llave principal
Llave foránea
Relaciones Campo clave
Productos relacionan a contiene
Y productos relaciona a direccion
Marca
UNIVERSIDAD TECNOLÓGICA DEL ESTADO DE ZACATECAS
UNIDAD ACADÉMICA DE PINOS
TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN
11
Nombre de la tabla: Proveedor Fecha creación: 20/06/2013
Descripción:
Esta tabla almacena información de la persona que lleva los productos hasta el negocio
Nombre Tipo Tamaño Descripción
DIRECCION
TELEFONO
VARCHAR
INT
50
11
Es la llave principal
Relaciones Campo clave
Proveedor relaciona a proveedor Direccion
Nombre de la tabla: Atienden Fecha creación: 20/06/2013
Descripción:
Esta tabla almacena información de lo que realizan los empleados
Nombre Tipo Tamaño Descripción
EMPLEADOS
PEDIDO
INT
INT
50 Es la llave foránea
Es llave foranea
Relaciones Campo clave
Empleados relaciona empleados
Pedido relaciona pedido
Empleados, pedido
Nombre de la tabla: Contienen Fecha creación: 20/06/2013
Descripción:
Esta tabla almacena información de lo que contienen los pedidos.
Nombre Tipo Tamaño Descripción
PRODUCTOS
PEDIDO
INT
INT
11
11
Es la llave foránea
Llave foránea
Relaciones Campo clave
Pedido relaciona folio
Productos relaciona marca
Productos, pedido
UNIVERSIDAD TECNOLÓGICA DEL ESTADO DE ZACATECAS
UNIDAD ACADÉMICA DE PINOS
TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN
12
Nombre de la tabla: Realiza Fecha creación: 20/06/2013
Descripción:
Esta tabla almacena información de los pedidos que se realizan
Nombre Tipo Tamaño Descripción
CLIENTES
PEDIDO
INT
INT
11
11
Es la llave foránea
Llave foránea
Relaciones Campo clave
Folio relaciona pedido Clientes, pedido
UNIVERSIDAD TECNOLÓGICA DEL ESTADO DE ZACATECAS
UNIDAD ACADÉMICA DE PINOS
TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN
13
SCRIPT DE LA BASE DE DATOS
SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0;
SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS,
FOREIGN_KEY_CHECKS=0;
SET @OLD_SQL_MODE=@@SQL_MODE,
SQL_MODE='TRADITIONAL,ALLOW_INVALID_DATES';
CREATE SCHEMA IF NOT EXISTS `PIZZERIA` DEFAULT CHARACTER SET
utf8 COLLATE utf8_general_ci ;
USE `PIZZERIA` ;
-- -----------------------------------------------------
-- Table `PIZZERIA`.`EMPLEADOS`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `PIZZERIA`.`EMPLEADOS` (
`idID` INT NOT NULL ,
`NOMBRE` VARCHAR(45) NULL ,
`APP` VARCHAR(45) NULL ,
UNIVERSIDAD TECNOLÓGICA DEL ESTADO DE ZACATECAS
UNIDAD ACADÉMICA DE PINOS
TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN
14
`APM` VARCHAR(45) NULL ,
`NO_EMPLEADO` VARCHAR(45) NULL ,
`DIRECCION` VARCHAR(45) NULL ,
`TELEFONO` INT NULL ,
`PEDIDO` INT NOT NULL ,
PRIMARY KEY (`idID`) )
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `PIZZERIA`.`PROVEEDOR`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `PIZZERIA`.`PROVEEDOR` (
`idDIRECCION` VARCHAR(45) NOT NULL ,
`TELEFONO` INT NULL ,
PRIMARY KEY (`idDIRECCION`) )
ENGINE = InnoDB;
UNIVERSIDAD TECNOLÓGICA DEL ESTADO DE ZACATECAS
UNIDAD ACADÉMICA DE PINOS
TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN
15
-- -----------------------------------------------------
-- Table `PIZZERIA`.`PRODUCTOS`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `PIZZERIA`.`PRODUCTOS` (
`idMARCA` INT NOT NULL ,
`CATEGORIA` VARCHAR(45) NULL ,
`PRECIO` DECIMAL(4,2) NULL ,
`NOMBRE` VARCHAR(45) NULL ,
`PROVEEDOR` VARCHAR(45) NOT NULL ,
`MARCA` VARCHAR(45) NULL ,
PRIMARY KEY (`idMARCA`) ,
INDEX `fk_PRODUCTOS_PROVEEDOR1_idx` (`PROVEEDOR` ASC) ,
CONSTRAINT `fk_PRODUCTOS_PROVEEDOR1`
FOREIGN KEY (`PROVEEDOR` )
REFERENCES `PIZZERIA`.`PROVEEDOR` (`idDIRECCION` )
UNIVERSIDAD TECNOLÓGICA DEL ESTADO DE ZACATECAS
UNIDAD ACADÉMICA DE PINOS
TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN
16
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `PIZZERIA`.`CLIENTES`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `PIZZERIA`.`CLIENTES` (
`id ID` INT NOT NULL ,
`NOMBRE` VARCHAR(45) NULL ,
`DIRECCION` VARCHAR(45) NULL ,
`TELEFONO` INT NULL ,
`PEDIDO` INT NOT NULL ,
PRIMARY KEY (`id ID`) )
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `PIZZERIA`.`PEDIDO`
UNIVERSIDAD TECNOLÓGICA DEL ESTADO DE ZACATECAS
UNIDAD ACADÉMICA DE PINOS
TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN
17
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `PIZZERIA`.`PEDIDO` (
`id FOLIO` INT NOT NULL ,
`TIPO_DE_PEDIDO` VARCHAR(45) NULL ,
`No_PEDIDO` INT NULL ,
PRIMARY KEY (`id FOLIO`) )
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `PIZZERIA`.`ATIENDEN`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `PIZZERIA`.`ATIENDEN` (
`EMPLEADOS` INT NOT NULL ,
`PEDIDO` INT NOT NULL ,
INDEX `fk_ATIENDEN_EMPLEADOS1_idx` (`EMPLEADOS` ASC) ,
INDEX `fk_ATIENDEN_PEDIDO1_idx` (`PEDIDO` ASC) ,
UNIVERSIDAD TECNOLÓGICA DEL ESTADO DE ZACATECAS
UNIDAD ACADÉMICA DE PINOS
TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN
18
CONSTRAINT `fk_ATIENDEN_EMPLEADOS1`
FOREIGN KEY (`EMPLEADOS` )
REFERENCES `PIZZERIA`.`EMPLEADOS` (`idID` )
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_ATIENDEN_PEDIDO1`
FOREIGN KEY (`PEDIDO` )
REFERENCES `PIZZERIA`.`PEDIDO` (`id FOLIO` )
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `PIZZERIA`.`CONTIENE`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `PIZZERIA`.`CONTIENE` (
UNIVERSIDAD TECNOLÓGICA DEL ESTADO DE ZACATECAS
UNIDAD ACADÉMICA DE PINOS
TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN
19
`PRODUCTOS` INT NOT NULL ,
`PEDIDO` INT NOT NULL ,
INDEX `fk_CONTIENE_PRODUCTOS1_idx` (`PRODUCTOS` ASC) ,
INDEX `fk_CONTIENE_PEDIDO1_idx` (`PEDIDO` ASC) ,
CONSTRAINT `fk_CONTIENE_PRODUCTOS1`
FOREIGN KEY (`PRODUCTOS` )
REFERENCES `PIZZERIA`.`PRODUCTOS` (`idMARCA` )
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_CONTIENE_PEDIDO1`
FOREIGN KEY (`PEDIDO` )
REFERENCES `PIZZERIA`.`PEDIDO` (`id FOLIO` )
ON DELETE NO ACTION
ON UPDATE NO ACTION)
UNIVERSIDAD TECNOLÓGICA DEL ESTADO DE ZACATECAS
UNIDAD ACADÉMICA DE PINOS
TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN
20
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `PIZZERIA`.`REALIZA`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `PIZZERIA`.`REALIZA` (
`CLIENTES` INT NOT NULL ,
`PEDIDO` INT NOT NULL ,
INDEX `fk_REALIZA_CLIENTES1_idx` (`CLIENTES` ASC) ,
INDEX `fk_REALIZA_PEDIDO1_idx` (`PEDIDO` ASC) ,
CONSTRAINT `fk_REALIZA_CLIENTES1`
FOREIGN KEY (`CLIENTES` )
REFERENCES `PIZZERIA`.`CLIENTES` (`id ID` )
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_REALIZA_PEDIDO1`
UNIVERSIDAD TECNOLÓGICA DEL ESTADO DE ZACATECAS
UNIDAD ACADÉMICA DE PINOS
TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN
21
FOREIGN KEY (`PEDIDO` )
REFERENCES `PIZZERIA`.`PEDIDO` (`id FOLIO` )
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;
USE `PIZZERIA` ;
SET SQL_MODE=@OLD_SQL_MODE;
SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;
UNIVERSIDAD TECNOLÓGICA DEL ESTADO DE ZACATECAS
UNIDAD ACADÉMICA DE PINOS
TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN
22
CONCLUSION
Este trabajo está basado en un alto contenido de información basado en un
pequeño negocio en este caso la pizzería, ya que aunque sea un pequeño
negocio debe tener una base de datos para dar de alta o de baja los productos
que este ofrece.