Disparadores en ORACLE
|
|
- Aarón Salas Villalobos
- hace 6 años
- Vistas:
Transcripción
1 Disparadores en ORACLE Bibliografía Oracle Database Concepts 10g Release 2 (10.2) (Octubre 2005) Oracle Database Application Developer's Guide Fundamentals 10g Release 2 (10.2) (Noviembre 2005) Óscar Díaz Universidad del País Vasco (UPV) Bases de Datos Activas BD Triggers 1
2 Introducción : lenguaje de programación DECLARE optional estructurado en bloques BEGIN required Bloques: unidad mínima en END; required Soportan DML y DDL / Anónimos / Con nombre TRIGGERS Disparadores (triggers) i en Oracle: bloques de código que son implícitamente invocados cuando algo sucede CREATE TRIGGER NombreTrigger Triggers VS Procedimientos Ejecución Implícita: Disparar No admiten argumentos Aplicaciones: Restricciones (Constraints) Auditorías END; / Informar de Eventos EXCEPTION optional BEFORE INSERT ON StarsIn DECLARE.. END; / TRIGGER CREATE PROCEDURE Get_emp_rec (Emp_number IN Emp_tab.Empno%TYPE) AS BEGIN PROCEDIMIENTO BD Triggers 2
3 Introducción 3 Tipos DML/DDL (Fila/Sentencia, BEFORE/AFTER) INSTEAD OF SYSTEM BD Triggers 3
4 Estructura General de un Disparador Evento CREATE [OR REPLACE] TRIGGER nombre {BEFORE AFTER INSTEAD OF} Temporalidad del Evento {INSERT DELETE UPDATE [OF <atributo>]} ON <tabla> [FOR EACH ROW STATEMENT] [WHEN condición] Granularidad Condición BEGIN END; cuerpo del trigger Acción BD Triggers 4
5 BEFORE Temporalidad del Evento: AFTER / BEFORE Ejecutan la acción asociada antes de que la sentencia sea ejecutada Decidir si la acción debe realizarse Utilizar valores alternativos ti para la sentencia AFTER CREATE TRIGGER NombreTrigger BEFORE Insert ON NombreTabla. Los de tipo BEFORE son mejores en términos de rendimiento i Ejecutan la acción asociada después de que se haya ejecutado la sentencia CREATE TRIGGER NombreTrigger AFTER Insert ON NombreTabla. BD Triggers 5
6 Granularidad del Evento: FOREACH ROW / STATEMENT A NIVEL DE FILA: ROW TRIGGERS Ejecutan la acción asociada tantas veces como filas se vean afectadas por la sentencia que lo dispara Si ninguna fila se ve afectada, no se dispara CREATE TRIGGER NombreTrigger BEFORE Insert ON NombreTabla FOR EACH ROW. Utilizar cuando la acción depende de la sentencia que produjo el evento o de las filas afectadas BD Triggers 6
7 Granularidad del Evento: FOREACH ROW / STATEMENT A NIVEL DE SENTENCIA: STATEMENT TRIGGERS Ejecutan una única vez la acción asociada, id independientemente del número de filas que se vean afectadas por la sentencia CREATE TRIGGER NombreTrigger BEFORE Insert ON NombreTabla [STATEMENT] Utilizar cuando la acción NO depende de la sentencia que produjo el evento o de las filas afectadas Comprobaciones de seguridad a cerca del usuario o el momento concreto Generar registros de auditoría BD Triggers 7
8 Condición Expresa una condición que debe cumplirse en el momento de producirse el evento, para que la acción sea ejecutada. WHEN persona.nombre = 'pepe' OR persona.edad > 35 Se puede utilizar cualquier combinación de operadores lógicos (AND, OR, NOT) y relacionales (< <= > >= = <>). No se puede especificar una condición para los disparadores a nivel de sentencia (STATEMENT) ni los disparadores INSTEAD OF Debe ser una consulta SQL y no puede contener subconsultas SELECT * FROM Productos WHERE PrecioUnidad IN (SELECT PrecioUnidad FROM DetallePedido WHERE Descuento = 0.25) BD Triggers 8
9 Orden de Ejecución Una sentencia SQL puede disparar varios TRIGGERS. La activación ación de un trigger puede ededisparardisparar la activación de otros triggers. 1. Ti Triggers Bf Before (nivel lde sentencia) 2. Para cada fila: 1. Trigger Before (a nivel de fila) 2. Ejecuta la Sentencia 3. Triggers After (a nivel de fila) 3. Triggers After (anivel desentencia) Se compromete o se deshace toda la transacción El orden de ejecución de disparadores del mismo tipo es indeterminado BD Triggers 9
10 Estructura General de un Disparador CREATE OR REPLACE TRIGGER Control_Docencia AFTER DELETE ON Profesores FOR EACH ROW WHEN old.nombre LIKE %Juan% Evento Condición DECLARE var VARCHAR2(50); BEGIN SELECT a.nombre INTO var FROM Asignaturas a WHERE REF(a) = :NEW.asignatura; Acción DELETE FROM Asignaturas WHERE nombre = var END; / BD Triggers 10
11 Correlation Identifiers: Valores OLD y NEW Tipo especial de variable tratada como un registro de tipo tabla_modificada%rowtype Con OLD.nombre_columna referenciamos: Al valor que tenía la columna antes del cambio debido a una modificación (UPDATE) Al valor de una columna antes de una operación de borrado sobre la misma (DELETE) Al valor NULL para operaciones de inserción (INSERT) Con NEW.nombre_columna referenciamos: Al valor de una nueva columna después de una operación de inserción (INSERT) Al valor de una columna después de modificarla mediante una sentencia de modificación ió (UPDATE) Al valor NULL para una operación de borrado (DELETE) SINTAXIS Condición (WHEN.) OLD,, NEW En el cuerpo del disparador :OLD, :NEW BD Triggers 11
12 ROW TRIGGER: ejemplo Cuando se borre en la tabla persona alguna persona que se llame pepe o cuya edad sea mayor de 35 años, eliminar también dicha persona de la tabla persona2 Persona Cod Nombre Edad C1 C2 C3 C4 C5 María Pepe Pepe Luisa Pepe Persona2 Cod Nombre Edad C1 C2 C3 C4 C5 María Pepe Pepe Luisa Pepe DELETE FROM persona WHERE cod in ( C1, C3, C4 ) Borra C3 y C4 de persona2 BD Triggers 12
13 STATEMENT TRIGGER: ejemplo Cuando se borre en la tabla socio emitir un mensaje indicando que no se pueden borrar socios Socio Cod S1 S2 S3 S4 S5 Nombre Fecha_ant María Pepe Pepe Luisa Pepe DELETE FROM socio WHERE nombre = Pepe Borra 3 tuplas y se emite un único mensaje BD Triggers 13
14 Triggers DML Disparados por sentencias DML: INSERT, UPDATE o DELETE Todas las filas o sólo algunas (WHEN) LIBROS ESTADÍSTICAS ISBN GENERO TÍTULO GENERO TOTAL_LIBROSLIBROS Novela El Quijote Novela 50 Infantil 15 CREATE OR REPLACE TRIGGER UpdateEstadisticasGenero AFTER INSERT OR DELETE OR UPDATE ON Libros DECLARE BEGIN UDDATE Estadisticas ti SET. END UpdateEstadisticasGenero; / BD Triggers 14
15 Triggers INSTEAD OF Sólo sobre VISTAS EMPLEADO DEPARTAMENTO DNI NOMBRE DEPARTAMENT NOMBRE CÓDIGO O Contabilidad - 1 CT José García CT-1 Recursos RRHH Humanos CREATE VIEW EmpleadoDpto as SELECT e.nombre, d.nombre FROM Empleado E, Departamento D WHERE E.Departamento = D.Codigo; INSERT INTO EmpleadoDpato VALUES ( Carlos Gómez', Contabilidad-1 ); ERROR en línea 1: ORA-01779: no se puede modificar una columna que se corresponde con una tabla no reservada por clave CREATE OR REPLACE TRIGGER InsertEmepleadoDpto INSTEAD OF INSERT ON EmpleadoDpto DECLARE BEGIN INSERT INTO Empleado VALUES INSERT INTO Departamento VALUES END; BD Triggers 15
16 Triggers de Sistema Disparados por eventos del Sistema o eventos relacionados con las acciones de los Usuarios Sistema Arranque y parada: STARTUP, SHUTDOWN Transacciones: COMMIT, ROLLBACK Errores: SERVERERROR Usuarios Login / Logoff Sentencias DDL: CREATE, ALTER, DROP CREATE OR REPLACE TRIGGER LogCreations AFTER CREATE ON SCHEMA BEGIN INSERT INTO LogCreates (user_id, object_type, object _ name, object _ owner, creation_ date) VALUES (USER, ORA_DCIT_OBJ_TYPE, ORA_DICT_OBJ_NAME,ORA_DICT_OBJ_OWNER, SYSDATE) END LogCreations; / BD Triggers 16
17 BEFORE/AFTER Triggers: ejemplo CREATE OR REPLACE TRIGGER GenerarAutorID BEFORE INSERT OR UPDATE ON Autores FOR EACH ROW BEGIN SELECT id_autores INTO :new.id FROM Tabla_IDs; UPDATE Tabla_IDs SET id_autores = id_autores + 1; END GenerarAutorID; / INSERT INTO autores (nombre, apellidos) VALUES ('Lolita', 'Lazarus'); INSERT INTO autores (ID, nombre, apellidos) VALUES (-7, 'Zelda', 'Zoom'); BD Triggers 17
18 Funciones del Cuerpo del Disparador Inserting, Deleting, Updating CREATE OR REPLACE TRIGGER ejemplo BEFORE INSERT OR UPDATE OR DELETE ON tabla a BEGIN IF DELETING THEN Acciones asociadas al borrado ELSIF INSERTING THEN Acciones asociadas a la inserción modificación modificación END ejemplo; / ELSIF UPDATING[( COL1 )] Acciones asociadas a la ELSIF UPDATING[( COL2 )] Acciones asociadas a la END IF; BD Triggers 18
19 Elevar excepciones en el cuerpo del Disparador RAISE_APPLICATION_ ERROR (nro_error, mensaje); [ y ] CREATE OR REPLACE TRIGGER ejemplo BEFORE DELETE ON tabla FOR EACH ROW BEGIN IF tabla.columna= valor_no_borrable THEN RAISE_APPLICATION_ERROR(-20000, La fila no se puede borrar ); END IF;... END ejemplo; BD Triggers 19
20 Declaración de Variables CREATE... BEFORE... [FOR EACH ROW...] DECLARE Declaración de variables BEGIN nombre CONSTANT NUMBER:=valor; nombre TIPO; nombre nombretabla.nombrecolumna%type; nombre nombretabla%rowtype BD Triggers 20
21 Activar / Desactivar disparadores Todos los disparadores asociados a una tabla: ALTER TABLE nombre_tabla ENABLE ALL TRIGGERS ALTER TABLE nombre_tabla DISABLE ALL TRIGGERS (Por defecto, todos están activados al crearse) Un disparador específico: ALTER TRIGGER nombre_disparador ENABLE ALTER TRIGGER nombre_disparador DISABLE BD Triggers 21
22 Consultar información sobre los disparadores Eliminar un disparador DROP TRIGGER nombre_disparador; Ver todos los disparadores y su estado SELECT TRIGGER_NAME, STATUS FROM USER_TRIGGERS; Ver el cuerpo de un disparador SELECT TRIGGER_BODY FROM USER_TRIGGERS WHERE TRIGGER_NAME='nombre_disparador'; Ver la descripción de un disparador SELECT DESCRIPTION FROM USER_TRIGGERS WHERE TRIGGER_NAME= 'nombre_disparador'; BD Triggers 22
23 Ejemplo CREATE TRIGGER Ejemplo AFTER DELETE ON tabla1 FOR EACH ROW WHEN ((OLD.nombre= pepe ) OR (OLD.edad > 35)) BEGIN DELETE FROM tabla2 WHERE tabla2.cod=:old.cod; END Ejemplo; / SELECT Trigger_body FROM USER_TRIGGERS WHERE Trigger_name = 'Ejemplo'; SELECT Trigger_type, Triggering_event, Table_name FROM USER_TRIGGERS WHERE Trigger_name = 'Ejemplo'; TRIGGER_BODY BEGIN DELETE FROM tabla2 WHERE tabla2.cod=:old.cod; END Ejemplo; / TYPE TRIGGERING_STATEMENT TABLE_NAME AFTER EACH ROW DELETE tabla1 BD Triggers 23
24 Restricciones: tablas mutantes Tabla mutante (mutating) tabla que está siendo modificada por una operación DML tabla que se verá afectada por los efectos de un DELETE CASCADE debido a la integridad referencial (hasta Oracle8i). Las órdenes del cuerpo de un disparador (de tipo FOR EACH ROW) no pueden Leer o actualizar una tabla mutante que esté en la propia declaración del disparador MUTATING TABLE ERROR RUNTIME ERROR BD Triggers 24
25 Tablas Mutantes: ejemplo CREATE OR REPLACE TRIGGER trigger_asignaturas BEFORE INSERT OR UPDATE ON asignaturas FOR EACH ROW DECLARE v_total NUMBER; v_nombre VARCHAR2(30); BEGIN SELECT COUNT(*)INTO v_total FROM asignaturas -- ASIGNATURAS está MUTANDO WHERE DNI = :NEW.DNI; -- comprueba si el profesor está sobrecargado IF v_total >= 10 THEN SELECT nombre ' ' apellidos INTO v_nombre FROM profesores WHERE DNI = :NEW.DNI; RAISE_APPLICATION_ERROR (-20000, El profesor ' v_nombre ', está sobrecargado'); END IF; EXCEPTION WHEN NO_DATA_FOUND THEN RAISE_APPLICATION_ERROR APPLICATION ERROR ( , Datos de profesor incorrectos'); END; BD Triggers 25
26 Tablas Mutantes: ejemplo UPDATE asignaturas SET DNI = WHERE asignaturas_id id = BD ; UPDATE section * ERROR at line 1: SELECT COUNT(*) INTO v_total FROM asignaturas WHERE DNI = :NEW.DNI; ORA-04091: table BD_XX.ASIGNATURAS is mutating, trigger/function may not see it ORA-06512: at "BD_XX.TRIGGER_ASIGNATURAS", G S" line 5 ORA-04088: error during execution of trigger 'BD_XX.TRIGGER_ASIGNATURAS' BD Triggers 26
27 Tablas Mutantes: solución Crear 2 disparadores En el disparador a nivel de fila (for each row) almacenamos los datosque queremos consultar (los que provocan el error de tabla mutante) En el disparador d a nivel lde orden (statement) t t t) realizamos la consulta (usando los datos almacenados) La mejor forma de almacenar los valores es utilizar un paquete (opcionalmente, podríamos utilizar una tabla) BD Triggers 27
28 Tablas Mutantes: solución En el trigger a nivel de fila guardaremos el DNI y el nombre del profesor Necesitamos 2 variables globales para que esos datos estén disponibles más adelante, al ejecutar el trigger a nivel de fila Por lo tanto, creamos un paquete que contendrá esas dos variables dos variables CREATE OR REPLACE PACKAGE pck_profesores AS END; v_dni_profesor profesor.dni%type; v_nombre_profesor varchar2(50); BD Triggers 28
29 Tablas Mutantes: solución En el cuerpo del trigger a nivel de fila usamos las variables del paquete para guardar el DNI y el nombre del profesor CREATE OR REPLACE TRIGGER trigger_asignaturas BEFORE INSERT OR UPDATE ON asignaturas FOR EACH ROW BEGIN IF :NEW.DNI IS NOT NULL THEN BEGIN pck_profesores.v_dni_profesor := :NEW.DNI; END; END IF; END; SELECT nombre ' ' apellidos INTO pck_profesores.v_nombre_profesor FROM profesores WHERE DNI = pck_profesores.dni; EXCEPTION WHEN NO_DATA_FOUND THEN RAISE_APPLICATION_ERROR(-20001, Datos de Profesor erroneos'); BD Triggers 29
30 Tablas Mutantes: solución TRIGGER a nivel de sentencia Ahora realizamos la consulta utilizando las variables globales CREATE OR REPLACE TRIGGER trigger _ asignaturas _ statement AFTER INSERT OR UPDATE ON asignaturas DECLARE BEGIN v_total INTEGER; SELECT COUNT(*) INTO v_total FROM asignaturas WHERE DNI = pck_profesores.v_dni_profesor; -- comprobamos si el profesor aludido está sobrecargado IF v_total t >= 10 THEN END; END IF; RAISE_APPLICATION_ERROR (-20000, 'El profesor, ' pck_profesores.v_nombre_profesor ', está sobrecargado'); BD Triggers 30
31 Tablas Mutantes: solución UPDATE asignaturas SET DNI = WHERE asignaturas_id id = BD ; UPDATE asignaturas * ERROR at line 1: ORA-20000: El profesor Carlos Romero está sobrecargado ORA-06512: at "BD_XX.TRIGGER_ASIGNATURAS_STATEMENT", line 11 ORA-04088: error during execution of trigger 'BD_ XX.TRIGGER_ ASIGNATURAS_ STATEMENT' BD Triggers 31
32 TRANSACCIONES y TRIGGERS Los cambios hechos en un TRIGGER deben ser comprometidos o deshechos con la transacción en la que se ejecutan SQL> CREATE TABLE tab1 (col1 NUMBER); Tabla creada. SQL> CREATE TABLE log (timestampt DATE, operacion VARCHAR2(2000)); Tabla creada. SQL> CREATE TRIGGER tab1_trig 2 AFTER insert ON tab1 3 BEGIN 4 INSERT INTO log VALUES (SYSDATE, 'Insert en TAB1'); 5 COMMIT; 6 END; 7 / Trigger created. SQL> INSERT INTO tab1 VALUES (1); INSERT INTO tab1 VALUES (1) * ERROR at line 1: ORA-04092: cannot COMMIT in a trigger ORA-06512: at BD_XX.TAB1_TRIG", line 3 ORA-04088: error during execution of trigger BD_XX.TAB1_TRIG' BD Triggers 32
33 TRANSACCIONES y TRIGGERS Se pueden utilizar autonomous transactions de manera que el TRIGGER se ejecute en su propia transacción SQL> CREATE OR REPLACE TRIGGER tab1_trig 2 AFTER insert ON tab1 3 DECLARE 4 PRAGMA AUTONOMOUS_TRANSACTION; 5 BEGIN 6 INSERT INTO log VALUES (SYSDATE, 'Insert on TAB1'); 7 COMMIT; 8 END; 9 / Trigger created. SQL> INSERT INTO tab1 VALUES (1); 1 row created. BD Triggers 33
34 TRANSACCIONES AUTÓNOMAS Se pueden utilizar autonomous transactions de manera que el TRIGGER se ejecute en su propia transacción CREATE OR REPLACE PROCEDURE Grabar_Log(descripcion VARCHAR2) IS PRAGMA AUTONOMOUS_TRANSACTION; BEGIN INSERT INTO LOG_APLICACION (CO_ERROR, DESCRIPICION, FX_ERROR) VALUES (SQ_ERROR.NEXTVAL, descripcion, SYSDATE); COMMIT; -- Este commit solo afecta a la transaccion autonoma END ; -- utilizamos el procedimiento desde un bloque DECLARE producto PRECIOS%TYPE; BEGIN producto := '100599'; INSERT INTO PRECIOS (CO_PRODUCTO, PRECIO, FX_ALTA) VALUES (producto, 150, SYSDATE); COMMIT; EXCEPTION WHEN OTHERS THEN Grabar_Log(SQLERRM); ROLLBACK; del END; -- Los datos grabados por "Grabar_Log" se escriben en la base de datos a pesar -- ROLLBACK, ya que el procedimiento está marcado como transacción autonoma. BD Triggers 34
35 Ejemplos Dada la siguiente relación: SOCIO (num_soc, nombre, direccion, telefono) Se desea mantener la información de los socios aunque estos se den de baja, para lo que se crea una tabla SOCIO_BAJA, que contiene los datos de socio y la fecha de baja y que se actualizará cada vez que se borre un socio SOCIO_BAJA (num_soc, nombre, direccion, telefono, fecha_baja) BD Triggers 35
36 Ejemplos CREATE OR REPLACE TRIGGER borrar_socio AFTER DELETE ON socio FOR EACH ROW / BEGIN INSERT INTO socio_baja VALUES (:OLD.num_soc, :OLD.nombre, :OLD.direccion, :OLD.telefono, SYSDATE); END borrar_socio; BD Triggers 36
37 Ejemplos Dadas las siguientes relaciones: PRODUCTO (cod_prod, descripción, proveedor, unid_vendidas) ALMACEN (cod_prod_s, _ stock, stock_min, stock_max) 1. Se desea mantener actualizado el stock del ALMACEN cada vez que se vendan unidades de un determinado producto p 2. Cuando el stock esté por debajo del mínimo lanzar un mensaje de petición de compra. Se indicará el número de unidades a comprar, según el stock actual y el stock maximo 3. Si el stock es menor que el mínimo stock permitido, impedir la venta BD Triggers 37
38 Ejemplos Dadaslassiguientes relaciones: PROFESOR (cod_prof) CLASE (cod_clase, cod_prof) Se define la siguiente vista: CREATE VIEW informe_profesores AS SELECT p.cod_prof, COUNT(c.cod_clase) total_clases FROM profesor p, clase c WHERE p.cod_prof = c.cod_prof (+) GROUP BY p.cod_prof; Se desea poderinvocar sentencias del tipo: DELETE FROM informe_profesores WHERE cod_prof = 109; BD Triggers 41
39 Disparadores en ORACLE Bibliografía Oracle Database Concepts 10g Release 2 (10.2) (Octubre 2005) Oracle Database Application Developer's Guide Fundamentals 10g Release 2 (10.2) (Noviembre 2005) Óscar Díaz Universidad del País Vasco (UPV) Bases de Datos Activas BD Triggers 43
Disparadores en ORACLE
Disparadores en ORACLE Bibliografía Oracle Database Concepts - 10g Release 2 (10.2) (Octubre 2005) Oracle Database Application Developer's Guide Fundamentals 10g Release 2 (10.2) (Noviembre 2005) Óscar
Más detallesBibliografía Oracle Database Concepts - 10g Release 2 (10.2) (Octubre 2005)
Disparadores en ORACLE Bibliografía Oracle Database Concepts - 10g Release 2 (10.2) (Octubre 2005) Oracle Database Application Developer's Guide Fundamentals 10g Release 2 (10.2) (Noviembre 2005) Óscar
Más detallesDisparadores 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 detallesDISPARADORES 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 detallesDISPARADORES EN SQL SINTAXIS GENERAL DE UN DISPARADOR EN SQL:2003
DISPARADORES EN SQL Modelos Avanzados de Bases de Datos Curso 2004/2005 SINTAXIS GENERAL DE UN DISPARADOR EN SQL:2003 CREATE [OR REPLACE] TRIGGER nombre [temporalidad del evento] [granularidad del evento]
Más detallesEscuela Técnica Superior de Ingeniería Informática Departamento de Lenguajes y Sistemas Informáticos. Triggers
Triggers Grupo de Ingeniería del Software y Bases de Datos Universidad de Sevilla octubre 2011 Introducción Objetivos de la práctica Conocer qué son los y para qué se utilizan Aprender a construir Consultar
Más detallesDiseñ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 detallesTriggers 27/11/2014. 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 noviembre 2012 Introducción Objetivos de la práctica Conocer qué son los y para qué se utilizan Aprender a construir
Más detallesSUBPROGRAMAS PL/SQL César Martínez C. Profesor Instructor de Base de Datos Sede Puente Alto DUOC
SUBPROGRAMAS PL/SQL César Martínez C. Profesor Instructor de Base de Datos Sede Puente Alto DUOC INTRODUCCIÓN Los subprogramas son otro tipo de bloques PL/SQL Se diferencian de los bloques anónimos porque
Más detallesPRÁ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 detallesSQL 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 detallesConcepto de vista. (con ciertas limitaciones). nivel físico) Una vista es una tabla virtual (no tiene una correspondencia a
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 detallesUn 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 detallesLenguaje SQL (2ª Parte) Definición de datos
Lenguaje SQL (2ª Parte) Definición de datos Bases de Datos Práctica 3 DSIC - UPV Facultad de Informática Escuela Técnica Superior de Informática Aplicada Objetivos Sintaxis del Lenguaje de Definición de
Más detalles2.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 detallesTema 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 detallesTriggers en PL/SQL. Jonathan Medina Gómez Facultad de Ingeniería Universidad de Antioquia
Triggers en PL/SQL Jonathan Medina Gómez Facultad de Ingeniería Universidad de Antioquia Triggers (Disparadores) Los triggers son bloques PL/SQL que se ejecutan de manera implícita cuando se están manipulando
Más detallesTema 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 detallesUso de Disparadores. Miguel Angel Garduño Cordova Isaac Méndez Hernández
Reporte Uso de Disparadores Catedrático: Alumnos: Ing. María Elena Reyes Castellanos Miguel Angel Garduño Cordova Isaac Méndez Hernández Índice General Índice de tablas 2 Introducción 4 Objetivo 4 Desarrollo
Más detallesDisparadores en Oracle (Ejemplos Prácticos)
Asignatura: Base de Datos Titulación: Ingeniería Informática Curso: 4º Disparadores en Oracle (Ejemplos Prácticos) Nota: Recuerde guardar los scripts, utilice para ello un editor de texto. Triggers DML
Más detallesLos disparadores pueden ser utilizados para cumplir con alguna de las siguientes tareas:
Guía de Disparadores Un disparador (o trigger) es un procedimiento almacenado asociado a una tabla que se ejecuta al realizar una operación básica (INSERT, un DELETE o un UPDATE) sobre ésta. La operación
Más detalles//Sección de manejo de excepciones. Las rutinas de manejo de errores //aparecen aqui
PL/SQL - Oracle PL/SQL (Procedural Language/SQL) es una extensión de SQL, que agrega ciertas construcciones propias de lenguajes procedimentales, obteniendose como resultado un lenguaje estructural mas
Más detallesPermite 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 detallesOtros 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 detallesUNIVERSIDAD 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 detallesMaestría en Bioinformática. Bases de Datos y Sistemas de Información SQL: DML. Ing. Alfonso Vicente, PMP
Maestría en Bioinformática Bases de Datos y Sistemas de Información SQL: DML Ing. Alfonso Vicente, PMP alfonso.vicente@logos.com.uy Agenda DML Sentencias Modificando la instancia Agenda DML Sentencias
Más detallesLaboratorio 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 detallesEXAMEN: 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 detallesLaboratorios 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 detallesPL/SQL. - La unidad de programación utilizada por PL/SQL es el bloque. - Todos los programas de PL/SQL están conformados por bloques.
PL/SQL - Disponible en http://www.lsi.us.es/docencia/get.php?id=5784 - Bibliografía:.Principios de Bases de Datos. Serrano, Sara Lana, Madrid E.U.I.T de Telecomunicación..Gestión de Bases de Datos. Framiñan
Más detallesPre-Taller Gestión de Privilegios de Usuarios 2. Manipulación de Vistas 3. Creación y manipulación de Triggers (Introducción al uso de PL/pgsql)
BASES DE DATOS Facyt-UC Pre-Taller 2 1. Gestión de Privilegios de Usuarios 2. Manipulación de Vistas 3. Creación y manipulación de Triggers (Introducción al uso de PL/pgsql) 1. Gestión de Privilegios de
Más detallesOracle PL/SQL. Programa de Estudio.
Oracle PL/SQL Programa de Estudio Oracle PL/SQL El alumno egresara del mismo con los conocimientos y destrezas necesarias para desempeñarse como desarrollador Oracle PL/SQL además de contar con los conocimientos
Más detallesRepaso. 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 detallesExamen de Bases de datos Grado de Ingeniería en Informática, Febrero, 2015
Examen de Bases de datos Grado de Ingeniería en Informática, Febrero, 2015 1) (3 puntos) El museo de la ciudad necesita gestionar las visitas guiadas de grupos y para ello se debe implementar una base
Más detallesE16 - Diseño de Sistemas de Bases de Datos Boletín 3
E16 - Diseño de Sistemas de Bases de Datos Boletín 3 Nombre: 1. Esta práctica está dedicada a la creación de disparadores sobre sentencias DDL (lenguaje de definición de datos) y sobre eventos de la Base
Más detallesÍ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 detalles1. 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 detallesProcedimientos almacenados en PL/SQL. Jonathan Medina Gómez Facultad de Ingeniería Universidad de Antioquia
Procedimientos almacenados en PL/SQL Jonathan Medina Gómez Facultad de Ingeniería Universidad de Antioquia Ventajas... Los bloques se pueden almacenar en forma permanente mediante subprogramas (funciones
Más detallesConceptos básicos de programación con PL/SQL
Conceptos básicos de programación con PL/SQL 1. Bloques PL/SQL 2. Tipos de Datos Estructurados 3. Funciones y Procedimientos 4. Paquetes 5. Disparadores de Base de Datos 1. Bloques PL/SQL 1.1 Introducción
Más detallesIntegridad 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 detallesConceptos 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Í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 detallesBases 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 detallesOracle Database: Programación con PL/SQL
Oracle University Contact Us: 0800-100-4183 & 0800-100-6854 Oracle Database: Programación con PL/SQL Duration: 5 Days What you will learn Este curso ofrece una introducción sobre PL/SQL y enumera la lista
Más detallesEnlaces relacionados: http://otn.oracle.com/tech/pl_sql/index.html
1.INTRODUCCION PL/SQL (Procedural Language ó Programming Language, según distintas fuentes, aunque la oficial es la primera) es el lenguaje utilizado por Oracle como extensión al SQL, y que nos va a permitir
Más detallesEl 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 detallesProcedimientos, 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 detallesAcceso 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 detallesMANUALITO MS-SQL SERVER
MANUALITO MS-SQL SERVER Contenido 1. Crear Store Procedures en MS SQL Server... 1 2. Crear Triggers en MS SQL Server... 5 3. Crear Vistas en MS SQL Server... 9 1. Crear Store Procedures en MS SQL Server
Más detallesFIREBIRD: 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 detallesHaga 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 detallesTema 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 detallesIntroducción al SQL de InterBase: DDL y DML
Artículos técnicos Grupo Danysoft: Introducción al SQL de InterBase: DDL y DML Segunda Parte Tercer Artículo Por Pablo Reyes Equipo Grupo Danysoft julio de 2002 - (902) 123146 www.danysoft.com Introducción
Más detallesSistemas 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 detallesConceptos básicos de programación con PL/SQL
Conceptos básicos de programación con PL/SQL 1. Bloques PL/SQL 2. Tipos de Datos Estructurados 3. Funciones y Procedimientos 4. Paquetes 5. Métodos asociados a tipos de objetos 6. Disparadores de Base
Más detallesIntroducción a PL/SQL
Introducción a PL/SQL Características de PL/SQL (Procedural Language/SQL): Combina la potencia y flexibilidad de SQL con la de un lenguaje 3GL: SQL es un Lenguaje de Cuarta Generación (4GL): El lenguaje
Más detallesRESTRICCIONES 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 detallesA.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 detallesLENGUAJE DE CONSULTA ESTRUCTURADO (SQL)
Qué es una base de datos? Una base de datos (cuya abreviatura es BD) es una entidad en la cual se pueden almacenar datos de manera estructurada, con la menor redundancia posible. Diferentes programas y
Más detallesLos paquetes tienen dos partes: una especificación y un cuerpo que están almacenados por separado en la base de datos.
8. PAQUETES DE BASE DE DATOS Los paquetes nos van a permitir agrupar conceptos PL/SQL como pueden ser tipos, procedimientos y funciones. Por ejemplo: una paquete de Contabilidad podrá contener procedimientos
Más detallesChecks, Triggers y Excepciones en InterBase: validando desde la base de datos
Checks, Triggers y Excepciones en InterBase: validando desde la base de datos Por Alfonso Ricaño Bringas InterBase nos permite validar los valores que ingresan a los campos, mediante las restricciones
Más detallesAdministración Básica de Oracle 10g. Prácticas sobre trabajos.
PRACTICAS. TRABAJOS. 1. Identificar los procesos de sistema operativo que corresponden a la base de datos, existe algún proceso coordinador de trabajos -cjqnnn- corriendo en la instancia?. homecursocurso01
Más detallesADMINISTRACIÓN DE BASE DE DATOS
SQL SERVER T-SQL QUERY s es ADMINISTRADOR GRÁFICO SGBD Elementos objetos Tablas Procedimientos Triggers Funciones Usuarios Permiso Roles Contraseñas Programas DTS (Data Transfer System) Exportación e Importación
Más detallesGUÍA DE TRABAJO GRADO 11. Media Fortalecida - SENA Programación de Software Ing. Néstor Raúl Suarez Perpiñan Página 1 de 6
Página 1 de 6 Tema: VISTAS Y DESENCADENADORES (TRIGGER) EN SQL SERVER Objetivo: Adquirir los conocimientos necesarios para desarrollar e implementar vistas y desencadenadores utilizando SQL Server I. VISTAS
Más detallesSQL (Structured Query Language)
SQL (Structured Query Language) El lenguaje de consulta estructurado o SQL (por sus siglas en inglés Structured Query Language) es un lenguaje declarativo de acceso a bases de datos relacionales que permite
Más detallesCaracterísticas del lenguaje SQL
Lenguaje SQL Características del lenguaje SQL Es el lenguaje estándar para realizar operaciones en bases de datos relacionales. Instrucciones: SELECT Consulta. Su implementación está basada en álgebra
Más detallesPráctica 4: Estudio del SGBD Oracle 10 Gestión de Transacciones
Práctica 4: Estudio del SGBD Oracle 10 El SGBD Oracle 10 Objetivos estudio de la gestión de transacciones. estudio de las estrategias para la comprobación de la integridad. estudio de las estrategias para
Más detallesSolución Ejercicio Prac. 3b (Esquema).
Solución Ejercicio Prac. 3b (Esquema). LIBRO(codlib, título, autores, temática, totalpres) CP= {codlib} VNN= {título} PRÉSTAMO(codlib, codsoc, fechapres, fechadev) CP= {codlib, fechapres} VNN= {codsoc}
Más detallesAccess SQL: DDL y DML. Una empresa de Ingeniería precisa una base de datos para la gestión de sus proyectos.
SGBD y SQL Access SQL: DDL y DML Ejercicio Una empresa de Ingeniería precisa una base de datos para la gestión de sus proyectos. Necesita almacenar información acerca de sus empleados y los proyectos en
Más detallesAdministración Básica de Oracle9i.
PRACTICAS. TRABAJOS (JOBS). 1. Identificar los procesos de sistema operativo que corresponden al proceso gestor de colas corriendo en la instancia. u01apporacleadmincurso01pfile (CURSO01)> ps -ef grep
Más detallesExamen de Bases de datos Grado de Ingeniería en Informática 3 de septiembre, 2015
Nombre: Examen de Bases de datos Grado de Ingeniería en Informática 3 de septiembre, 2015 1 (3 puntos Un parque de atracciones desea implementar una base de datos relacional que cumpla los siguientes requisitos:
Más detallesGBD 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 detallesTema 4. Manipulación de datos con SQL
Tema 4 Manipulación de datos con SQL Índice Tema 4 1. Inserción de registros. Consultas de datos anexados. 2. Modificación de registros. Consultas de actualización. 3. Borrado de registros. Consultas de
Más detallesÍNDICE INTRODUCCIÓN...17
ÍNDICE INTRODUCCIÓN...17 CAPÍTULO 1. ORACLE 11g Y EL GRID COMPUTING...19 1.1 CONCEPTO DE GRID COMPUTING...19 1.2 ORACLE GRID COMPUTING...20 1.2.1 Almacenamiento eficiente de la información...21 1.2.2 Utilización
Más detalles1. Introducción al PL/SQL 2. Conceptos Básicos de PL/SQL Estructura de Bloques Reglas y Convenciones del Lenguaje
Índice 1. Introducción al PL/SQL 2. Conceptos Básicos de PL/SQL Estructura de Bloques Reglas y Convenciones del Lenguaje Entrada y Salida de Datos 3. Variables de PL/SQL 4. Estructuras de Control 5. Cursores
Más detallesSe crean para conservar la integridad referencial y la coherencia entre los datos entre distintas tablas.
Triggers También llamados disparadores o desencadenadores, es un tipo de procedimiento almacenado que se ejecuta cuando se intenta modificar los datos de una tabla (o vista). Se definen para una tabla
Más detallesVISUALIZACIÓN DE DATOS A PARTIR DE VARIAS TABLAS
VISUALIZACIÓN DE DATOS A PARTIR DE VARIAS TABLAS Puede que al realizar una consulta necesitemos los datos producidos por otra consulta. Para realizar esto se pueden anidar varias sentencias select con
Más detallesGALA 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 detallesEstándares para la construcción de Sentencias SQL
Estándares para la construcción de Subgerencia Arquitectura & Innovación Grupo MDC Versión 1.0 Noviembre 2008 CONTROL DE LAS MODIFICACIONES Versión Descripción Autor Fecha Revisado por 1.0 Este documento
Más detallesGestión de nóminas diciembre 2011
Contexto del problema Una empresa ha decidido desarrollar un sistema de información cuyo objetivo principal es la gestión de las nóminas de sus empleados. Iniciado el estudio del dominio del problema,
Más detallesPL/PGSQL. Extensión "procedural" de SQL
PL/PGSQL Extensión "procedural" de SQL Pero primero triggers DROP TABLE producto cascade; CREATE TABLE producto( id int PRIMARY KEY, vendido timestamp); DROP FUNCTION modificacion() cascade; CREATE FUNCTION
Más detallesInteracción con el Servidor Oracle8. Copyright Oracle Corporation, 1998. All rights reserved.
5 Interacción con el Servidor Oracle8 Copyright Oracle Corporation, 1998. All rights reserved. Objetivos Al final de esta lección n usted podrá: Escribir correctamente una sentencia SELECT en PL/SQL Declarar
Más detalles3. El catálogo 26. Laboratorio de Bases de Datos
ÍNDICE Continuación SQL Índice 1. Continuación del SQL como DML (Lenguaje de Manipulación de Datos) 1 1.1. Inserción de datos................................. 1 1.2. Borrado de datos..................................
Más detallesSintaxis: CURSOR nombre_cursor[(param1 [IN] tipo1,... )] IS consulta ;
7. CONCEPTOS AVANZADOS DE CURSORES EXPLICITOS En este capítulo veremos algunas cosas bastante útiles respecto a los cursores explícitos, como pueden ser los cursores con parámetros (que nos permitirán
Más detallesSi queremos modificar la contraseña de sys, una vez que accedamos al sistema como sys, escribiremos la sentencia:
TRABAJANDO CON SQL*PLUS El objetivo de este tema es simplemente, hacer una revisión de los conceptos avanzados de SQL, para ello, empezaremos por ver como se accede a SQL*PLUS y como crear usuarios, para
Más detallesBases de Datos (Ingeniería Técnica en Informática de Sistemas)
Departamento de Lenguajes y Ciencias de la Computación Universidad de Málaga Bases de Datos (Ingeniería Técnica en Informática de Sistemas) Tema 2. Bases de Datos Relacionales: SQL E.T.S.I. Informática
Más detallesGESTORES 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 detallesOracle Database: Introducción a SQL
Oracle University Contact Us: 001-855-844-3881 Oracle Database: Introducción a SQL Duration: 5 Days What you will learn La comprensión de los conceptos básicos de las bases de datos relacionales garantiza
Más detallesProgramando con PL/SQL en una Base de Datos Oracle
Programando con PLSQL en una Base de Datos Oracle Instructor: Ing. Francisco Riccio. OCA Oracle Database Administrator 10g OCP Oracle Database Administrator 10g OCP Oracle Database Administrator 11g OCA
Más detallesFormato 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 detallesdepartamento NUMBER(3) FK (DEPARTAMENTOS.CODIGO) salario NUMBER(3) NOT NULL fecha_alta DATE NOT NULL jefe NUMBER(5) FK (EMPLEADOS.
7.- MANIPULACION DE DATOS El lenguaje de manipulación de datos (DML) es parte esencial del SQL. Si queremos actualizar, insertar o eliminar datos de la base de datos, tenemos que ejecutar una sentencia
Más detallesModulo I: Introducción Gestores de Bases De Datos
Modulo I: Introducción Gestores de Bases De Datos El SQL El SQL (Lenguaje de Consulta Estructurado Structure Query Language), es un lenguaje de consulta estructurado establecido claramente como el lenguaje
Más detallesSQL. (...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 detallesOracle básico (IV): Programación en PL/SQL
Oracle básico (IV): Programación en PL/SQL El lenguaje de programación de Oracle, llamado PL/SQL, es un lenguaje portable, procedural y de transacción muy potente y de fácil manejo, con las siguientes
Más detallesINSTITUTO TECNOLÓGICO SUPERIOR DE ESCÁRCEGA. Organismo público descentralizado de la administración. Pública del estado de Campeche
INSTITUTO TECNOLÓGICO SUPERIOR DE ESCÁRCEGA Organismo público descentralizado de la administración Pública del estado de Campeche SINTAXIS DE CREATE Y SUS TIPOS. QUE PRESENTA EDUARDO DAMIÁN DOMÍNGUEZ GUILLERMO
Más detallesTRIGGER LEONEL CADOSO ROMERO 1
TRIGGER Qué es un trigger o disparador o desencadenador para SQL server? Es una clase especial de procedimiento almacenado que se ejecuta automáticamente cuando se produce un evento en el servidor de bases
Más detallesIntegridad Referencial. Restricciones (constraints)
Integridad Referencial Restricciones (constraints) Integridad de Referencial Integridad referencial: asegura la integridad entre las llaves foráneas y primarias (relaciones padre/hijo). Existen cuatro
Más detallesBASE DE DATOS QUÉ ES UNA BASE DE DATOS?
BASE DE DATOS BASE DE DATOS QUÉ ES UNA BASE DE DATOS? Una base de datos se puede definir como un conjunto de información relacionada que se encuentra agrupada ó estructurada. Actualmente la mayoría de
Más detalles10 - Desencadenadores.
Objetivos: 10 - Desencadenadores. Automatizar procedimientos dentro de la base de datos, por medio de disparadores. Recursos: Microsoft SQL Server Management Studio Guías prácticas. Base de datos de ejemplo:
Más detallesGrandes volúmenes de datos Particionamiento. bases de datos
Grandes volúmenes de datos Particionamiento bases de datos Particionamiento. Introducción Problemas con tablas con gran volumen de registros: Tiempo de respuesta en las consultas Problemas de almacenamiento
Más detalles