Construccin
Compartir
Metadatos de la base Manipulacin
datos
de datos
Transaccio- Manteni-
Consultas Proteccin
nes miento
5
Sistemas de Base de Datos
Centralizados y Distribuidos
7
Clasificacin de Bases de Datos
Jerrquico
De Red
8
Clasificacin de Bases de Datos
Entidad-Relacin
Orientado a Objetos
9
Clasificacin de Bases de Datos
Orientado a Documentos
Multidimensional
10
Modelo Entidad Relacin
Caso de Estudio
Sistema de Gestin de Ventas y Reservas de
Entradas para un Complejo de Cines
1. Un complejo de cines est integrado por varios cines.
2. Cada cine cuenta con una cantidad de salas
3. La programacin de las funciones de las pelculas de las
salas se renueva en forma semanal.
4. No todas las salas tienen la misma capacidad.
5. La programacin es la que determina qu pelculas van a
proyectarse y los horarios para cada funcin de cada una de las
salas, para todos los cines.
6. Una entrada es vlida nicamente para la fecha, hora y funcin
indicadas en la misma.
11
Modelo Entidad Relacin
Es el elemento bsico representado por el modelo entidad relacin.
ENTIDAD
Representa una cosa del mundo real
Puede tener existencia fsica o existencia conceptual.
Cada ejemplo de la entidad se denomina instancia.
Cosas tangibles: Artculo, Repuesto, Rodado.
Ejemplos Roles desempeados por personas u organizaciones: Cliente, Proveedor.
de ENTIDAD
Incidentes: Siniestros, Anulacin de Venta
Interacciones: Representan alguna transaccin: Compra, Pedido, Venta
RESPONDER
Cules son las entidades del caso de estudio?
12
Modelo Entidad Relacin
Una entidad tiene atributos.
Un atributo es una abstraccin que identifica caractersticas, propiedades de
ATRIBUTOS una entidad.
Los atributos deben ser: completos, plenamente elaborados, mutuamente
independientes
RESPONDER
Cules son los atributos de las entidades identificadas?
13
Modelo Entidad Relacin
CLASIFICACIN Identificadores
ATRIBUTOS Descriptivos
Referenciales
14
Modelo Entidad Relacin
IDENTIFICADOR
UNICO
15
Modelo Entidad Relacin
Cada valor j es nulo del todo o no Existe una entidad A con atributo
nulo del todo. En caso de ser un identificador j tal que:
atributo compuesto, Cada valor no nulo de j es en la
formado por ms de un atributo. entidad B idntico al valor j en alguna
16
instancia de la entidad A.
Modelo Entidad Relacin
ATRIBUTO
REFERENCIAL
17
Modelo Entidad Relacin
Uno a uno
21
Modelo Entidad Relacin
OPCIONALIDAD
Muchos a muchos
Muchos a Uno
22
Modelo Entidad Relacin
OPCIONALIDAD
Muchos a muchos
Muchos a Uno
23
Base de Datos Relacional
El modelo relacional representa la base de datos como una coleccin
de relaciones.
Cada una de estas relaciones se parece a una tabla de valores.
Entidad
Instancia
24
Base de Datos Relacional
Entidad Instancia
Atributo
Identificador
25
Base de Datos Relacional
Entidad
Una relacin corresponde a lo que conocemos como tabla.
Un atributo corresponde a una columna o campo. El nmero de
atributos se denomina grado. Instancia
Una tupla corresponde a una fila o registro de esa tabla.
El nmero de tuplas de una tabla se denomina cardinalidad.
La clave primaria es un identificador nico para la tabla, es decir una
columna o combinacin de columnas con la siguiente propiedad: Atributo
Nunca existen dos filas de la tabla con el mismo valor en esa
Identificador
columna o combinacin de columnas.
Un dominio es una coleccin de valores, de los cuales uno o ms
atributos (columnas) obtienen sus valores reales.
26
Base de Datos Relacional
RELACIONES Propiedades de las Relaciones:
No existen tuplas repetidas.
Las tuplas no tienen que estar ordenadas.
Los atributos no tienen que estar ordenados.
Todos los valores de los atributos son atmicos
27
Base de Datos Relacional
REGLA DE Un atributo a (posiblemente compuesto) de la relacin
INTEGRIDAD
R es una clave candidata de R, s y solo s satisface
Clave Primaria
las siguientes propiedades:
28
Base de Datos Relacional
REGLA DE
Toda relacin tendr por fuerza una clave primaria.
INTEGRIDAD
La clave primaria es la que tiene verdadera importancia; las dems,
Clave Primaria claves candidatas y alternativas, son slo conceptos que surgen en el
proceso de decisin.
Al nombrar al atributo identificador, es conveniente hacerlo como clave
primaria, porque hay muchos tipos de claves.
29
Base de Datos Relacional
En una base de datos relacional, nunca registraremos
REGLA DE informacin de algo que no podamos identificar.
INTEGRIDAD Para las claves primarias compuestas: cada valor individual de
Relaciones la clave primaria debe ser no nulo en su totalidad.
Esta regla se aplica a las relaciones base nicamente.
Se aplica slo a las claves primarias.
31
Motores de Bases de Datos Relacionales
TRANSACCIONES
NDICES
PROCEDIMIENTOS ALMACENADOS Y
FUNCIONES
VISTAS
TRIGGERS O DISPARADORES
32
Motores de Bases de Datos Relacionales
TRANSACCIONES
Atomicidad
Consistencia
Aislamiento
Durabilidad
34
Motores de Bases de Datos Relacionales
NDICES
NDICES ORDENADOS
ndice principal o
primario: ndice agrupado:
Cuando el campo de Ordenacin fsica
Cuando el campo de ordenacin no es un
ordenacin es un campo clave.
campo clave.
ndice secundario: se
Puede tener un ndice
puede especificar principal o un agrupado
sobre cualquier campo
no ordenado de un
fichero.
36
Motores de Bases de Datos Relacionales
NDICES MULTI-NIVEL
37
Motores de Bases de Datos Relacionales
PROCEDIMIENTOS ALMACENADOS Y
FUNCIONES
Es una tabla que deriva de otras SQL brinda un mecanismo que permite
tablas. Esas otras tablas pueden ser que a partir de una accin se
tablas base o vistas definidas desencadene la ejecucin de otras
anteriormente. acciones.
Una vista no existe necesariamente TRIGGER o DISPARADOR es una
en formato fsico; est considerada accin o evento que genera que otro
como una tabla virtual. evento ocurra.
Limita las posibles operaciones de Ejemplo: Logs
actualizacin.
Sin limitacin alguna al consultar
una vista.
39
Lenguaje de Consulta SQL
40
Lenguaje de Consulta SQL
DDL
CREATE: Crea nuevas tablas, campos e ndices.
DROP: Elimina tablas e ndices.
ALTER: Modifica las tablas agregando campos o cambiando la definicin de
los campos.
DML
SELECT: Consulta registros de la base de datos que satisfagan un criterio
determinado.
INSERT: Carga lotes de datos en la base de datos en una nica operacin.
UPDATE: Modifica los valores de los campos y registros especificados.
DELETE: Elimina registros de una tabla de una base de datos.
41
Lenguaje de Consulta SQL
Create Database
DDL
CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] nombre_base_datos
Create Table
CREATE [TEMPORARY] TABLE [IF NOT EXISTS] nombre_de_tabla
nombre_de_columna tipo_de_dato [NOT NULL | NULL] [DEFAULT
valor_por_defecto]
[AUTO_INCREMENT] [UNIQUE | [PRIMARY] KEY
[CONSTRAINT [nombre_relacin] FOREIGN KEY (nombre_columna)
REFERENCES nombre_de_tabla (nombre_columna)]
[ON DELETE opciones_de_referencia]
[ON UPDATE opciones_de_referencia]
Create Index
CREATE INDEX nombre_indice
ON nombre_tabla (col_name [(length)] [ASC |
DESC])
[opcion_algoritmo | opcion_bloqueo]
42 ...
Lenguaje de Consulta SQL
DDL Alter Table
ALTER [IGNORE] TABLE nombre_tabla
ADD [COLUMN] nombre_columna columna_definicion
[FIRST | AFTER col_nombre]
| ADD [COLUMN] (nombre_columna definicin_columna)
| ADD {INDEX|KEY} [nombre_indice]
[tipo_indice] (nombre_columna_indice) [indice_opcion] ...
| ADD [CONSTRAINT] PRIMARY KEY
[indice_type] (indice_col_nombre,...) [indice_opcion] ...
| ADD [CONSTRAINT [nombre_relacin] FOREIGN KEY
(nombre_columna)
REFERENCES nombre_de_tabla (nombre_columna)]
Drop Table
DROP [TEMPORARY] TABLE [IF EXISTS]
nombre_tabla [,nombre_tabla] ...
43
Lenguaje de Consulta SQL
SELECT <lista de atributos>
DML
SELECT FROM <lista de tablas>
WHERE <condicin>;
44
Lenguaje de Consulta SQL
DML
Consulta multi-tablas.
45
Lenguaje de Consulta SQL
DML
Consulta multi-tablas Abreviacin del nombre de la
tabla.
DML
Subconsultas
Una subconsulta es una consulta anidada en una
instruccin SELECT, INSERT, UPDATE o DELETE,
o bien en otra subconsulta.
47
Lenguaje de Consulta SQL
DML
Subconsultas
Operadores para Subconsultas
49
Lenguaje de Consulta SQL
DML
INSERT
INSERT INTO nombre_tabla
INSERT INTO pelicula (columna1, columna2,
VALUES (2, 2014, true, 122, columna3,...)
01/08/2014, "Relatos Salvajes", VALUES (valor, valor2,
"Relatos Salvajes",1) valor3,...);
50
Seguridad
Temas de
Niveles de
polticas a nivel
Aspectos Temas relativos seguridad y
gubernamental,
legales y ticos al sistema. acceso a datos
institucional o
segn nivel.
de empresa.
Amenazas
Prdida de Prdida de
Prdida de integridad.
disponibilidad. confidencialidad
51
Administracin de cuentas de usuario en
MySQL
53
ORM
54