06 SQL
1
SQL. Orígenes y Evolución
16:05:37
Óscar Marbá
Marbán Gallego
2
SQL: Estándar oficial
16:05:37
Óscar Marbá
Marbán Gallego
3
Funciones de SQL
DDL – Data Definition Language
Creación de estructuras de la base de datos
Integridad de los datos
DML – Data Manipulation Language
Recuperación de datos
Manipulación de datos
DCL – Data Control Language
16:05:37
Controlde acceso
Compartición de datos
Óscar Marbá
Marbán Gallego
4
Roles de SQL
1/30/2006
Herramientas
de programación
1/30/2006
Subtitle
Formularios
SQL
Informes
SQL
Herramientas
de consulta
Programa de
aplicación
Cliente de la
Base de
Datos
SQL
SQL
SQL
Motor de base de datos
Base de Datos
Gateway
Sistemas
Informáticos
Otros SGBD
Base datos
16:05:37
Óscar Marbá
Marbán Gallego
5Invocación de SQL
Invocación directa o interactiva
La sentencia es invocada desde el terminal
Los datos devueltos se presentan en pantalla
El resultado puede ser
Un valor
Una lista de valores
Una tabla
Vacío
Invocación desde programa
16:05:37
La sentencia se invoca como parte de la ejecución del programa
Los datos devueltos se recogen en una área de entrada del
programa
Óscar MarbáMarbán Gallego
6
Ventajas de SQL
Independencia de los fabricantes
Portabilidad a cualquier tipo de plataforma
SQL está estandarizado
Basado en el modelo relacional
Lenguaje de alto nivel
Consultas interactivas ad-hoc
Utilización en Lenguaje de programación
Múltiples vistas de los datos
Lenguaje de base de datos
Definición dinámica de datos
Arquitectura cliente/servidor
16:05:37
Óscar MarbáMarbán Gallego
7
Tipos de datos
CHARACTER (n)
CHARACTER VARYING(n)
BIT(n)
BIT VARYING(n)
INTEGER
SMALLINT
NUMERIC(p,q)
DECIMAL(p, q)
FLOAT(p)
Date: YYYY-MM-DD
16:05:37
Time: HH:MM:SS
Time(i): i+1 posiciones para
fracciones de segundo.
Time with time zone:
desplazamiento con respecto
a la hora universal.
Timestamp: incluye día y
hora.
Interval: un intervalo que se
puede usar para incrementar odecrementar valores.
Óscar Marbá
Marbán Gallego
8
Creación de dominios
Los dominios se pueden utilizar como tipos de datos
Permite cambiar el tipo simultáneamente a varios
atributos
CREATE DOMAIN dominio [AS] tipo-datos
[DEFAULT valor_defecto]
[CHECK condicion]
CREATE DOMAIN ciudades AS
CHAR(15) DEFAULT ‘???’
16:05:37
Óscar Marbá
Marbán Gallego
9
Operadores
Comparación
=, <>, <, >, <=,>=, IS NULL
Lógicos
AND, OR, NOT
Intervalos
BETWEEN … AND …
BETWEEN 90 AND 95
Cadenas de texto
LIKE
nombre LIKE ‘%mou%’
Conjuntos
IN
color IN (‘Color’, ‘PAL-Color’)
16:05:37
Óscar Marbá
Marbán Gallego
10
Creación de tablas
Se utiliza el comando CREATE TABLE
Se especifican los atributos de la relación y sus
tipos
Se especifica la clave primaria
Se especifica las restricciones deintegridad
Se especifica la integridad referencial
16:05:37
Óscar Marbá
Marbán Gallego
11
CREATE TABLE nombre_tabla (
nombre_columna tipo_columna restricciones_columna,
…,
restricciones_tabla
)
Al crear la tabla se puede indicar el esquema en el que se crea
nombre_esquema.nombre_tabla
Restricciones de columna
16:05:37
UNIQUE
NOT NULL
DEFAULT
CHECK(condicion)
PRIMARY KEY
REFERENCES nombre_tabla(nombre_atributo) accion_referencial
Óscar Marbá
Marbán Gallego
12
Restricciones de tabla
UNIQUE (nombre_atributo, …)
PRIMARY KEY (nombre_atributo, …)
FOREIGN KEY (nombre_atributo, …) REFERENCES
nombre_tabla(nombre_atributo) accion_referencial
CHECK (condicion)
Acciones referenciales
CASCADE
ON UPDATE acción
ON DELETE acción
RESTRICTSET NULL
SET DEFAULT valor
Si no se especifica nada, se considera RESTRICT
16:05:37
Óscar Marbá
Marbán Gallego
13
Ejemplo
Pelicula
Actor
nombre
direccion
sexo
fecha nacimiento
protagoniza
titulo
año
numero (FK)
duracion
color
nombre (FK)
Estudio
se rueda
nombre
direccion
produce
Productora
numero
nombre
direccion
presupuesto
Película(titulo, año, duración, en_color, nombre_estudio,...
Regístrate para leer el documento completo.