Bases de Datos I. Cursada Clase 3: Restricciones de Integridad (de tablas y generales)

Save this PDF as:
 WORD  PNG  TXT  JPG

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

Download "Bases de Datos I. Cursada 2008. Clase 3: Restricciones de Integridad (de tablas y generales)"

Transcripción

1 Bases de Datos I Cursada 2008 Clase 3: Restricciones de Integridad (de tablas y generales) Facultad de Ciencias Exactas Universidad Nac. Centro de la Pcia. de Bs. As. RESTRICCIONES DE INTEGRIDAD (RI) Una RI describe condiciones que toda instancia legal de una relación debe cumplir descripción de estados correctos en tiempo de diseño Actualizaciones que violen una RI deben ser rechazadas. Pueden utilizarse para: Asegurar la semántica de una aplicación (ej. DNI identifica a una persona, es clave) Prevenir las inconsistencias (ej. edad < 100; NombreCarrera debe ser una hilera de caracteres) RESTRICCIONES DE INTEGRIDAD (RI) Tipos de RI s: Inherentes: clave primaria, clave extranjera. Clasificación: de dominio (DOMAIN) de tabla asociada a atributos (CHECK) de tabla asociada a tuplas (CHECK) generales de la base de datos (ASSERTION) 1

2 RESTRICCIONES DE DOMINIO (ejemplo) CREATE DOMAIN ColorArcoIris AS char(15) DEFAULT desconocido CONSTRAINT color-usado CHECK (VALUE IN ( rojo, amarillo, azul, naranja, índigo, violeta, verde )); CREATE TABLE Pintura ( PintId INTEGER, ColorPint ColorArcoIris, NroCatalogo INTEGER, Precio FLOAT, Descuento FLOAT, Caracteristica CHAR(30),, PRIMARY KEY (PintId), ); DOMINIO SQL INTEGRIDAD REFERENCIAL Claves extranjeras cláusula FOREIGN KEY como parte de CREATE TABLE NbreTabla sintaxis: CREATE TABLE NbreTabla [, FOREIGN KEY (ListaNbreColumna) REFERENCES NbreTablaReferenciada [(ListaNbreColReferenciada)] [ MATCH {FULL PARTIAL SIMPLE}] [ ON DELETE { NO ACTION RESTRICT CASCADE SET NULL SET DEFAULT}] [ ON UPDATE { NO ACTION RESTRICT CASCADE SET NULL SET DEFAULT}] [, FOREIGN KEY...]]); Formalmente: NbreTabla[ListaNbreColumna]<< NbreTablaReferenciada[ListaNbreColReferenciada]:(AccRefBaja, AccRefModifDer) SQL INTEGRIDAD REFERENCIAL ListaNbreColumna es una lista de atributos que se corresponden con una clave (primaria o alternativa) de la tabla referenciada No se requiere igualdad de nombres, pero sí compatibilidad de dominios En caso de ambigüedad debe indicarse explícitamente las columnas referenciadas Si la clave extranjera tiene un único dominio, puede especificarse directamente en la definición de la columna con la cláusula REFERENCES NbreTablaReferenciada 2

3 DE TABLA ASOCIADA A ATRIBUTOS CHECK seguido de una cláusula WHERE (predicado) Habitualmente representa una restricción sobre los valores que puede tomar un atributo Se activa siempre que la tabla modifique los atributos de la restricción o ante inserciones. Su incumplimiento promueve el rechazo de la operación DE TABLA ASOCIADA A ATRIBUTOS check (P), donde P es un predicado, que puede ser: Comparación simple operadores relacionales Sueldo>0 Rango BETWEEN, NOT BETWEEN (incluye los extremos del rango) exp BETWEEN exp1 AND exp2 exp1<=exp<=exp2 exp NOT BETWEEN exp1 AND exp2 exp1> exp AND exp>exp2 CantMaterias BETWEEN 0 AND 45 Membresía o pertenencia IN, NOT IN Lista explícita NomCarrera IN ( Sistemas, Fisica, Matematica ) Lista implícita NomCarrera IN (<columna seleccionada de otra tabla>) Test de Nulidad IS NULL, IS NOT NULL exp IS NOT NULL NOT (exp IS NULL) FechaCreacion IS NULL RESTRICCIONES DE INTEGRIDAD (RI) CREATE DOMAIN ColorArcoIris CHAR (11) DEFAULT desconocido CONSTRAINT color-usado CHECK (VALUE IN ( rojo, amarillo, azul, naranja, índigo, violeta, verde )); DOMINIO CREATE TABLE Pintura ( PintId INTEGER, ColorPint ColorArcoIris, NroCatalogo INTEGER CHECK (NroCatalogo >= 1 AND NroCatalogo <= 1000), Precio FLOAT, Descuento FLOAT, DE TABLA-ATRIBUTO Caracteristica CHAR(30),,(1) PRIMARY KEY (PintId), ); 3

4 DE TABLA ASOCIADA A ATRIBUTOS Semejanza de Patrones LIKE, NOT LIKE % secuencia de 0 ó más caracteres; _ cualquier carácter simple (NOT) LIKE s% cualquier cadena que empiece con s NOT LIKE %s cualquier cadena que no termine con s LIKE s cualquier cadena de 3 caracteres comenzando con s (NOT) LIKE %RA% cadena que contenga RA en cualquier parte la cláusula WHERE puede ser otra arbitraria, inclusive puede referirse a atributos extraídos de otra tabla (subconsultas) esta flexibilidad promueve efectos indeseados!! AND, OR, NOT se utilizan para concatenar predicados RI: PROBLEMAS CON SUBCONSULTAS Ejemplos:... Salario Decimal (7,2) CHECK (Salario <= (SELECT MAX(Salario) FROM Empleado WHERE Tarea = manager ));.. NbreProd CHAR(30) CHECK (NbreProd IN SELECT Producto.Nbre FROM Producto); Los CHECKs están correctamente declarados pero estas restricciones sólo se verifican cuando se modifica una tupla si el salario de un manager es modificado en Empleado, o si se suprime/modifica un producto en Producto, se obtendrá un estado inconsistente. DE TABLA BASADAS EN TUPLAS Permiten definir restricciones sobre las tuplas de una tabla En la sentencia CREATE TABLE tabla o en sentencia aparte CHECK seguido de una cláusula WHERE cualquiera Si la condición es intrincada preferible definir una restricción general Se activa con cada actualización e inserción Su violación promueve el rechazo de la operación Puede incluir subconsultas a otras tablas esta flexibilidad puede promover estados inconsistentes inadvertidos!! 4

5 RI: PROBLEMAS CON SUBCONSULTAS Ejemplo:...CHECK (Tarea NOT LIKE %manager% OR Categoria NOT IN (SELECT Cat FROM C)); La subconsulta se refiere a otra tabla La restricción se verifica cuando se actualiza la tabla a la que está asociada si se actualiza C, la restricción no se activa!! Existen otras facilidades SQL específicas que permiten definir estas reglas correctamente, evitando estados potencialmente inconsistentes. GLOBALES A LA BASE DE DATOS Permiten definir restricciones sobre un número arbitrario de atributos de un número arbitrario de tablas Sentencia CREATE ASSERTION NombreAserción CHECK (condición); No están asociadas a ningún elemento de esquema (tabla o dominio) son elementos de esquema (metadatos) Se activa con cada actualización e inserción sobre las tablas involucradas Su violación promueve el rechazo de la operación RESTRICCIONES DE INTEGRIDAD (RI) ALTER TABLE Pintura ADD CONSTRAINT Promo CHECK ((Precio > 40 AND Descuento > 0 ) OR (Precio <=40 AND Descuento = 0)); CHECK ( ); puede ser intercalada en (1) DE TABLA-TUPLA CREATE ASSERTION PinturaFresca CHECK (NOT EXISTS (SELECT * FROM Pintura P, PintorPintura PP WHERE P.PintId=PP.PintId AND P.Característica = No seca AND PP.Prefiere = si )); GLOBAL-BD 5

6 RESTRICCIONES DE INTEGRIDAD (RI) TIPO DE RESTRICCIÓN DONDE SE DECLARA CUÁNDO SE ACTIVA SE GARANTIZA SATISFACCIÓN? DE DOMINIO Declaración especial (create domain) Cuando se actualiza un atributo asociado o se inserta una tupla (sólo p. la tupla nueva) Si hay subconsultas NO DE ATRIBUTO Con el atributo (check) Cuando se actualiza un atributo asociado o se inserta una tupla (sólo p. la tupla nueva) Si hay subconsultas NO DE TUPLA (HORIZONTAL) Elemento de esquema de relación (check) Cuando se actualiza o se inserta una tupla (sólo p. la tupla nueva) Si hay subconsultas NO DE TUPLA (VERTICAL) Elemento de esquema de la BD (assertion) * Cuando se actualizan los elementos asociados (costo) SI GLOBAL DE BASE DE DATOS Elemento de esquema de la BD (assertion) Cuando se actualizan los elementos asociados (costo) SI * Por su estructura arbitraria, habitualmente implementada de esta forma. Conceptualmente podría ser materializada como elemento de esquema de relación. RI: EVALUACIÓN Una restricción es violada por un estado de la base de datos si la condición evalúa en Falso Una restricción que evalúa en Verdadero o Desconocido (por aparición de valores nulos) no es violada Cuando se produce la violación de una restricción se cancela la ejecución de la sentencia rollback (no quedan efectos parciales de su ejecución) TRIGGERS: UNA MANERA DE ESPECIFICAR REGLAS DE INTEGRIDAD Trigger (disparador): pieza de código almacenada que se invoca automáticamente en presencia de un evento. Habitualmente el evento es una operación de actualización sobre la base de datos. Puede ser de otro tipo (una marca de tiempo, etc.) Estructura ECA: Evento (activa el trigger) Condición (testea si el trigger debe ser ejecutado) Acción (lo que el procedimiento realiza) Herramienta útil para escribir aserciones, restricciones complejas y/acciones de reparación. 6

7 TRIGGERS y CONSTRAINTS Una restricción (constraint) es un vínculo entre elementos dato, que se especifica para que el DBMS se ocupe de forzarla. Ejemplo: restricción de clave. Triggers son ejecutados solamente cuando ocurre un evento especificado, por ejemplo una manipulación de datos. Es código más fácil de implementar que muchas restricciones de estructura intrincada en lenguaje declarativo. TRIGGERS: motivación Los checks basados en atributos y en columnas (tablas) tienen una capacidad de expresión limitada. Los DBMSs implementan versiones reducidas del estándar SQL:1999. Las assertions son suficientemente generales para la mayoría de las aplicaciones de restricciones, pero son difíciles de implementar eficientemente Los DBMSs deberían incorporar cierto tipo de inteligencia para evitar chequear aserciones que no serán violadas por la manipulación de datos. TRIGGERS: aplicaciones Acciones centralizadas definidas en un estilo no declarativo. Un trigger es un procedimiento almacenado que es ejecutado implícitamente (disparado) cuando se produce un INSERT, UPDATE, o DELETE sobre la tabla a la que está asociado. Los Triggers fueron usados inicialmente para tareas tales como: Mantener datos derivados (por ej. el presupuesto global de cada departamento). Replicar parcialmente las BD, registrando los cambios (se llamaron relaciones delta), manejando procesos separados que aplicaban los cambios a cada réplica. 7

8 TRIGGERS: aplicaciones Los triggers pueden ser utilizados para: Generar datos automáticamente Forzar reglas de integridad complejas Forzar chequeos de seguridad complejos Forzar reglas del negocio complejas Mantener ciertas vistas actualizadas (cuando el DBMS no provee capacidades para hacerlo vía vistas materializables) Registrar acciones a tomar en el futuro (alertas) Realizar auditoría de las acciones de la base de datos Propagar actualizaciones Soportar semántica propia de las aplicaciones TRIGGERS: reglas ECA Evento: sentencia o situación que dispara su ejecución Condición: una restricción o condición que debe evaluar en VERDADERO, para que el trigger se ejecute. Si evalúa en FALSO o DESCONOCIDO no se ejecuta. Acción: el procedimiento que contiene las sentencias SQL a ser ejecutadas. TRIGGERS: sintaxis SQL:1999 CREATE TRIGGER [nombre del trigger] BEFORE AFTER tiempo de activación INSERT DELETE UPDATE <OF [nombres de columna separadas por coma] > evento ON [nombre tabla] <REFERENCING OLD NEW <ROW TABLE> <AS> alias > <FOR EACH ROW FOR EACH STATEMENT> granularidad <WHEN (predicado)> condición BEGIN ATOMIC [2 ó más sentencias SQL] END sentencia SQL aislada; cuerpo o acción En las sentencias SQL del cuerpo del trigger, NEW y OLD (y sus alias) se refieren al nuevo (viejo) registro (o tabla). < > representa parámetro opcional DROP TRIGGER [nombre trigger] 8

9 TRIGGERS: tiempo de activación AFTER BEFORE después o antes de ejecutar la sentencia disparadora. Recientemente INSTEAD OF si la relación es una vista, para ejecutar sus actualizaciones y propagar adecuadamente las modificaciones a las tablas base. Generalmente, es imposible modificar una vista, porque no existe!!. Los triggers INSTEAD OF permiten interpretar las modificaciones, de manera semánticamente correcta. TRIGGERS: granularidad Los triggers pueden ser a nivel row (fila) o sentencia (statement). Por defecto FOR EACH STATEMENT. Triggers a nivel fila se ejecutan una vez por cada tupla modificada. Triggers a nivel sentencia se ejecutan una vez por cada sentencia SQL, independientemente de la cantidad de tuplas que ésta modifique. TRIGGERS: referencias Las sentencias INSERT implican una nueva tupla (para triggers de fila) o un nuevo conjunto de tuplas (para triggers de sentencia). DELETE implica una tupla o tabla vieja. UPDATE implica ambas cosas. Corresponde referirse a estos elementos como: [NEW OLD] [TUPLE TABLE] AS <nombre alias> 9

10 TRIGGERS: condición Cualquier expresión booleana. Se evalúa antes o después del evento disparador, según se haya indicado BEFORE o AFTER. Accede a la nueva/vieja tupla (o conjunto de tuplas) mediante los nombres establecidos en la cláusula REFERENCING. Debe evaluar en VERDADERO para promover la ejecución de la acción. TRIGGERS: acción Puede ser una sentencia SQL o bien una pieza de código más extensa, escrita en el lenguaje de Persistent Stored Modules (PSM), que puede contener sentencias SQL empotradas. Utilizar BEGIN... END si no es una sentencia SQL aislada. Si los triggers son BEFORE, no debería contener sentencias de actualización en el cuerpo, pues esto puede disparar nuevos triggers BEFORE cuyas acciones van quedando pendientes. TRIGGERS: mantenimiento de integridad Ejemplo, para mantenimiento de integridad: create trigger <nombre> after <modificación crítica de la BD> when <restricción de integridad es violada> <acción (es)> La acción puede ser el rechazo rollback de la transacción (acción pasiva), u operaciones de reparación (acción activa) 10

11 TRIGGERS: mantenimiento de integridad Dada una relación R, la idea es que el DBMS mantenga 4 relaciones transitorias (tablas de transición) para R mientras se ejecuta la transacción T. Rdeleted tuplas borradas de R por T Rinserted tuplas insertadas en R por T Rupdated old valores viejos de las tuplas actualizadas por T Rupdated new valores nuevos de las tuplas actualizadas por T Rnueva, obtenida luego de T es: Rnueva = R Rdeleted Rinserted Rupdated old Rupdated new. Mediante estas tablas el proceso de verificación de integridad es optimizado. TRIGGERS: mantenimiento de integridad Supuesto: Antes de T, todas las restricciones de integridad se satisfacían. Ejemplo: Sea la restricción Cada producto debe ser provisto por al menos un proveedor. Existe una relación N:N entre PRODUCTO y PROVEEDOR Operaciones críticas insert en PRODUCTOS, delete en OFRECE y update en OFRECE y PRODUCTOS Es necesario verificar solamente los productos insertados por T. Tuplas en PRODUCTOSinserted (análogamente para DELETE en OFRECE) TRIGGERS: ejemplo Actualiza la conformación de grupos de proyecto. CREATE TRIGGER modificar_alum AFTER UPDATE OF cod_grupo ON Alumno REFERENCING OLD AS v_alum NEW AS n_alum FOR EACH ROW BEGIN ATOMIC (UPDATE Grupo SET num_alums = num_alums + 1 WHERE Grupo.cod_grupo=n_alum.cod_grupo); (UPDATE Grupo SET num_alums = num_alums - 1 WHERE Grupo.cod_grupo=v_alum.cod_grupo); END; 11

12 TRIGGERS: Ejemplo Asegura que el salario de un empleado nunca se reduzca: CREATE TRIGGER salario_no_se_reduce AFTER UPDATE OF salario ON empleado REFERENCING OLD AS viejo_empleado REFERENCING NEW AS nuevo_empleado FOR EACH ROW WHEN (viejo_empleado.salario > nuevo_empleado.salario) BEGIN ATOMIC SIGNAL 1000 ( Problema!! Intenta reducir el salario de un empleado!'); END; TRIGGERS SQL statement UPDATE T1 SET ; Activa UPDATE-T1 Útiles para definir operatividad en una BD Su uso excesivo puede provocar interdependencias complejas, difíciles de mantener en una aplicación. Ej.: cuando se activa un trigger, una sentencia SQL en su acción puede activar otros triggers cascading. UPDATE_T1 Trigger BEFORE UPDATE ON T1 FOR EACH ROW BEGIN... INSERT INTO t2 VALUES (...);... END; Activa INSERT-T2 INSERT_T2 Trigger BEFORE UPDATE ON T2 FOR EACH ROW BEGIN... INSERT INTO... VALUES (...);... END; TRIGGERS y Restricciones declarativas Triggers permiten definir y forzar reglas de integridad, pero no son una restricción de integridad. Un trigger definido para forzar una regla de integridad NO verifica su cumplimiento para los datos ya almacenados en la base de datos. Los triggers deberían usarse, sólo Cuando una regla de integridad no puede ser expresada mediante: NOT NULL, UNIQUE key, PRIMARY KEY, FOREIGN KEY, CHECK, update CASCADE, update and delete SET NULL, update and delete SET DEFAULT Cuando se requiere forzar integridad referencial entre tablas de distintos nodos en una BD distribuida. Para forzar restricciones complejas del negocio que no pueden definirse usando restricciones de integridad 12

13 TRIGGERS: Modelo de ejecución SQL: Ejecuta todos los triggers BEFORE-statement. 2. Realiza un ciclo por todas las filas afectadas por la sentencia SQL. a. Ejecuta todos los triggers BEFORE-row. b. Bloquea y cambia cada fila y ejecuta los chequeos de integridad. (El bloqueo no se levanta hasta que la transacción termina) c. Ejecuta todos los triggers AFTER-row. 3. Completa las acciones correspondientes a la verificación diferida de integridad expresada declarativamente. 4. Ejecuta todos los triggers AFTER-statement. TRIGGERS: Modelo de ejecución SQL:1999 Extraído de: Semantic Integrity Support in SQL-99 and Commercial (Object-)Relational Database Management Systems Can Türker y Michael Gertz publications/#2000 TRIGGERS: Características Si varios se activan al mismo tiempo, su orden de ejecución depende del orden de creación. Oracle n eventos/trigger n triggers/evento row/statement Before/after Condición DB2 UDB 1 evento/trigger n triggers/evento row/statement Before/after Condición Propuesta incorporada al estándar SQL:

14 PROS: TRIGGERS: Pros y Cons Factoriza la lógica compartida de las aplicaciones y reglas del negocio menor redundancia Amplía la capacidad de expresión de restricciones, más allá de las declarativas. CONS: Mayor complejidad al trasladar funcionalidad de las aplicaciones a la BD complica el diseño Funcionalidad oculta efectos colaterales inesperados (x ej. Cascading) Sobrecarga detección del conjunto de triggers a ser activados ante un evento. Conjunto reducido de eventos (operaciones básicas) Implementación diferente en distintos DBMSs difícil portabilidad Comportamiento impredecible por su ejecución intercalada con restr. declarativas en distintos DBMSs Dificultades para interpretar su interacción con otras aplicaciones TRIGGERS: Pros y Cons Para entender el comportamiento TERMINACIÓN garantiza que el conjunto de triggers terminará después de un conjunto de cambios número máximo de triggers activados anidadamente y modos de acoplamiento en la finalización CONFLUENCIA El estado final de una BD al terminar la ejecución, no debería depender del orden de activación de los triggers si se pudiese construir un grafo de activación éste debería tener sólo un estado final orden de activación lo vuelve determinístico 14

Tema 1. Bases de datos activas

Tema 1. Bases de datos activas Tema 1. Bases de datos activas Diseño de Sistemas de Bases de Datos Merche Marqués 18 de marzo de 2002 Índice 1. Introducción 1 2. El modelo evento condición acción 1 2.1. Definición y uso de disparadores

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

Integridad en sistemas de bases de datos relacionales

Integridad en sistemas de bases de datos relacionales Integridad en sistemas de bases de datos relacionales Competencias específicas a adquirir Asegurar la integridad de los datos mediante la aplicación de los mecanismos soportados por los SGBDs. Identificar

Más detalles

SQL PROCEDURAL Triggers y Stored Procedures. Ing. Gustavo A. Correa Reina UNCPBA 2008

SQL PROCEDURAL Triggers y Stored Procedures. Ing. Gustavo A. Correa Reina UNCPBA 2008 Base de Datos I SQL PROCEDURAL Triggers y Stored Procedures Ing. Gustavo A. Correa Reina UNCPBA 2008 SQL Procedural Posibilita el uso de código procedural conjuntamente con sentencias SQL que son almacenadas

Más detalles

SINTAXIS DE SQL-92. ::= CREATE SCHEMA [ ... ]

SINTAXIS DE SQL-92. <definición de esquema >::= CREATE SCHEMA <cláusula de nombre de esquema> [ <elemento de esquema>... ] SINTAXIS DE SQL-92 Introducción: Se presenta brevemente un resumen de la sintaxis de SQL según el estándar ISO 9075 (SQL- 92), dividido en tres partes: - Lenguaje de Definición de Daots (LDD), - Lenguaje

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

Tema 6. Restricciones a la Base de Datos: Integridad y seguridad

Tema 6. Restricciones a la Base de Datos: Integridad y seguridad Tema 6. Restricciones a la Base de Datos: Integridad y seguridad Juan Ignacio Rodríguez de León Resumen Las restricciones desde el punto de vista de integridad de bases de datos. se presentan dependencias

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

2.6.2.- Aplicaciones de las vistas. 2.6.1.- Concepto de vista. 2.6.3.- Vistas en SQL. 2.6.3.- Vistas en SQL.

2.6.2.- Aplicaciones de las vistas. 2.6.1.- Concepto de vista. 2.6.3.- Vistas en SQL. 2.6.3.- Vistas en SQL. 2.6.1.- Concepto de vista. Una vista es una tabla derivada de otras tablas (básicas o virtuales). Una vista se caracteriza porque: Se considera que forma parte del esquema externo. Una vista es una tabla

Más detalles

Integridad y Seguridad. Integridad y Seguridad. Restricción de Dominio. Protección. Índice. create domain. Dominios

Integridad y Seguridad. Integridad y Seguridad. Restricción de Dominio. Protección. Índice. create domain. Dominios Protección Integridad y Seguridad Las Restricciones de Integridad aseguran que las modificaciones realizadas por usuarios autorizados no provocan perdidas de Consistencia Semántica El Control de Acceso

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 SQL + Procedural La mayoría de los DBMS actuales permiten extensiones de SQL para la creación de bloques

Más detalles

Repaso. Laboratorio Informix. Stored Procedures. Ejemplo. Creación de stored procedures. Sql en un Procedimiento

Repaso. Laboratorio Informix. Stored Procedures. Ejemplo. Creación de stored procedures. Sql en un Procedimiento Laboratorio Informix Stored Procedures Triggers Repaso A partir del ER, hicimos las tablas de la base de datos. Creamos en MySql las base de datos y las tablas Hicimos una aplicación que se comunica con

Más detalles

Laboratorio Informix. Stored Procedures Triggers

Laboratorio Informix. Stored Procedures Triggers Laboratorio Informix Stored Procedures Triggers Repaso A partir del ER, hicimos las tablas de la base de datos. Creamos en MySql las base de datos y las tablas Hicimos una aplicación que se comunica con

Más detalles

6. Integridad en Sistemas de Bases de Datos Relacionales

6. Integridad en Sistemas de Bases de Datos Relacionales 6. Integridad en Sistemas de Bases de Datos Relacionales Objetivos Apreciar la necesidad de garantizar la integridad o corrección de la información almacenada en una base de datos Distinguir e identificar

Más detalles

- Bases de Datos - - Diseño Físico - Luis D. García

- Bases de Datos - - Diseño Físico - Luis D. García - Diseño Físico - Luis D. García Abril de 2006 Introducción El diseño de una base de datos está compuesto por tres etapas, el Diseño Conceptual, en el cual se descubren la semántica de los datos, definiendo

Más detalles

Haga clic para PostgreS cambiar el estilo

Haga clic para PostgreS cambiar el estilo Taller # 1 Uso y Manejo l Sistema Gestor Bases Datos PostgreSQL Luis García Computación ldgarc@gmail.com Contenido - Creación Tablas (Create Table...) ( Check Foreign Keys ) - Inserción Datos (Insert Into...)

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 sn. 41012 Sevilla TlfFax 954 557 139 E-mail lsi@lsi.us.es Web www.lsi.us.es Diseño

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

Integridad y Seguridad en los sistemas de Bases de Datos. Javier Escobar Luis Ramirez Omar Asprino

Integridad y Seguridad en los sistemas de Bases de Datos. Javier Escobar Luis Ramirez Omar Asprino Integridad y Seguridad en los sistemas de Bases de Datos Javier Escobar Luis Ramirez Omar Asprino Contenido 1. Restricciones de Integridad 1. Claves Primarias 2. Restricciones de los Dominios 3. Integridad

Más detalles

Bases de Datos / Elementos de Bases de Datos 2011. Que es un Stored Procedure? Stored Procedures: Ventajas

Bases de Datos / Elementos de Bases de Datos 2011. Que es un Stored Procedure? Stored Procedures: Ventajas Bases de Datos / Elementos de Bases de Datos 2011 Stored Procedures, Triggers y Transacciones en MySQL Departamento de Ciencias e Ingeniería de la Computación Universidad Nacional del Sur 1 Que es un Stored

Más detalles

Las restricciones de integridad proporcionan un medio de asegurar que las modificaciones

Las restricciones de integridad proporcionan un medio de asegurar que las modificaciones CAPÍTULO 6 INTEGRIDAD Y SEGURIDAD 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

Más detalles

Oracle 12c DISEÑO Y PROGRAMACIÓN

Oracle 12c DISEÑO Y PROGRAMACIÓN Oracle 12c Se estudia el servidor de bases de datos empresarial Oracle 12c, centrándose especialmente en el punto de vista de un diseñador o programador de bases de datos, pero explicando también cómo

Más detalles

8 SQL SERVER 2008 RA-MA

8 SQL SERVER 2008 RA-MA ÍNDICE Capítulo 1. Características, novedades y entorno de trabajo... 17 1.1 Novedades en SQL Server 2008... 17 1.2 Instalación de Microsoft SQL Server 2008... 19 1.3 Versiones de Microsoft SQL Server

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 1. Bases de datos activas

Tema 1. Bases de datos activas 18 de marzo de 2002 1 1. Introducción 2. El modelo evento-condición-acción Definición y uso de disparadores en Oracle Características de las reglas activas 3. Propiedades de las reglas activas 4. Aplicaciones

Más detalles

A.1. Definiciones de datos en SQL

A.1. Definiciones de datos en SQL A.1. Definiciones de datos en SQL Las Sentencias del lenguaje de definición de datos (DDL) que posee SQL operan en base a tablas. Las Principales sentencias DDL son las siguientes: CREATE TABLE DROP TABLE

Más detalles

CURSO DE SQL SERVER 2005

CURSO DE SQL SERVER 2005 CURSO DE SQL SERVER 2005 Una vez finalizado el curso, el alumno estará preparado para: Instalar y configurar SQL Server 2005. Comprender los conceptos más importantes del diseño de bases de datos. Crear

Más detalles

Permite definir cada relación que pertenece a la base de datos relacional, incluyendo:

Permite definir cada relación que pertenece a la base de datos relacional, incluyendo: TEMA 7.- EL ESTANDAR SQL. El Sublenguaje de Manipulación. El Sublenguaje de Definición. El Sublenguaje de Control. El Sublenguaje Huésped. 1. El Sublenguaje de Manipulación. (Se verá en la clase de problemas)

Más detalles

abacformacio@abacformacio.com 1

abacformacio@abacformacio.com 1 Cu Oracle 10gg Estudia el servidor de bases de datos Oracle 10g desde el punto de vista de un diseñador y programador de bases de datos, prestando atención a los objetos que puede crear, como tablas, consultas

Más detalles

: COMPUTACIÓN E INFORMATICA : Ingeniería de Software Ingeniería de Redes y Comunicaciones : Administración de Bases de Datos I : T-INF127

: COMPUTACIÓN E INFORMATICA : Ingeniería de Software Ingeniería de Redes y Comunicaciones : Administración de Bases de Datos I : T-INF127 I. DATOS INFORMATIVOS Carrera Especialidad Curso Código Ciclo : Tercero Requisitos Duración Horas Semana : 06 horas Versión : v.0110 II. SUMILLA : COMPUTACIÓN E INFORMATICA : Ingeniería de Software Ingeniería

Más detalles

8 MICROSOFT SQL SERVER 2008 R2. CURSO PRÁCTICO RA-MA

8 MICROSOFT SQL SERVER 2008 R2. CURSO PRÁCTICO RA-MA ÍNDICE CAPÍTULO 1. CARACTERÍSTICAS, NOVEDADES Y ENTORNO DE TRABAJO...17 1.1 NOVEDADES EN SQL SERVER 2008 R2...17 1.2 INSTALACIÓN DE MICROSOFT SQL SERVER 2008 R2...18 1.3 VERSIONES DE MICROSOFT SQL SERVER

Más detalles

Pequeños apuntes de SQL *

Pequeños apuntes de SQL * Escuela Universitaria de Ingeniería Técnica en Informática de Oviedo 1 SQL Pequeños apuntes de SQL * En estas hojas se exponen de manera concisa algunos aspectos adicionales del SQL, así como ejemplos

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

2.5.- El lenguaje estándar SQL

2.5.- El lenguaje estándar SQL 25- El lenguaje estándar SQL El SQL es un lenguaje estándar de definición y manipulación (y consulta) de bases de datos relacionales El SQL estándar incluye: Características del Álgebra Relacional Características

Más detalles

Fundamentos de Oracle

Fundamentos de Oracle Fundamentos de Oracle Introducción Este curso de 40 horas de duración ofrece a los asistentes los conocimientos necesarios para trabajar con el servidor de bases de datos empresarial Oracle 10g, centrándose

Más detalles

PRÁCTICA III. DISPARADORES EN SQL (II)

PRÁCTICA III. DISPARADORES EN SQL (II) PRÁCTICA III. DISPARADORES EN SQL (II) MODELOS AVANZADOS DE BASES DE DATOS CURSO 2000/2001 Objetivo Conocer mejor los disparadores en SQL. Se verá uno de los principales inconvenientes que se presentan

Más detalles

1. Introducción: Qué es un Modelo de Datos? 2. Estática del modelo de datos relacional

1. Introducción: Qué es un Modelo de Datos? 2. Estática del modelo de datos relacional Tema 7: Modelo Relacional 1. Introducción: Qué es un Modelo de Datos? 2. Estática del modelo de datos relacional Dominios, Atributos, Relaciones Representación del esquema relacional Características de

Más detalles

Formato para prácticas de laboratorio

Formato para prácticas de laboratorio Formato para prácticas de laboratorio CARRERA PLAN DE ESTUDIO CLAVE IGNATURA NOMBRE DE LA IGNATURA LSC 2009-2 12001 Administración de Bases de Datos PRÁCTICA No. 5 LABORATORIO DE NOMBRE DE LA PRÁCTICA

Más detalles

LENGUAJE SQL. Bárbula, Febrero de 2007. Historia y Definición

LENGUAJE SQL. Bárbula, Febrero de 2007. Historia y Definición LENGUAJE Integrantes: Ceci Vanessa Paredes Oswaldo Rodríguez Aury Bárbula, Febrero de 2007 : Es una herramienta para organizar, gestionar y recuperar datos almacenados en una base de datos. funciona con

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

Tema 4. SQL. Juan Ignacio Rodríguez de León

Tema 4. SQL. Juan Ignacio Rodríguez de León Tema 4. SQL Juan Ignacio Rodríguez de León Resumen Este tema se centra exclusivamente en el estudio del lenguaje de consultas SQL (Structured Query Language). SQL usa una combinación de álgebra relacional

Más detalles

Bases de Datos / Elementos de Bases de Datos 2015

Bases de Datos / Elementos de Bases de Datos 2015 Bases de Datos / Elementos de Bases de Datos 2015 Stored Procedures, Triggers y Transacciones en MySQL Departamento de Ciencias e Ingeniería de la Computación Universidad Nacional del Sur 1 Stored Procedures

Más detalles

Tema 33. El lenguaje SQL

Tema 33. El lenguaje SQL Tema 33. El lenguaje SQL Introducción... 1 Modos de uso... 2 Ejecución de las sentencias SQL... 2 Instrucciones DDL Data Definition Language-... 3 Instrucciones DML Data Manipulation Language-... 4 Instrucciones

Más detalles

Sistema Gestor de Bases de Datos Relacionales (SGBDR), que maneja distintos tipos de datos:

Sistema Gestor de Bases de Datos Relacionales (SGBDR), que maneja distintos tipos de datos: Bases de Datos Introducción a ORACLE Sistema Gestor de Bases de Datos Relacionales (SGBDR), que maneja distintos tipos de datos: o Tradicionales como INTEGER, VARCHAR2, DATE,..., etc. o Nuevos y complejos:

Más detalles

Bases de Datos SEGURIDAD E INTEGRIDAD EN BASES DE DATOS. Ejemplo del Lado del servidor

Bases de Datos SEGURIDAD E INTEGRIDAD EN BASES DE DATOS. Ejemplo del Lado del servidor Bases de Datos SEGURIDAD E INTEGRIDAD EN BASES DE DATOS Ejemplo del Lado del servidor Aplicación de conceptos: Se hizo referencia a los elementos que poseen los Sistemas de Gestión de Bases de Datos (SGBD)

Más detalles

Disparadores en ORACLE

Disparadores en ORACLE Diseño de Bases de Datos y Seguridad de la Información PL/SQL-1 PL/SQL: lenguaje de programación estructurado en bloques Bloques: unidad mínima en PL/SQL Soportan DML y DDL Anónimos / Con nombre Disparadores

Más detalles

UNIVERSIDAD NACIONAL DE SAN AGUSTÍN FACULTAD DE PRODUCCIÓN Y SERVICIOS ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS LABORATORIO DE BASES DE DATOS 1

UNIVERSIDAD NACIONAL DE SAN AGUSTÍN FACULTAD DE PRODUCCIÓN Y SERVICIOS ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS LABORATORIO DE BASES DE DATOS 1 UNIVERSIDAD NACIONAL DE SAN AGUSTÍN FACULTAD DE PRODUCCIÓN Y SERVICIOS ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEM LABORATORIO DE BES DE DATOS 1 Prof. Marco Aedo Práctica de Laboratorio Nº 6 I. OBJETIVOS

Más detalles

Temario. Índices simples Árboles B Hashing

Temario. Índices simples Árboles B Hashing Temario Introducción y fundamentos Introducción a SQL Modelo Entidad / Relación Modelo relacional Diseño relacional: formas normales Consultas Cálculo relacional Álgebra relacional Implementación de bases

Más detalles

RESTRICCIONES DE DOMINIOS

RESTRICCIONES DE DOMINIOS RESTRICCIONES DE DOMINIOS - Cargo del personal de la inmobiliaria: create domain cargo_personal as character20 check value in Venta, Alquiler, Gerencial - Categoría del barrio: create domain categoría

Más detalles

TRANSFORMACIÓN DE ESQUEMAS E/R A ESQUEMAS RELACIONALES

TRANSFORMACIÓN DE ESQUEMAS E/R A ESQUEMAS RELACIONALES TRANSFORMACIÓN DE ESQUEMAS E/R A ESQUEMAS RELACIONALES 1. REGLAS DE TRANSFORMACIÓN DEL ESQUEMA CONCEPTUAL AL LÓGICO ESTÁNDAR Las tres reglas básicas para convertir un esquema en el modelo E/R al relacional

Más detalles

El Manejador de Bases de Datos Relacionales ORACLE

El Manejador de Bases de Datos Relacionales ORACLE El Manejador de Bases de Datos Relacionales ORACLE Como la segunda empresa vendedora de software a nivel mundial, ORACLE provee una plataforma completa para desarrollar aplicaciones que utilicen el recurso

Más detalles

EXAMEN: BASES DE DATOS 4º Ingeniería Informática (29 de enero de 2009)

EXAMEN: BASES DE DATOS 4º Ingeniería Informática (29 de enero de 2009) APELLIDOS: NOMBRE: DNI: EXAMEN: BASES DE DATOS 4º Ingeniería Informática (29 de enero de 2009) MAÑANA TARDE Autorizo la publicación de la nota del examen junto a mi número de matrícula, tanto en la Web

Más detalles

Sistemas Informáticos I Resumen

Sistemas Informáticos I Resumen Sistemas Informáticos I Resumen Alejandro Bellogín Kouki 20 de enero de 2007 1. Modelo Entidad-Relación y tablas 1.1. Modelo E-R Entidad rectángulo Relaciones rombos Uno a uno! Uno a muchos! Muchos a muchos

Más detalles

Unidad III: Lenguaje de manipulación de datos (DML) 3.1 Inserción, eliminación y modificación de registros

Unidad III: Lenguaje de manipulación de datos (DML) 3.1 Inserción, eliminación y modificación de registros Unidad III: Lenguaje de manipulación de datos (DML) 3.1 Inserción, eliminación y modificación de registros La sentencia INSERT permite agregar nuevas filas de datos a las tablas existentes. Está sentencia

Más detalles

Un ejemplo teórico de trigger podría ser éste:

Un ejemplo teórico de trigger podría ser éste: 9. TRIGGERS EN LA BASE DE DATOS Un trigger (disparador sería la traducción técnica) es un bloque PLSQL que se ejecuta implícitamente cuando ocurre un evento y pueden ser de base de datos o de aplicación.

Más detalles

Universidad Nacional del Sur Departamento de Ciencias e Ingeniería de la Computación Elementos de Bases de Datos 2do. Cuatrimestre de 2004

Universidad Nacional del Sur Departamento de Ciencias e Ingeniería de la Computación Elementos de Bases de Datos 2do. Cuatrimestre de 2004 2do. Cuatrimestre de 2004 Elementos de Bases de Datos Dpto.Ciencias e Ingeniería de la Computación Universidad Nacional del Sur Lic. María Mercedes Vitturini [mvitturi@cs.uns.edu.ar] Clase 14 1er. Cuatrimestre

Más detalles

Unidad. Lenguaje SQL. (Structured Query Language)

Unidad. Lenguaje SQL. (Structured Query Language) Unidad Lenguaje SQL (Structured Query Language) 1 SQL Definición DDL Consulta y Actualización DML Create Alter Drop Select Insert Update Delete 2 SQL DDL CREATE TABLE nombre_tabla (nombre_columna tipo_dato/dominio

Más detalles

Bases de Datos: Structured Query Language (SQL)

Bases de Datos: Structured Query Language (SQL) Structured Query Language (SQL): Introducción Bases de Datos: Structured Query Language (SQL) Franco Guidi Polanco Escuela de Ingeniería Industrial Pontificia Universidad Católica de Valparaíso, Chile

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.- Etapas del diseño lógico Diseño lógico estándar Diseño lógico específico 2.- Transformación del esquema conceptual al lógico estándar

1.- Etapas del diseño lógico Diseño lógico estándar Diseño lógico específico 2.- Transformación del esquema conceptual al lógico estándar 1.- Etapas del diseño lógico Diseño lógico estándar Diseño lógico específico 2.- Transformación del esquema conceptual al lógico estándar 3.- 4.- Reglas concernientes a las extensiones del modelo E/R Transformación

Más detalles

SQL. (...la guía básica de supervivencia de dmi) Universidad de los Andes Demián Gutierrez Enero 2009 1

SQL. (...la guía básica de supervivencia de dmi) Universidad de los Andes Demián Gutierrez Enero 2009 1 SQL (...la guía básica de supervivencia de dmi) Universidad de los Andes Demián Gutierrez Enero 2009 1 Crear una Tabla (Esquema de Relación) (1) (Cascadas) postgres=# CREATE TABLE departamento ( codigo

Más detalles

Introducción a las bases de datos.

Introducción a las bases de datos. Introducción a las BBDD 1 Centro de Referencia Linux UAM-IBM Introducción a las bases de datos. Carmen B. Navarrete Navarrete carmen_navarrete@telefonica.net Introducción a las BBDD 2 Qué vamos a ver?

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

Tema 3 Modelo relacional

Tema 3 Modelo relacional Contenido: Bases de Datos y Sistemas de Información Ing. Informática GRUPO A Tema 3 Modelo relacional 3.1 Terminología del modelo relacional 3.2 Paso del modelo ER al modelo relacional 3.3 Creación de

Más detalles

Bases de Datos I. Cursada 2008. Clase 3: Restricciones de Integridad (de tablas y generales)

Bases de Datos I. Cursada 2008. Clase 3: Restricciones de Integridad (de tablas y generales) Bases de Datos I Cursada 2008 Clase 3: Restricciones de Integridad (de tablas y generales) Facultad de Ciencias Exactas Universidad Nac. Centro de la Pcia. de Bs. As. 1 RESTRICCIONES DE INTEGRIDAD (RI)

Más detalles

ÍNDICE PRIMERA PARTE... 17

ÍNDICE PRIMERA PARTE... 17 ÍNDICE PREFACIO... xv PRIMERA PARTE... 17 CAPÍTULO 1. BASES DE DATOS... 19 BASE DE DATOS RELACIONAL... 20 ESTRUCTURA MÍNIMA DE ALMACENAMIENTO... 21 EJEMPLO DE TABLA... 22 RESUMEN... 23 CAPÍTULO 2. CONSULTAS

Más detalles

SQL. Orígenes y Evolución

SQL. Orígenes y Evolución SQL 1 SQL. Orígenes y Evolución 2 SQL: Estándar oficial 3 Funciones de SQL DDL Data Definition Language Creación n de estructuras de la base de datos Integridad de los datos DML Data Manipulation Language

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

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

Administración de Bases de Datos (Ingeniería Técnica en Informática de Gestión)

Administración de Bases de Datos (Ingeniería Técnica en Informática de Gestión) Departamento de Lenguajes y Ciencias de la Computación Universidad de Málaga Administración de Bases de Datos (Ingeniería Técnica en Informática de Gestión) Sistemas de Bases de Datos: Introducción y Conceptos

Más detalles

2 Diseño lógico: Modelo Relacional

2 Diseño lógico: Modelo Relacional 2 Diseño lógico: Modelo Relacional 2.1 Introducción al modelo relacional... 2 2.1.1 Elementos Básicos... 3 2.1.2 Tipos de Claves... 4 2.1.3 Restricciones del modelo relacional... 4 2.1.4 Notación... 7

Más detalles

ÍNDICE INTRODUCCIÓN...13

ÍNDICE INTRODUCCIÓN...13 ÍNDICE INTRODUCCIÓN...13 CAPÍTULO 1. EL MODELO RELACIONAL. LENGUAJE SQL...17 1.1 INTRODUCCIÓN AL MODELO RELACIONAL...17 1.2 RELACIONES...19 1.2.1 Definición formal de relación...21 1.2.2 Propiedades y

Más detalles

FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA. Tema 9. Reglas de Integridad

FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA. Tema 9. Reglas de Integridad FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA Tema 9. Reglas de Integridad 1.- Introducción. 2.- Claves Primarias. 3.- Regla de Integridad de Entidades. 4.- Claves Ajenas. 5.- Regla de Integridad

Más detalles

EL ENTORNO DE TRABAJO SQL ORACLE

EL ENTORNO DE TRABAJO SQL ORACLE PREVIO 2 EL ENTORNO DE TRABAJO SQL ORACLE Y LENGUAJE DE DEFINICIÓN DE DATOS DDL) INTRODUCCIÓN A ORACLE Oracle10g es de las últimas versiones de esté manejador de base de datos, incorpora la tecnología

Más detalles

Otros objetos de Base de Datos

Otros objetos de Base de Datos Maestría en Bioinformática Bases de Datos y Sistemas de Información Otros objetos de Base de Datos Ing. Alfonso Vicente, PMP alfonso.vicente@logos.com.uy Agenda Secuencias Triggers Vistas Código almacenado

Más detalles

UNIVERSIDAD AUTONOMA DE LOS ANDES UNIANDES LENGUAJE SQL. SQL es un estándar un lenguaje estructurado para consultas

UNIVERSIDAD AUTONOMA DE LOS ANDES UNIANDES LENGUAJE SQL. SQL es un estándar un lenguaje estructurado para consultas LENGUAJE SQL Que es SQL? SQL es un estándar un lenguaje estructurado para consultas SQL te permite acceder y manejar bases de datos SQL es un Estándar (ANSI American National Standards Institute) Que puede

Más detalles

GALA CONCEPTO COMMIT, ROOLBACK SAVEPOINTS (SAVE TRANSACTION) No Consultas. Definiciones Transacciones ( L33 )

GALA CONCEPTO COMMIT, ROOLBACK SAVEPOINTS (SAVE TRANSACTION) No Consultas. Definiciones Transacciones ( L33 ) Definiciones Transacciones ( L33 ) CONCEPTO COMMIT, ROOLBACK SAVEPOINTS (SAVE TRANSACTION) Transacciones En Microsoft ( L33 ) MANUAL (REQUIERE PROGRAMACION) AUTOMATICO (COM+ O DTM) DTM (DISTRIBUTED TRANSACTION

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

FIREBIRD: SQL PROCEDIMENTAL (PSQL)

FIREBIRD: SQL PROCEDIMENTAL (PSQL) FIREBIRD: SQL PROCEDIMENTAL (PSQL) Vicente Tejero Trueba Pag 1 IES Pedro Espinosa FIREBIRD: SQL PROCEDIMENTAL (PSQL) 1.- INTRODUCCION...1 2.- EXTENSIONES DEL LENGUAJE...2 2.1.- Terminadores...2 2.2.- Variables...3

Más detalles

El usuario puede utilizar esta tabla derivada como una tabla más, en sus consultas.

El usuario puede utilizar esta tabla derivada como una tabla más, en sus consultas. Vistas. El resultado de una consulta en el caso de SQL siempre es una tabla, ésta se puede hacer permanente dentro de la base de datos. En este caso se dice que esta tabla resultado es una vista o una

Más detalles

PARTE II. MODELO RELACIONAL. ESTÁTICA

PARTE II. MODELO RELACIONAL. ESTÁTICA Índice PARTE II. MODELO RELACIONAL. ESTÁTICA III.4 INTRODUCCIÓN AL MODELO RELACIONAL III.5 ESTRUCTURA DEL MODELO III.6 RESTRICCIONES III.7 EL MODELO RELACIONAL Y LA ARQUITECTURA ANSI III.8 LAS 12 REGLAS

Más detalles

Grupo Kybele, http://www.kybele.es/ Pág. 1

Grupo Kybele, http://www.kybele.es/ Pág. 1 Bases de Datos APUNTES PARA EL MANEJO DE SQL*Plus Para cualquier consulta a la sintaxis de las órdenes SQL o SQL*PLUS puede consultarse cualquier libro de ORACLE, o los manuales gratuitos en pdf o en línea

Más detalles

Bases de Datos 2. Teórico

Bases de Datos 2. Teórico Bases de Datos 2 Teórico Structured Query Language (SQL) Características de SQL Standard Opera sobre conjuntos de tuplas: incluso para las operaciones de inserción, borrado y actualización. No elimina

Más detalles

Base de Datos Oracle 10g: Introducción a SQL Código: D17216 - Duración: 5 días (40 horas)

Base de Datos Oracle 10g: Introducción a SQL Código: D17216 - Duración: 5 días (40 horas) Base de Datos Oracle 10g: Introducción a SQL Código: D17216 - Duración: 5 días (40 horas) Lo que aprenderá Esta clase es aplicable para los usuarios de Oracle8i, Oracle9i y Oracle Database 10g. En este

Más detalles

INDICE Primera Parte. Panorámica general de SQL 2. Rápido repaso de SQL 3. SQL en Perspectiva

INDICE Primera Parte. Panorámica general de SQL 2. Rápido repaso de SQL 3. SQL en Perspectiva INDICE Prólogo XXIII Por qué este libro es para usted XXVII Primera Parte. Panorámica general de SQL 1 1. Introducción 3 El lenguaje SQL 3 El papel de SQL 6 Características y beneficios de SQL 7 Independencia

Más detalles

SERVICIO NACIONAL DE APRENDIZAJE SENA

SERVICIO NACIONAL DE APRENDIZAJE SENA SERVICIO NACIONAL DE APRENDIZAJE SENA GUÍA DE APRENDIZAJE SISTEMA INTEGRADO DE GESTIÓN Proceso Gestión de la Formación Profesional Integral Procedimiento Ejecución de la Formación Profesional Integral

Más detalles

Laboratorios de BASES DE DATOS. (I.T. Informática)

Laboratorios de BASES DE DATOS. (I.T. Informática) Laboratorios de BASES DE DATOS. (I.T. Informática) Gestor de bases de datos ORACLE M. Martínez, C. Hernández, C. Cuesta Dpto. de Informática (U. Valladolid) Base de datos de ejemplo EMPLEADOS (NOMBRE,

Más detalles

Guía Taller I Conexión con la Base de Datos Introducción a PostgreSQL

Guía Taller I Conexión con la Base de Datos Introducción a PostgreSQL Guía Taller I Conexión con la Base de Datos Introducción a PostgreSQL 1. Conexión con la Base de Datos: se debe realizar a partir de algún programa que implemente el protocolo SSH (Secure Shell), a partir

Más detalles

Procedimientos, Funciones, Trigger y Cursores en ORACLE

Procedimientos, Funciones, Trigger y Cursores en ORACLE Procedimientos, Funciones, Trigger y Cursores en ORACLE PROCEDIMIENTOS ALMACENADOS Un procedimiento almacenado es un conjunto de instrucciones en PL/SQL, que pueden ser llamados usando el nombre que se

Más detalles

BASES DE DATOS TEMA 4. SQL. UN LENGUAJE DE CONSULTA COMERCIAL PARA BASES DE DATOS RELACIONALES Contenidos generales

BASES DE DATOS TEMA 4. SQL. UN LENGUAJE DE CONSULTA COMERCIAL PARA BASES DE DATOS RELACIONALES Contenidos generales BASES DE DATOS TEMA 4. SQL. UN LENGUAJE DE CONSULTA COMERCIAL PARA BASES DE DATOS RELACIONALES Contenidos generales * Definición de datos en SQL * Consulta de datos en SQL - Estructura básica de una sentencia

Más detalles

UNIVERSIDAD DEL ISTMO CAMPUS IXTEPEC LIC. INFORMATICA GRUPO 508 PROCEDIMIENTOS ALMACENADOS EN SQL SERVER 2000

UNIVERSIDAD DEL ISTMO CAMPUS IXTEPEC LIC. INFORMATICA GRUPO 508 PROCEDIMIENTOS ALMACENADOS EN SQL SERVER 2000 PROCEDIMIENTOS ALMACENADOS EN SQL SERVER 2000 Creación de la base de Datos Pulsamos F5 para Actualizar, y una vez posicionados en nuestra base de datos,se crean los scripts que seran soportados por el

Más detalles

DICCIONARIO DE DATOS

DICCIONARIO DE DATOS DICCIONARIO DE DATOS Diccionario de datos El diccionario de datos es la fuente de información centralizada de todo el sistema SAP, allí se encuentra (y almacena) todos los datos que se procesan en el sistema;

Más detalles

BASES DE DATOS OBJETO-RELACIONALES

BASES DE DATOS OBJETO-RELACIONALES Departament d Informàtica BASES DE DATOS OBJETO-RELACIONALES Un sistema de gestión de pedidos Wladimiro Díaz Villanueva Curso 2001-2002 Índice General 1 Introducción 3 1.1 Entidades y relaciones.................................

Más detalles

BASES DE DATOS RELACIONALES Y ACTIVAS INTRODUCCIÓN. CONCEPTOS INICIALES. DE LOS SISTEMAS DE ARCHIVOS AL MODELO RELACIONAL. NIVELES DE ABSTRACCIÓN. SISTEMAS ADMINISTRADORES DE BASES DE DATOS (DBMS). RAZONES

Más detalles

Resumen. El rol del lenguaje SQL en los SGBDR y en la Relacional. cjimenez@inf.udec.cl, tamrstro@inf.udec.cl

Resumen. El rol del lenguaje SQL en los SGBDR y en la Relacional. cjimenez@inf.udec.cl, tamrstro@inf.udec.cl El rol del lenguaje SQL en los SGBDR y en la Relacional. cjimenez@inf.udec.cl, tamrstro@inf.udec.cl Resumen demandas de almacenamiento y procesamiento de datos. Es el conjunto de estas dos capacidades

Más detalles

PRÁCTICA B2. Definición y modificación de datos en SQL

PRÁCTICA B2. Definición y modificación de datos en SQL 3º Ingeniero Técnico en Informática de Sistemas Facultad de Informática Asignatura: Fundamentos de Bases de Datos Curso: 2007/08 PRÁCTICA B2. Definición y modificación de datos en SQL Objetivos Construir

Más detalles

GUIA DE LABORATORIO N 9 B. (000Webhost Php- Para desarrollar en casa)

GUIA DE LABORATORIO N 9 B. (000Webhost Php- Para desarrollar en casa) GUIA DE LABORATORIO N 9 B (000Webhost Php- Para desarrollar en casa) Objetivo: Crear servicios web utilizando la arquitectura REST, para obtener información desde un servidor web gratuito que se conecta

Más detalles

FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA. Tema 8. Elementos Básicos

FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA. Tema 8. Elementos Básicos FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA Tema 8. Elementos Básicos 1.- Ejemplo Introductorio. 2.- Dominios. 3.- Relaciones. 4.- Bases de Datos Relacionales. (Capítulo 11 del Date) EJEMPLO

Más detalles

Una vez creada la BD podemos pedirle a MySQL que nos muestre todas las BD existentes. Para eso utilizamos la siguiente instrucción:

Una vez creada la BD podemos pedirle a MySQL que nos muestre todas las BD existentes. Para eso utilizamos la siguiente instrucción: Guía de MySQL Contenidos: 1.- Introducción: 2.- Creación de una base de datos. CREATE DATABASE. 3.- Creación de una tabla y mostrar sus campos (CREATE TABLE - SHOW TABLES - describe - DROP TABLE) 4.- Instrucción

Más detalles

Expresiones Join SQL2

Expresiones Join SQL2 Expresiones Join SQL2 En SQL2 hay varias clases de operadores Join disponibles. Las expresiones Join, al producir relaciones, pueden ser usadas en la cláusula FROM de una expresión Seleccione-De-Cuando.

Más detalles