Integridad Referencial. Restricciones (constraints)

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Integridad Referencial. Restricciones (constraints)"

Transcripción

1 Integridad Referencial Restricciones (constraints)

2 Integridad de Referencial Integridad referencial: asegura la integridad entre las llaves foráneas y primarias (relaciones padre/hijo). Existen cuatro actualizaciones de la base de datos que pueden corromper la integridad referencial:

3 Integridad de Referencial Error 1 La inserción de una fila hijo se produce cuando no coincide la llave foránea con la llave primaria del padre.

4 Integridad de Referencial Error 2 La actualización en la llave foránea de la fila hijo, donde se produce una actualización en la clave ajena de la fila hijo con una sentencia UPDATE y la misma no coincide con ninguna llave primaria.

5 Integridad de Referencial Error 3 La supresión de una fila padre, con la que, si una fila padre -que tiene uno o más hijos- se suprime, las filas hijos quedarán huérfanas.

6 Integridad de Referencial Error 4 La actualización de la clave primaria de una fila padre, donde si en una fila padre, que tiene uno o más hijos se actualiza su llave primaria, las filas hijos quedarán huérfanas.

7 Restricciones (constraints) InnoDB también soporta restricciones de claves foráneas. La sintaxis para definir una restricción de clave foránea en InnoDB es así: [CONSTRAINT símbolo] FOREIGN KEY [id] (nombre_índice,...) REFERENCES nombre_de_tabla (nombre_índice,...) [ON DELETE {RESTRICT CASCADE SET NULL NO ACTION}] [ON UPDATE {RESTRICT CASCADE SET NULL NO ACTION}]

8 Limitaciones Ambas tablas deben ser InnoDB y no deben ser tablas temporales. En la tabla que hace referencia, debe haber un índice donde las columnas de clave extranjera estén listadas en primer lugar, en el mismo orden. No están soportados los índices prefijados en columnas de claves foráneas. Una consecuencia de esto es que las columnas BLOB y TEXT no pueden incluirse en una clave foránea, porque los índices sobre dichas columnas siempre deben incluir una longitud prefijada. Si se proporciona un CONSTRAINTsímbolo, éste debe ser único en la base de datos. Si no se suministra, InnoDB crea el nombre automáticamente.

9 Acciones InnoDB rechaza cualquier operación INSERT o UPDATE que intente crear un valor de clave foránea en una tabla hija sin un valor de clave candidata coincidente en la tabla padre. La acción que InnoDB lleva a cabo para cualquier operación UPDATE o DELETE que intente actualizar o borrar un valor de clave candidata en la tabla padre que tenga filas coincidentes en la tabla hija depende de la accion referencial especificada utilizando las subcláusulas ON UPDATE y ON DETETE en la cláusula FOREIGN KEY.

10 Acciones Cuando el usuario intenta borrar o actualizar una fila de una tabla padre, InnoDB soporta cinco acciones respecto a la acción a tomar: CASCADE: Borra o actualiza el registro en la tabla padre y automáticamente borra o actualiza los registros coincidentes en la tabla hija. Tanto ON DELETE CASCADE como ON UPDATE CASCADE están disponibles en MySQL 5.0. Entre dos tablas, no se deberían definir varias cláusulas ON UPDATE CASCADE que actúen en la misma columna en la tabla padre o hija. SET NULL: Borra o actualiza el registro en la tabla padre y establece en NULL la o las columnas de clave foránea en la tabla hija. Esto solamente es válido si las columnas de clave foránea no han sido definidas como NOT NULL. MySQL 5.0 soporta tanto ON DELETE SET NULL como ON UPDATE SET NULL.

11 Acciones NO ACTION: En el estándar ANSI SQL-92, NO ACTION significa ninguna acción en el sentido de que unintento de borrar o actualizar un valor de clave primaria no sera permitido si en la tabla referenciada hay una valor de clave foránea relacionado. (Gruber, Mastering SQL, 2000:181). En MySQL 5.0, InnoDB rechaza la operación de eliminación o actualización en la tabla padre. RESTRICT: Rechaza la operación de eliminación o actualización en la tabla padre. NO ACTION y RESTRICT son similares en tanto omiten la cláusula ON DELETE u ON UPDATE. (Algunos sistemas de bases de datos tienen verificaciones diferidas o retrasadas, una de las cuales es NO ACTION. En MySQL, las restricciones de claves foráneas se verifican inmediatamente, por eso, NO ACTION y RESTRICT son equivalentes.) SET DEFAULT: Esta acción es reconocida por el procesador de sentencias (parser), pero InnoDB rechaza definiciones de tablas que contengan ON DELETE SET DEFAULT u ON UPDATE SET DEFAULT.

12 Agregando constrains posteriormente En ocasiones tenemos una tabla que queremos agregarle un constraint una sobre una tabla ya existente: ALTER TABLE nombre_tabla ADD [CONSTRAINT nombre_restriccion] FOREIGN KEY (columna) REFERENCES tabla_referenciada (indice_tabla) [ON DELETE {RESTRICT CASCADE SET NULL NO ACTION}] [ON UPDATE {RESTRICT CASCADE SET NULL NO ACTION}]

13 Ejemplo Imagine la base de datos de un negocio en donde existen las tablas clientes y ventas como se muestran a continuación: CREATE TABLE clientes ( id INT NOT NULL, nombre VARCHAR(30), PRIMARY KEY (id) ) TYPE = INNODB; CREATE TABLE ventas ( id_factura INT NOT NULL, id_cliente INT NOT NULL, cantidad INT, PRIMARY KEY(id_factura), INDEX (id_cliente) ) TYPE = INNODB;

14 Ejemplo Ahora vamos a agregar una restricción que impida agregar una venta si no existe el cliente correspondiente, que haga NULL el campo id_cliente en caso que se llegara a borrar el cliente en cuestión y que actualice los indices en caso que sea modificado el id del cliente: ALTER TABLE ventas ADD CONSTRAINT ventas_clientes FOREIGN KEY(id_cliente) REFERENCES clientes(id) ON UPDATE CASCADE ON DELETE SET NULL;

15 Ejemplo 2 Ahora imagine que tiene las tablas productos y categorias la cual es una relación de muchos a muchos, es decir un producto puede pertenecer a varias categorías y una categoría puede pertenecer a varios productos, por lo cual necesitamos una tabla intermedia categorias_productos: CREATE TABLE categorias ( id int(4) not null primary key, name VARCHAR(255) default null ); CREATE TABLE productos ( id int(4) not null primary key, name VARCHAR(255) default null );

16 Ejemplo 2 En casos generales de las relaciones de muchos a muchos las restricciones se colocan siempre en la tabla intermedia en este caso categorias_productos como se muestra a continuación: CREATE TABLE categorias_productos ( categoria_id int(4) not null, producto_id int(4) not null, PRIMARY KEY (producto_id, categoria_id), FOREIGN KEY (categoria_id) REFERENCES categorias (id) ON DELETE CASCADE ON UPDATE CASCADE, FOREIGN KEY (producto_id) REFERENCES productos (id) ON DELETE CASCADE ON UPDATE CASCADE );

17 Bibliografía: Clave foránea: Definición de clave foránea y ejemplos en sql, disponible en: Definicion de Restricciones (constraints foreign key): Implementación de claves foráneas en mysql, definición y ejemplos:

Manejo de Tablas y Llaves Foráneas

Manejo de Tablas y Llaves Foráneas Manejo de Tablas y Llaves Foráneas Llaves Foráneas Para manejar las llaves foráneas, deben crearse al menos dos tablas, la primera tal y como se ha hecho anteriormente CREATE TABLE nombre_tabla ( nombre_columna_1

Más detalles

Restricciones (constraints) FOREIGN KEY

Restricciones (constraints) FOREIGN KEY INSTITUTO DE EDUCACION TECNICA PROFESIONAL INTEP 1 Restricciones (constraints) FOREIGN KEY InnoDB también soporta restricciones de claves foráneas. La sintaxis para definir una restricción de clave foránea

Más detalles

SQL: Lenguaje de definición de datos (DDL) (*) DBMS: DATA BASE MANAGEMENT SYSTEM. SGBD: SISTEMAS GESTOR DE BASE DE DATOS

SQL: Lenguaje de definición de datos (DDL) (*) DBMS: DATA BASE MANAGEMENT SYSTEM. SGBD: SISTEMAS GESTOR DE BASE DE DATOS SQL: Lenguaje de definición de datos (DDL) (*) DBMS: DATA BASE MANAGEMENT SYSTEM. SGBD: SISTEMAS GESTOR DE BASE DE DATOS Objetivos Enseñar al alumno las sentencias que forman el lenguaje de definición

Más detalles

Base de Datos Práctica 1.

Base de Datos Práctica 1. Base de Datos Práctica 1. Objetivo: Introducción al Mysql, aprender a identificar los errores más comunes en la creación de las bases de datos para su solución, conocer los diferentes tipos de datos y

Más detalles

Tema 5. Lenguaje de Definición de Datos

Tema 5. Lenguaje de Definición de Datos Tema 5 Lenguaje de Definición de Datos Índice Tema 5 1. Creación de tablas. Restricciones 2. Consultas de creación de tablas. 3. Modificación de la estructura de una tabla. 4. Borrado de tablas. 5. Creación

Más detalles

Curso 1º SMR Módulo: AO Actividades 3 (2) Bases de datos:creamos Foreing Keys en BASE

Curso 1º SMR Módulo: AO Actividades 3 (2) Bases de datos:creamos Foreing Keys en BASE Curso 1º SMR Módulo: AO Actividades 3 (2) Bases de datos:creamos Foreing Keys en BASE Qué pretendemos conseguir? Ser capaces de crear Foreing Keys mediante la opción Relaciones. Ser capaces de crear Foreing

Más detalles

Tipos de datos en SQL. SQL. DDL (Data Definition Language) CREATE DOMAIN CREATE TABLE CREATE TABLE. CREATE TABLE con restricciones de atributo

Tipos de datos en SQL. SQL. DDL (Data Definition Language) CREATE DOMAIN CREATE TABLE CREATE TABLE. CREATE TABLE con restricciones de atributo SQL. DDL (Data Definition Language) BASES DE DATOS (I.T.I. Gestión) Tipo boolean character Bit Numéricos Tipos de datos en SQL Declaración estándar Declaración en ORACLE BOOLEAN CHAR (longitud) char(longitud),

Más detalles

Guía N 5 Tema: Consultas de manipulación de datos

Guía N 5 Tema: Consultas de manipulación de datos Facultad: Ingeniería Escuela: Computación Asignatura: Modelamiento y diseño de base de datos Guía N 5 Tema: Consultas de manipulación de datos I. Objetivos Que el estudiante sea capaz de: 1. Agregar información

Más detalles

Carlos A. Olarte Ligaduras de Integridad y Restricciones sobre la BD

Carlos A. Olarte Ligaduras de Integridad y Restricciones sobre la BD Ligaduras de Integridad y Restricciones sobre la BD Outline 1 Introducción 2 Ligaduras de Dominio 3 Llaves Primarias 4 Llaves de Unicidad 5 Integridad Referencial Introducción y Motivación Por qué se deben

Más detalles

Unidad III. Bases de Datos

Unidad III. Bases de Datos Clase:11 1 Unidad III Bases de Datos 2 SQL. Comandos de DDL. Comandos de DML. Agenda 3 SQL Structured Query Language SQL Los comandos del SQL pueden dividirse en tres grupos: Comandos de definición de

Más detalles

1.4 Creación del esquema de una Base de Datos

1.4 Creación del esquema de una Base de Datos Las instrucciones que conoceremos forman parte del Núcleo de SQL estándar (en realidad son instrucciones DDL pero es una error histórico decir que pertenecen a SQL). Puede verificar que cumplan con el

Más detalles

Integridad referencial en MySQL

Integridad referencial en MySQL Integridad referencial en MySQL MySQL 4.0 soporta cinco tipos de tablas: MyISAM, ISAM, HEAP, BDB (Base de datos Berkeley), e InnoDB. BDB e InnoDB son ambas tipos de tablas transaccionales. Además de poder

Más detalles

Introducción a phpmyadmin

Introducción a phpmyadmin Introducción a phpmyadmin, ejercicio http://idesweb.es/ 1 Introducción a phpmyadmin El propósito del siguiente ejercicio es replicar, más o menos, la base de datos utilizada en los videos de introducción

Más detalles

SQL - DDL y consultas de actualización. José Muñoz Jimeno Febrero 2015

SQL - DDL y consultas de actualización. José Muñoz Jimeno Febrero 2015 SQL - DDL y consultas de actualización José Muñoz Jimeno Febrero 2015 Control de cambios Versión Fecha Comentarios 1.0 13/02/2015 Primera versión para el curso Introducción a las bases de datos con MySQL

Más detalles

Introducción a SQL (DDL)

Introducción a SQL (DDL) Introducción a SQL (DDL) Grupo de Ingeniería del Software y Bases de Datos Departamento de Lenguajes y Sistemas Informáticos Universidad de Sevilla noviembre 2012 Introducción a SQL Objetivos de este tema

Más detalles

T07 Opciones de integridad referencial

T07 Opciones de integridad referencial 1 de 9 17/05/2013 13:48 Lecciones SQL > T07 Opciones de integridad referencial Contenidos 1 Las opciones para mantener la integridad Las opciones para mantener la integridad referencial 2 On delete referencial

Más detalles

ÍNDICE. Introducción... Capítulo 1. Características, instalación, inicio y entorno de trabajo... 1

ÍNDICE. Introducción... Capítulo 1. Características, instalación, inicio y entorno de trabajo... 1 ÍNDICE Introducción... XI Capítulo 1. Características, instalación, inicio y entorno de trabajo... 1 Características y novedades de Access 2010... 1 Comienzo rápido del trabajo y seguimiento de la información...

Más detalles

GBD Diseño físico de DDBB

GBD Diseño físico de DDBB GBD Diseño físico de DDBB Mª Carmen Gabarrón Manual SQL de Oracle 10g http://download.oracle.com/docs/cd/b19306_01/server.102/b14200/index.htm SQL SQL es el lenguaje de consulta universal para bases de

Más detalles

GUÍA DE TRABAJO N 5 GRADO 11 Programación y Diseño de Articulación SENA Software Ing. Néstor Raúl Suarez Perpiñan Página 1 de 6

GUÍA DE TRABAJO N 5 GRADO 11 Programación y Diseño de Articulación SENA Software Ing. Néstor Raúl Suarez Perpiñan Página 1 de 6 Página 1 de 6 GUIA N 5 LINEA DE COMANDOS MYSQL I. CREAR, SELECCIONAR, VISUALIZAR 1. CREAR BASE DE DATOS CREATE DATABASE Nombre_Base_Datos; 2. VER LISTADO DE BASES DE DATOS SHOW DATABASES; 3. USAR UNA BASE

Más detalles

MATERIAL SOBRE SENTENCIAS SQL

MATERIAL SOBRE SENTENCIAS SQL MATERIAL SOBRE SENTENCIAS SQL Retomado este esquema Relacional obtenido en el ejemplo de normalización): EDITOR Editor_Nombre, Editor_Direccion, Editor_Telefono ) LIBRO Libro_ID, Titulo, Editor_Nombre

Más detalles

GUÍA DE TRABAJO N 7 GRADO 11. Ing. Néstor Raúl Suarez Perpiñan Página 1 de 6 GUIA N 7 COMANDOS MYSQL II. CREAR UNA TABLA

GUÍA DE TRABAJO N 7 GRADO 11. Ing. Néstor Raúl Suarez Perpiñan Página 1 de 6 GUIA N 7 COMANDOS MYSQL II. CREAR UNA TABLA Página 1 de 6 GUIA N 7 COMANDOS MYSQL I. CREAR, SELECCIONAR, VISUALIZAR 1. CREAR BASE DE DATOS CREATE DATABASE Nombre_Base_Datos; 2. VER LISTADO DE BASES DE DATOS SHOW DATABASES; 3. USAR UNA BASE DE DATOS

Más detalles

Examen de las unidades 2 y 3 IES Celia Viñas (Almería) /2018. Nombre y apellidos: Nota:

Examen de las unidades 2 y 3 IES Celia Viñas (Almería) /2018. Nombre y apellidos: Nota: Nombre y apellidos: Nota: 1 Teoría (2 puntos) 1. El lenguaje SQL se divide en tres partes DDL, DML y DCL. Defina brevemente en qué consiste cada una de las partes. 2. Define para qué sirven las siguientes

Más detalles

Fundamentos de Bases de Datos Facultad de Ciencias UNAM

Fundamentos de Bases de Datos Facultad de Ciencias UNAM Fundamentos de Bases de Datos Facultad de Ciencias UNAM M.I. Gerardo Avilés Rosas gar@ciencias.unam.mx Laboratorio: L en C.C. Erick Orlando Matla Cruz ematla@ciencias.unam.mx Práctica 07 Desarrollo Hasta

Más detalles

INFORMÁTICA MÉDICA. Profesor: MsC. Liz Armenteros Chávez

INFORMÁTICA MÉDICA. Profesor: MsC. Liz Armenteros Chávez INFORMÁTICA MÉDICA Profesor: MsC. Liz Armenteros Chávez Tema No.2: Gestión de la Información Biomédica Conferencia No.3 DDL (Data Definition Language) Lenguaje de definición de datos Marzo, 2014 Definir

Más detalles

Práctica 3: El lenguaje SQL (2ª parte). (6ª sesión).

Práctica 3: El lenguaje SQL (2ª parte). (6ª sesión). Práctica 3: El lenguaje SQL (2ª parte). (6ª sesión). Programa de prácticas: Práctica 1. Introducción al uso de una BD relacional (ACCESS). Práctica 2. Representación de la realidad en el modelo relacional

Más detalles

- 1 - Mg. Abril Saire Peralta

- 1 - Mg. Abril Saire Peralta MYSQL LENGUAJE DE DEFINICIÓN DE DATOS (LDD) Permite definir la estructura y relaciones entre los objetos de la base de datos. Define el esquema interno de la base de datos a través de los siguientes comandos:

Más detalles

TEMA 4: EL MODELO RELACIONAL. ESTÁTICA

TEMA 4: EL MODELO RELACIONAL. ESTÁTICA TEMA 4: EL MODELO RELACIONAL. ESTÁTICA 1.- HISTORIA Y OBJETIVOS DEL MODELO En 1970, E.F. Codd 1 propone un modelo de datos basado en la teoría de las relaciones, donde los datos se estructuran lógicamente

Más detalles

3- Uso de índices y relaciones de tablas

3- Uso de índices y relaciones de tablas 3- Uso de índices y relaciones de tablas Objetivos: Crear indicies y manejar la restricciones de estos Recursos: SQL SERVER 2012 Guías de práctica. Introducción: Para el manejo de bases de datos relacionales

Más detalles

BASE DE DATOS - CURSO 02/03 PRÁCTICA 2: SQL: Lenguaje de definición de datos (DDL)

BASE DE DATOS - CURSO 02/03 PRÁCTICA 2: SQL: Lenguaje de definición de datos (DDL) OBJETIVOS: Enseñar al alumno las sentencias que forman el lenguaje de definición de datos de SQL, es decir, el subconjunto de órdenes que nos permitirán crear o editar esquemas de bases de datos. MATERIAL:

Más detalles

Modelo Relacional. El modelo relacional...1 El modelo entidad relación (que vimos ayer) es un modelo conceptual que sirve

Modelo Relacional. El modelo relacional...1 El modelo entidad relación (que vimos ayer) es un modelo conceptual que sirve Juan Luis Mora Blanco. El modelo Relacional 1 Modelo Relacional El modelo relacional El modelo relacional...1 El modelo entidad relación (que vimos ayer) es un modelo conceptual que sirve Conceptos...1

Más detalles

Una tabla está en 5ta. Forma normal (5FN) o Forma Normal de Proyección-unión si está en 4FN y las únicas dependencias que existen son las

Una tabla está en 5ta. Forma normal (5FN) o Forma Normal de Proyección-unión si está en 4FN y las únicas dependencias que existen son las 5ta. Forma normal Una tabla está en 5ta. Forma normal (5FN) o Forma Normal de Proyección-unión si está en 4FN y las únicas dependencias que existen son las dependencias de unión de una tabla con sus proyecciones

Más detalles

SQL Sintaxis. Ejemplo de Alumno, Curso, Profesor. Esquemas de Alumno, Curso, Profesor. Andrés Moreno S.

SQL Sintaxis. Ejemplo de Alumno, Curso, Profesor. Esquemas de Alumno, Curso, Profesor. Andrés Moreno S. SQL Sintaxis Andrés Moreno S. 1 Ejemplo de Alumno, Curso, Profesor RutAlumno Nombre Apellido Carrera Alumno Apellido2 Créditos SiglaCurso Toma Curso Dicta NomProfesor Profesor ApellidoP Apellido2P NombreCurso

Más detalles

CREACIÓN, SUPRESIÓN Y MODIFICACIÓN DE TABLAS.

CREACIÓN, SUPRESIÓN Y MODIFICACIÓN DE TABLAS. CREACIÓN, SUPRESIÓN Y MODIFICACIÓN DE TABLAS. Para crear una tabla utilizamos el lenguaje DDL. El nombre de la tabla puede tener entre 1 y 30 caracteres y no puede ser una palabra reservada de oracle y

Más detalles

Computación Web (Curso 2015/2016)

Computación Web (Curso 2015/2016) Bases de Datos (II) Computación Web (Curso 2015/2016) Jesús Arias Fisteus // jaf@it.uc3m.es Bases de Datos (II) p. 1 Consultas OUTER JOIN Una limitación de las consultas INNER JOIN es que requieren que

Más detalles

Fundamentos de Bases de Datos. Práctica 8.

Fundamentos de Bases de Datos. Práctica 8. Fundamentos de Bases de Datos. Práctica 8. Profesor: M.I. Gerardo Avilés Rosas gar@ciencias.unam.mx Laboratorio: Carlos Augusto Escalona Navarro caen@ciencias.unam.mx 8 de octubre de 2018 Se dan a conocer

Más detalles

SQL Sintaxis. OpenOffice. Ejemplo de Alumno, Curso, Profesor. Ejemplo de Alumno, Curso, Profesor. Andrés Moreno S. Nombre. Apellido. RutAlumno.

SQL Sintaxis. OpenOffice. Ejemplo de Alumno, Curso, Profesor. Ejemplo de Alumno, Curso, Profesor. Andrés Moreno S. Nombre. Apellido. RutAlumno. SQL Sintaxis OpenOffice Andrés Moreno S. 1 Ejemplo de Alumno, Curso, Profesor RutAlumno Carrera Nombre Alumno Apellido Apellido2 Créditos SiglaCurso Toma Curso Dicta NomProfesor Profesor ApellidoP Apellido2P

Más detalles

Desarrollo Web en Entorno Servidor

Desarrollo Web en Entorno Servidor Desarrollo Web en Entorno Servidor Tema 7. Apuntes sobre MySql y otros SGBD. 1. Conectar con la base de datos. 2. Sentencias de definición de datos (DDL): 3. Sentencias de control de trabajos (DCL). 4.

Más detalles

El lenguaje SQL III: Creación de bases de datos y seguridad. Introducción

El lenguaje SQL III: Creación de bases de datos y seguridad. Introducción Introducción La estructura de la base de datos se maneja mediante las sentencias denominadas lenguaje de definición de datos El lenguaje de definición de datos permite: Definir y crear nuevas tablas: CREATE

Más detalles

Práctica 3: Lenguaje SQL 2ª Parte: Definición de datos. Objetivos

Práctica 3: Lenguaje SQL 2ª Parte: Definición de datos. Objetivos Práctica 3: Lenguaje SQL 2ª Parte: Definición de datos Objetivos Presentar la sintaxis de creación de tablas Diferencia con SQL/92 Presentar la sintaxis de la modificación de definición de una tabla Presentar

Más detalles

Implementación de la integridad de datos

Implementación de la integridad de datos Implementación de la integridad de datos Introducción Tipos de integridad de datos Exigir la integridad de los datos Definición de restricciones Tipos de restricciones Deshabilitación de restricciones

Más detalles

INTEGRIDAD REFERENCIAL

INTEGRIDAD REFERENCIAL INTEGRIDAD REFERENCIAL Las restricciones de integridad proporcionan un medio de asegurar que las modificaciones hechas a la base de datos por los usuarios autorizados no provoquen la pérdida de la consistencia

Más detalles

Computación Web (Curso 2013/2014)

Computación Web (Curso 2013/2014) Bases de Datos (II) Computación Web (Curso 2013/2014) Jesús Arias Fisteus // jaf@it.uc3m.es Bases de Datos (II) p. 1 Consultas OUTER JOIN Una limitación de las consultas INNER JOIN es que requieren que

Más detalles

EJEMPLOS PRÁCTICOS SQL

EJEMPLOS PRÁCTICOS SQL EJEMPLOS PRÁCTICOS SQL EJEMPLOS PRÁCTICOS SQL INTEGRIDAD REFERENCIAL DROP SCHEMA IF EXISTS Tablas1; CREATE SCHEMA Tablas1; USE Tablas1; create table Cliente( Dni VARCHAR(10), Nombre VARCHAR(10), Apellido

Más detalles

Ing. Yim Isaias Apestegui Florentino

Ing. Yim Isaias Apestegui Florentino Definicion de Modelo Relacional El Modelo Relacional Se basa en una representación del mundo real en que los datos se describen como entidades, relaciones y atributos. El principal concepto del modelo

Más detalles

Acceso a bases de datos MySQL con PHP

Acceso a bases de datos MySQL con PHP GESTIÓN Y ADMINISTRACIÓN WEB Acceso a bases de datos MySQL con PHP Ing. CIP Fabián Silva Alvarado fsilvasys@hotmail.com DEFINICIÓN DE BASE DE DATOS Base de Datos es un conjunto de datos relacionados entre

Más detalles

Manejo de Tablas y Llaves Sencillas

Manejo de Tablas y Llaves Sencillas Manejo de Tablas y Llaves Sencillas El Motor de Almacenamiento El motor de almacenamiento (storage-engine) se encarga de almacenar, manejar y recuperar información de una tabla. Los motores más conocidos

Más detalles

Objetos de Bases de Datos

Objetos de Bases de Datos Objetos de Bases de Datos La base de datos Oracle puede contener múltiples estructuras de datos. Cada estructura debe ser esbozada en el diseño de base de datos de manera que pueda ser creada durante la

Más detalles

Ejercicios SQL - Definición de Datos - Solución

Ejercicios SQL - Definición de Datos - Solución Ejercicios SQL - Definición de Datos - Solución Ejercicio 1: Disponemos de la siguiente Base de Datos para gestionar la información de los pubs de una determinada provincia. PUB TITULAR EMPLEADO #COD_PUB

Más detalles

6.1. Introducción. Guía 5. SQL.

6.1. Introducción. Guía 5. SQL. 6.1. Introducción. Guía 5. SQL. 1 6.2. Lenguaje de Definición de Datos (Data Definition Language DDL-). 2 3 4 5 -------------------------------------------------------------------------------------------------------------------------

Más detalles

Para el siguiente trabajo utilizamos IBM Data Studio Version Un ABM completo de una tabla. 1.a) Alta de una sucursal.

Para el siguiente trabajo utilizamos IBM Data Studio Version Un ABM completo de una tabla. 1.a) Alta de una sucursal. Indice 1. Un ABM completo de una tabla.... 3 1.a) Alta de una sucursal.... 3 1.b) Baja de una sucursal.... 6 1.c) Modificar una sucursal.... 10 Editor de Mandatos para ejecutar los Store Procedure antes

Más detalles

Sistemas de Bases de Datos II ITS / ITSB EMT CETP

Sistemas de Bases de Datos II ITS / ITSB EMT CETP Administración de Datos D. M. L. Data Manipulation Language Administración de Datos D. M. L. Data Manipulation Language Lenguaje de Manipulación de Datos. Administración de Datos Los comandos son los siguientes:

Más detalles

Claves, Constraints y References. Ing. Gustavo Delgado

Claves, Constraints y References. Ing. Gustavo Delgado Claves, Constraints y References Ing. Gustavo Delgado Clave Primaria Dept_tab Tabla de departamentos Deptno Código del departamento, que debe ser único (regla de negocio) ALTER TABLE Dept_tab ADD PRIMARY

Más detalles

Triggers 24/12/2016. Escuela Técnica Superior de Ingeniería Informática Departamento de Lenguajes y Sistemas Informáticos. Triggers en Oracle

Triggers 24/12/2016. Escuela Técnica Superior de Ingeniería Informática Departamento de Lenguajes y Sistemas Informáticos. Triggers en Oracle Triggers en Oracle Grupo de Ingeniería del Software y Bases de Datos Universidad de Sevilla Diciembre 2016 Introducción Objetivos de la práctica Conocer qué son los y para qué se utilizan Aprender a construir

Más detalles

A. Introducción. B. Los DATABASES TRIGGERS. PL/SQL en objetos de la base de datos. Oracle 11g - SQL, PL/SQL, SQL*Plus 271

A. Introducción. B. Los DATABASES TRIGGERS. PL/SQL en objetos de la base de datos. Oracle 11g - SQL, PL/SQL, SQL*Plus 271 PL/SQL en objetos de la base de datos A. Introducción Además de los bloques PL/SQL anónimos utilizados por SQL*PLus o por las herramientas de desarrollo (Oracle*FORMS, Oracle*Reports), se puede emplear

Más detalles

TRANSACT-SQL, DISEÑO Y PROGRAMACIÓN DE BASES DE DATOS EN SQL SERVER 2008

TRANSACT-SQL, DISEÑO Y PROGRAMACIÓN DE BASES DE DATOS EN SQL SERVER 2008 TRANSACT-SQL, DISEÑO Y PROGRAMACIÓN DE BASES DE DATOS EN SQL SERVER 2008 ESTRUCTURA DEL SEMINARIO Modulo 1: Crear y administrar una base de datos SQL Server Métodos para crear una base de datos SQLServer.

Más detalles

m047a Curso Programando una Base de Datos SQL Server 2008, 36 h Creación B.D. y Constraints

m047a Curso Programando una Base de Datos SQL Server 2008, 36 h Creación B.D. y Constraints Crear Una Base De Datos (L12) A TRAVÉS DE LA CONSOLA DE ADMINISTRACIÓN A TRAVÉS DEL ASISTENTE DE BASES DE DATOS (DATABASE WIZARD) A TRAVÉS DE COMANDOS SQL (CREATE DATABASE, CREATE TABLE) Crear Un Grupo

Más detalles

Base de Datos LSI y PI Lic. Paola Daniela Budán Lic. Federico Rosenzvaig

Base de Datos LSI y PI Lic. Paola Daniela Budán Lic. Federico Rosenzvaig Base de Datos LSI y PI Lic. Paola Daniela Budán Lic. Federico Rosenzvaig Motores de Bases de Datos MySQL (Oracle) SQL Server (Microsoft) PostgreSQL Oracle (Oracle) DB2 (IBM) Informix (IBM) Instalación

Más detalles

ÍNDICE. Introducción... Capítulo 1. Novedades de Access 2013... 1

ÍNDICE. Introducción... Capítulo 1. Novedades de Access 2013... 1 Introducción... XIII Capítulo 1. Novedades de Access 2013... 1 Nuevas posibilidades de cifrado, compactación y reparación de archivos... 1 Trabajo en la nube... 2 Compartir la información... 3 Guardar

Más detalles

1. Primero abrimos el aplicativo pgadmin con el cual manejaremos la base de datos de Postgres.

1. Primero abrimos el aplicativo pgadmin con el cual manejaremos la base de datos de Postgres. CREACION DE BASE DE DATOS EN POSTGRESQL 1. Primero abrimos el aplicativo pgadmin con el cual manejaremos la base de datos de Postgres. Pasos: inicio Todos los programas PostgreSQL 8.2 o la versión 9 (o

Más detalles

TEMA 6: LENGUAJE DE DEFINICIÓN DE DATOS (LDD)

TEMA 6: LENGUAJE DE DEFINICIÓN DE DATOS (LDD) TEMA 6: LENGUAJE DE DEFINICIÓN DE DATOS (LDD 6.1 Introducción Hasta ahora hemos estudiado las sentencias que forman parte del DML (Data Management Language lenguaje de manipulación de datos, todas esas

Más detalles

Práctica A: Implementación de la integridad de datos

Práctica A: Implementación de la integridad de datos Implementación de la integridad de datos 1 Práctica A: Implementación de la integridad de datos Objetivos Después de realizar esta práctica, el alumno será capaz de: Definir y utilizar las restricciones

Más detalles

Bases de Datos SQL 1 SQL. Jorge Pérez R. Universidad de Talca, II Semestre 2006

Bases de Datos SQL 1 SQL. Jorge Pérez R. Universidad de Talca, II Semestre 2006 Bases de Datos SQL 1 SQL Jorge Pérez R. Universidad de Talca, II Semestre 2006 Bases de Datos SQL 2 Structured Query Language Lenguaje de consulta para bases de datos comerciales. Originalmente llamado

Más detalles

TEMA 22: LENGUAJES DE MANIPULACIÓN Y DEFINICIÓN DE DATOS.

TEMA 22: LENGUAJES DE MANIPULACIÓN Y DEFINICIÓN DE DATOS. TEMA 22: LENGUAJES DE MANIPULACIÓN Y DEFINICIÓN DE DATOS. 22.1. Introducción Un lenguaje de Manipulación de Datos (Data Manipulation Languaje (DML)) es un lenguaje proporcionado por el sistema de gestión

Más detalles

RESUMEN DEL LENGUAJE SQL

RESUMEN DEL LENGUAJE SQL RESUMEN DEL LENGUAJE SQL AUTORÍA JOSEFA PÉREZ DOMINGUEZ TEMÁTICA INFORMATICA ETAPA CICLO FORMATIVO DE GRADO SUPERIOR Y MEDIO DE INFORMATICA Resumen Con esta publicación muestra un resumen de la sintaxis

Más detalles

GESTORES GESTORES DE BASES DE DATOS

GESTORES GESTORES DE BASES DE DATOS GESTORES GESTORES DE BASES DE DATOS Existen varios tipos de Sistemas gestores de bases de datos SGBD, según el modelo de datos que utilizan. Son estos: bases jerárquica, en red, relacional, y bases de

Más detalles

Bases de datos relacionales y SQL

Bases de datos relacionales y SQL Bases de datos relacionales y SQL Jesús Arias Fisteus Aplicaciones Web (2016/17) Aplicaciones Web (2016/17) Bases de datos relacionales y SQL 1 Parte I Introducción a las bases de datos relacionales Aplicaciones

Más detalles

El Lenguaje SQL TEMA V. Grupo de Bas ses de Datos Avanzadas Univ. Carlo os III de Madrid. V.1 SQL como Lenguaje de Definición de Datos

El Lenguaje SQL TEMA V. Grupo de Bas ses de Datos Avanzadas Univ. Carlo os III de Madrid. V.1 SQL como Lenguaje de Definición de Datos Grupo de Bases de Datos Avanzadas Univ. Carlos III de Madrid Índice V.1 Introducción V.1 SQL como Lenguaje de V.1.1 Definición del esquema V.1.2 Evolución del esquema V.2 SQL como Lenguaje de Manipulación

Más detalles

Unidad6. Diseño físico de datos

Unidad6. Diseño físico de datos 1. Crea la tabla provincias con los siguientes campos Cod_provi de tipo number2 y es la clave primaria Nombre de tipo varchar225, es obligatorio Pais de tipo varchar225 debe ser uno de los siguientes España,

Más detalles

Diseñar la base de datos biblioteca Soluciones:

Diseñar la base de datos biblioteca Soluciones: Diseñar la base de datos biblioteca Soluciones: EN PRIMER LUGAR, CREAMOS LA BASE DE DATOS BIBLIOTECA: create database Biblioteca; 1.- Crea la tabla editorial. create table Editorial( claveeditorial smallint

Más detalles

1. Lenguaje de Definición de Datos. 2. Lenguaje de Manipulación de. Datos. M. C. Gustavo Alfonso Gutiérrez Carreón

1. Lenguaje de Definición de Datos. 2. Lenguaje de Manipulación de. Datos. M. C. Gustavo Alfonso Gutiérrez Carreón 1. Lenguaje de Definición de Datos 2. Lenguaje de Manipulación de Datos M. C. Gustavo Alfonso Gutiérrez Carreón Los 'sistemas de gestión de bases de datos (en inglés database management system, abreviado

Más detalles

INTRODUCCIÓN A LAS BASES DE DATOS. L.I Gerardo Benavides Pérez

INTRODUCCIÓN A LAS BASES DE DATOS. L.I Gerardo Benavides Pérez INTRODUCCIÓN A LAS BASES DE DATOS L.I Gerardo Benavides Pérez SISTEMA GESTOR DE BASE DE DATOS Un sistema gestor de bases de datos (SGBD) consiste en una colección de datos interrelacionados y un conjunto

Más detalles

Tema II: El modelo relacional de datos Objetivos:

Tema II: El modelo relacional de datos Objetivos: Tema II: El Lenguaje Estándar SQL (2.5) El modelo relacional de datos Objetivos: conocer las estructuras de datos del modelo: la tupla y la relación conocer básicamente la forma de modelar la realidad

Más detalles

Modificar estructura Se pueden agregar/quitar campos a una tabla, modificar el tipo de un campo, agregar/quitar índices a una tabla, etc.

Modificar estructura Se pueden agregar/quitar campos a una tabla, modificar el tipo de un campo, agregar/quitar índices a una tabla, etc. EL lenguaje SQL(Structured Query Language) El Lenguaje de Consulta Estructurado (Structured Query Language) es unlenguaje de acceso a bases de datos relacionales que permite especificar diversos tipos

Más detalles

SUBCONSULTAS SQL. Cuando se ejecuta una consulta que contiene una subconsulta, la subconsulta se ejecuta por cada fila de la consulta principal.

SUBCONSULTAS SQL. Cuando se ejecuta una consulta que contiene una subconsulta, la subconsulta se ejecuta por cada fila de la consulta principal. SUBCONSULTAS SQL DEFINICION. Una subconsulta es una sentencia SELECT que aparece dentro de otra sentencia SELECT que llamaremos consulta principal. Se puede encontrar en la lista de selección, en la cláusula

Más detalles

T06 Definición y manipulación de datos

T06 Definición y manipulación de datos 1 de 19 17/05/2013 13:46 Lecciones SQL > T06 Definición y manipulación de datos Imprimir Definición de datos Create table La definición de tablas es el primer paso en la creación de una base de datos.

Más detalles

PL/SQL avanzado: Secuencias, triggers, cursores y subprogramas

PL/SQL avanzado: Secuencias, triggers, cursores y subprogramas avanzado 22/11/2016 avanzado: Secuencias, triggers, cursores y subprogramas Grupo de Ingeniería del Software y Bases de Datos Departamento de Lenguajes y Sistemas Informáticos Universidad de Sevilla Noviembre

Más detalles

Modelo Relacional Larry Ellison:

Modelo Relacional Larry Ellison: Historia Ted Codd 1970: Modelo Relacional. IBM : Rufus, System R. SEQUEL. QUEL. Larry Ellison: SDL producto ORACLE version 2. Portabilidad. Ingres, Informix, Sysbase,Dec, Tandem. Cliente/Servidor (Sysbase)

Más detalles

Bases de Datos Relacionales y SQL: Una Introducción

Bases de Datos Relacionales y SQL: Una Introducción 1 Bases de Datos Relacionales y SQL: Una Introducción Protein Design Group, CNB CSIC 2 Sumario Qué es un SGBDR? Usuarios de base de datos Tablas: creación y definición de restricciones Manipulación de

Más detalles

Manual de Sentencias Básicas en SQL

Manual de Sentencias Básicas en SQL Manual de Sentencias Básicas en SQL Pues hoy que he estado enredando un rato con MySQl, y me he acordado de aquellos comienzos en los que tenía que volver a mis antiguos apuntes para lograr entender las

Más detalles

Constraints (Restricciones) Copyright Oracle Corporation, 1998. All rights reserved.

Constraints (Restricciones) Copyright Oracle Corporation, 1998. All rights reserved. 11 Constraints (Restricciones) Copyright Oracle Corporation, 1998. All rights reserved. Objetivos Al completar esta lección, debería a ser capaz de hacer lo siguiente: Describir constraints Crear y mantener

Más detalles

Tema 1. Introducción a MySQL. José Muñoz Jimeno Octubre 2015

Tema 1. Introducción a MySQL. José Muñoz Jimeno Octubre 2015 Tema 1. Introducción a MySQL José Muñoz Jimeno Octubre 2015 Control de cambios Versión Fecha Comentarios 1.0 21/05/2015 Primera versión para el curso Introducción a la administración de MySQL en el COITCV

Más detalles

Integridad de datos. Integridad de entidad Integridad de dominio Integridad referencial Integridad definida por el usuario

Integridad de datos. Integridad de entidad Integridad de dominio Integridad referencial Integridad definida por el usuario Laexigenciadeintegridaddelosdatosgarantizalacalidaddelosdatosdelabasede datos. Por ejemplo, si se especifica para un empleado el valor de identificador de 123, la base de datos no debe permitir que ningún

Más detalles

EJERCICIOS DE CONSULTAS SQL

EJERCICIOS DE CONSULTAS SQL Profesor: Ing. Christian Ovalle 1.-Realizar todo las sentencias en SQL EJERCICIOS DE CONSULTAS SQL 2.-Guardar en formato TXT y enviar al correo del profesor: vbnetperu@gmail.com Creamos la base de datos

Más detalles

ISC. Taller de Base de Datos. Alumno: D O C E N T E L.I. JOSE HERNANDEZ RODRIGUEZ

ISC. Taller de Base de Datos. Alumno: D O C E N T E L.I. JOSE HERNANDEZ RODRIGUEZ ISC Taller de Base de Datos Alumno: D O C E N T E L.I. JOSE HERNANDEZ RODRIGUEZ Aportación de la asignatura al perfil del egresado Utiliza un sistema de base de datos (DBMS) comercial. Objetivo general

Más detalles

BASES de DATOS ÁCTIVAS

BASES de DATOS ÁCTIVAS BASES de DATOS ÁCTIVAS Bibliografía Piattini & Díaz (2000). Advanced Database Technology and Design. Capt. 3 Elmasri & Navathe (2000). Fundamentals of DBS, Capt. 23.1 Garcia-Molina, Ullman & Widom 2002.

Más detalles

BASES DE DATOS ACTIVAS

BASES DE DATOS ACTIVAS BASES DE DATOS ACTIVAS Bibliografía Piattini & Díaz (2000). Advanced Database Technology and Design. Capt. 3 Elmasri & Navathe (2000). Fundamentals of DBS, Capt. 23.1 Garcia-Molina, Ullman & Widom 2002.

Más detalles

Un proyecto de IBM llamado Sistem/R construye un prototipo simple llamado SQUARE que después se transformó en SQL.

Un proyecto de IBM llamado Sistem/R construye un prototipo simple llamado SQUARE que después se transformó en SQL. CONTENIDO: 1. Lenguaje SQL 1. Componentes 2. Comandos 3. Clausulas 4. Operadores lógicos 5. Operadores de comparación 6. Funciones de agregado 2. MYSQL 1. Como entrar a MySQL 2. Comandos generales 3. Sintaxis

Más detalles

Lenguaje para descripción de datos

Lenguaje para descripción de datos Amparo López Gaona tación Fac. Ciencias, UNAM Mayo 2012 Definición de Datos El lenguaje para definición de datos permite especificar: Esquema de cada relación. El dominio de cada atributo. Restricciones

Más detalles

Diseño de bases de datos

Diseño de bases de datos Departamento de Lenguajes y Sistemas Informáticos E.T.S. Ingeniería Informática. Universidad de Sevilla Avda Reina Mercedes s/n. 41012 Sevilla Tlf/Fax 954 557 139 E-mail lsi@lsi.us.es Web www.lsi.us.es

Más detalles

Tablas -SQL Curso Bases de Datos. Por Elizabeth León Guzmán, Ph.D. Profesora Ingeniería de Sistemas Grupo de Investigación MIDAS

Tablas -SQL Curso Bases de Datos. Por Elizabeth León Guzmán, Ph.D. Profesora Ingeniería de Sistemas Grupo de Investigación MIDAS Tablas -SQL Curso Bases de Datos Por Elizabeth León Guzmán, Ph.D. Profesora Ingeniería de Sistemas Grupo de Investigación MIDAS SQL (Structured Query Language) SQL lenguaje usado para definir, manipular,

Más detalles

SQL SQL. Índice. Componentes. Objetivos

SQL SQL. Índice. Componentes. Objetivos Estándar En 1986, ANSI (American National Standard Institute) definión un estándar para (Structured Query Language) que fue posteriormente adoptado en 1987 como estándar internacional por ISO (International

Más detalles

Restricciones de Integridad

Restricciones de Integridad Restricciones de Integridad Amparo López Gaona México, D.F. Semestre 2000-I Restricciones de Integridad Las principales restricciones de integridad que pueden indicarse son: La clave primaria. Claves candidatas.

Más detalles

Tutorial MySql - 1 -

Tutorial MySql - 1 - Tutorial MySql - 1 - Índice 1 - Introducción...4 2 - show databases...5 3 - Creación de una tabla y mostrar sus campos (create table - show tables - describe - drop table)...6 4 - Carga de registros a

Más detalles

INTRODUCCIÓN CAPÍTULO 1. ENTORNO DE TRABAJO...

INTRODUCCIÓN CAPÍTULO 1. ENTORNO DE TRABAJO... ÍNDICE INTRODUCCIÓN... 13 CAPÍTULO 1. ENTORNO DE TRABAJO... 15 1.1 INICIO Y ELEMENTOS DEL ENTORNO... 15 1.1.1 Cinta de opciones de Access 2010... 17 1.1.2 Ficha Inicio... 20 1.1.3 Ficha Crear... 26 1.1.4

Más detalles

DISPARADORES EN SQL DISPARADORES EN SQL:1999 SINTAXIS GENERAL DE UN DISPARADOR EN SQL:1999 SINTAXIS GENERAL DE UN DISPARADOR EN SQL:1999

DISPARADORES EN SQL DISPARADORES EN SQL:1999 SINTAXIS GENERAL DE UN DISPARADOR EN SQL:1999 SINTAXIS GENERAL DE UN DISPARADOR EN SQL:1999 DISPARADORES EN SQL:1999 DISPARADORES EN SQL Modelos Avanzados de Bases de Datos Un (trigger) es un procedimiento especial que se ejecuta en respuesta a un evento específico. Ej. Al aumentar el sueldo

Más detalles

Bases de datos relacionales y SQL

Bases de datos relacionales y SQL Bases de datos relacionales y SQL Jesús Arias Fisteus Aplicaciones Web (2017/18) Aplicaciones Web (2017/18) Bases de datos relacionales y SQL 1 Parte I Introducción a las bases de datos relacionales Aplicaciones

Más detalles

Diseño de bases de datos Práctica-1 Definición de datos

Diseño de bases de datos Práctica-1 Definición de datos Departamento de Lenguajes y Sistemas Informáticos Avda Reina Mercedes s/n. 41012 Sevilla Tlf/Fax 954 557 139 E-mail lsi@lsi.us.es www.lsi.us.es E.T.S. Ingeniería Informática Diseño de bases de datos Práctica-1

Más detalles

Conceptos de Bases de Datos Relacionales Triggers

Conceptos de Bases de Datos Relacionales Triggers Conceptos de Bases de Datos Relacionales Triggers Trigger Un trigger es un procedimiento almacenado asociado con una tabla, el cual se ejecuta automáticamente cuando se modifica un dato de esa tabla Stored

Más detalles