Laboratorios de BASES DE DATOS. (I.T. Informática)
|
|
|
- Raquel Carrasco Montero
- hace 10 años
- Vistas:
Transcripción
1 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)
2 Base de datos de ejemplo EMPLEADOS (NOMBRE, APELLIDOS, NSS, FNAC, DIRECCION, SEXO, SALARIO, SUPERNSS, DEPNO) DEPARTAMENTOS (NOMBRE, DEPNO, JEFENSS, FJEFE) LOCALIZACIONES (DEPNO, LOCALIDAD) PROYECTOS (NOMBRE, PROYNO, LOCALIDAD, DEPNO) TRABAJAR (NSS, PROYNO, HORAS) FAMILIARES (NSS, NOMBRE, SEXO, FNAC, RELACION) BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 2
3 Bloque 4 Triggers. JDBC. BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 3
4 Triggers (disparadores) Un trigger define una acción que se ejecuta cuando ocurre un cierto evento en la base de datos. Los triggers se utilizan para extender las restricciones en la base de datos o para supervisar los cambios que ocurren sobre los datos. Su ejecución es transparente para el usuario. Los triggers pueden referenciar tablas distintas de aquella cuyas modificaciones disparan el trigger. BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 4
5 Triggers Los tipos de eventos que se pueden supervisar con triggers son INSERT, DELETE o UPDATE. La ejecución del trigger puede ser BEFORE o AFTER del evento que lo dispara. Para crear un trigger sobre una tabla son necesarios privilegios de modificación sobre dicha tabla y de creación de triggers. El cuerpo del trigger (código que se ejecuta) consiste en bloques PL/SQL. BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 5
6 PL/SQL PL/SQL (Procedural Language/SQL) extiende SQL mediante construcciones propias de los lenguajes procedurales. La consecuencia es que se dispone de un lenguaje estructural más potente que SQL. La estructura básica es el bloque. Cada bloque ejecuta una acción. Los bloques se pueden anidar. BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 6
7 PL/SQL La estructura de un bloque PL/SQL es: DECLARE /* Declaración de variables, tipos y subprogramas */ BEGIN /* Sección ejecutable: procedimientos y sentencias SQL */ /* Esta es la única parte cuya aparición es obligatoria */ EXCEPTION /* Aquí va la manipulación de errores */ END; BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 7
8 Triggers. PL/SQL. Para ejecutar un programa PL/SQL, el texto del programa debe ir seguido de: una línea con un punto (. ), y una línea con run. BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 8
9 Triggers. Tipos. Los triggers se pueden clasificar en función del nivel en que se ejecutan: Row-Level:» La claúsula FOR EACH ROW especifica que el trigger se debe ejecutar para cada fila afectada por el evento. Statement-Level:» De no incluirla, el trigger se ejecuta una única vez.» Se utilizan para reforzar la seguridad sobre los tipos de transacciones permitidos en las tablas. BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 9
10 Triggers Row-Level. Los triggers FOR EACH ROW pueden incluir una cláusula WHEN, que especifica una condición adicional que debe comprobarse antes de disparar el trigger. NO puede contener subconsultas. BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 10
11 Triggers. Tipos. Los triggers se pueden clasificar en función del momento en que se ejecuta: BEFORE:» Se ejecutan inmediatamente antes de la acción que los dispara. AFTER:» Se ejecutan inmediatamente después de la acción que los dispara. INSTEAD OF:» Se ejecutan en vez del evento que los dispara.» Sólo se pueden aplicar a vistas. BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 11
12 Triggers. Variables especiales. Las variables NEW y OLD están siempre disponibles para referirse a la nueva (después de la transacción) y vieja (previa a la transacción) tupla respectivamente. En el cuerpo del trigger, deben ir precedidas por dos puntos ( : ). Sin embargo, en la claúsula WHEN no es así.!! BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 12
13 Triggers. Creación. CREATE [OR REPLACE] TRIGGER <trigger_name> { BEFORE AFTER INSTEAD OF } { INSERT DELETE UPDATE [OF <column> [,<column>]...] } ON {<table> <view>} [ [REFERENCING { OLD AS <old_name> NEW AS <new_name>...] FOR EACH ROW [WHEN (<trigger_condition>)] ] <trigger_body> BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 13
14 Triggers. Creación. Dadas las tablas tabla1 y tabla2, insertar una tupla en tabla2 cada vez que se inserta en tabla1: CREATE TABLE TABLA1 (A INTEGER, B CHAR(10)); CREATE TABLE TABLA2 (C CHAR(10), D INTEGER);... CREATE TRIGGER trig1 AFTER INSERT ON TABLA1 FOR EACH ROW WHEN (NEW.a <= 10) BEGIN INSERT INTO TABLA2 VALUES (:NEW.b, :NEW.a); END trig1;. run; BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 14
15 Triggers. Restricciones específicas de ORACLE. ORACLE añade ciertas restricciones sobre los trigger_body: NO se puede modificar desde el trigger la misma tabla cuya modificación dispara el trigger. NO se puede modificar desde el trigger una tabla vinculada a la tabla del trigger por restricciones como las de clave foránea. BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 15
16 Triggers. Visualización y eliminación. Se puede obtener información sobre triggers en la tabla USER_TRIGGERS. select trigger_name from user_triggers; Los triggers pueden ser eliminados: drop trigger <trigger_name>; BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 16
17 Triggers. Visualización y eliminación. Los triggers pueden activarse/desactivarse: alter trigger <trigger_name> {disable enable}; alter table <table_name> enable all triggers; Es posible obtener los errores asociados con un trigger: show errors trigger <trigger_name>; BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 17
18 Triggers. Ejemplos. SQL> create trigger triggeruno 2 after insert on tabla1 3 begin 4 insert into tabla2 values ( T_mod, :new.a); 5 end; 6 / BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 18
19 Triggers. Ejemplos. SQL> create trigger triggeruno 2 after insert on tabla1 3 begin 4 insert into tabla2 values ( T_mod, 1); 5 end; 6 / BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 19
20 Triggers. Ejemplos. SQL> create trigger triggerdos 2 before insert or update of a on tabla1 3 for each row 4 begin 5 :new.a := :new.a * ; 6 end; 7 / BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 20
21 Triggers. Ejemplos. SQL> create trigger triggerdos 2 before insert or update of a on tabla1 3 for each row 4 begin 5 :new.b := UPPER(:new.b); 6 end; 7 / BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 21
22 Triggers. Ejemplos. SQL> create trigger triggertres 2 before insert or update of a on tabla1 3 for each row 4 declare var char(1); 5 error_tipo EXCEPTION; 6 begin 7 select b into var 8 from tabla1 where b<> A ; 9 if var = D then 10 RAISE error_tipo; 11 end if; 12 EXCEPTION 13 WHEN error_tipo THEN 14 raise_application_error(-20001, Tipo D ); 15 end; 16 / BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 22
23 Triggers. Propuesta. Crear un trigger tal que, cada vez que se modifique el jefe de un departamento, se actualice convenientemente el dato JEFENSS en la tabla EMPLEADOS. (Nota: Crear previamente las tablas EMPLEADOS Y DEPARTAMENTOS) BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 23
24 Triggers. Propuesta. Crear un trigger tal que, cada vez que se modifique el jefe de un departamento, se actualice convenientemente el dato JEFENSS en la tabla EMPLEADOS. SQL> create trigger actualizar_jefe 2 before insert or update of jefenss on departamentos 3 for each row 4 begin 5 update empleados 6 set supernss = :new.jefenss 7 where supernss = :old.jefenss; 8 end; 9 / BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 24
25 Triggers. Propuesta. Crear un trigger que, cada vez que un empleado abandone la empresa, elimine los datos sobre sus familiares. BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 25
26 Triggers. Propuesta. Crear un trigger que, cada vez que un empleado abandone la empresa, elimine los datos sobre sus familiares. SQL> create trigger borrar_familiares 2 before delete on empleados 3 for each row 4 declare 5 emp number; 6 begin 7 emp := :old.nss; 8 delete from familiares 9 where nss = emp; 10 end; 11 / BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 26
27 Triggers. Ejemplos (1). create table pedidos { codigo number, precio number, nifproveedor varchar2(9) not null, descripcion varchar2(20), fechaentrega date not null); create view pedidosretrasados as select numpedido, nifproveedor, retraso from pedidos where sysdate>fechaentrega; create trigger GestionPedidos instead of delete on pedidosretrasados for each row begin update pedidosretrasados set retraso= SI ; update pedidos set retraso= SI ; where pedidos.nifproveedor in (select nifproveedor from pedidosretrasados); end; / BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 27
28 Triggers. Ejemplos (1).... insert into pedidos (codigo, precio, nifproveedor, fechaentrega) values (1, 25000, R, 10-jan-2001 ); insert into pedidos (codigo, precio, nifproveedor, fechaentrega) values (2, 65000, R, 10-jan-2003 ); insert into pedidos (codigo, precio, nifproveedor, fechaentrega) values (3, 50800, R, 21-dec-2000 );... select * from pedidosretrasados; delete from pedidosretrasados; select * from pedidos; select * from pedidosretrasados; BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 28
29 Triggers. Ejemplos (2). create table categoria (id_categoria varchar(10)); create table empleado( nif varchar(9), nombre varchar(40), id_categoria varchar(10) not null); create table obra( id_obra varchar(40), localizacion varchar(40), jefe_obra varchar(9) not null, constraint obra_fk key (jefe_obra) references empleado(nif)); BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 29
30 Triggers. Ejemplos (2). REM Comprobar que el jefe que se asigna tiene la categoría adecuada create or replace trigger checkjefe before insert or update of jefe_obra on obra for each row declare cate varchar(9); begin select e.id_categoria into cate from empleado e where (e.nif= :new.jefe_obra); if cate!= Jefe Obra then raise_application_error( , Categoria inadecuada ); end if; end; / BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 30
31 Triggers. Ejemplos (3). create table facturas_enviadas ( Numfact varchar(10), Fecha date, Total number(10), CIF varchar(9)); create table facturas_no_pagadas( Numfact varchar(10), Fecha date, Total number(10), CIF varchar(9)); create trigger facturas_impagadas after insert on facturas_enviadas for each row begin insert into facturas_no_pagadas values (:new.numfact, :new.fecha, :new_total, :new.cif); end; / BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 31
32 API JDBC El API JDBC permite el acceso externo a una base de datos, integrando las sentencias SQL dentro de un entorno de programación general, mediante el uso de bibliotecas de rutinas que interactúan con la base de datos. BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 32
33 API JDBC Se escribe un programa en Java. Cuando se necesita interacturar con la base de datos, utilizando una biblioteca de rutinas, se abre una conexión con la base de datos. Mediante JDBC se envía código SQL a la base de datos, se procesan los resultados que la base devuelve. Cuando se ha terminado se cierra la conexión. BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 33
34 API JDBC Establecer una conexión. Antes de acceder a la base de datos, se debe tener una conexión abierta entre el programa (cliente) y la base de datos (servidor). Esto supone dos pasos: 1. Cargar el driver del vendedor Class.forName( oracle.jdbc.driver.oracledriver ) 2. Hacer la conexión Connection con = DriverManager.getConnection ( jdbc:oracle:thin:@duero:1521:oratuti ) BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 34
35 API JDBC Sentencias JDBC Se ha de utilizar un objeto Sentencia JDBC para enviar sentencias SQL al SGBD. Se necesita tener una conexión activa para crear estos objetos: Statement stmt = con.createstatement (); Ahora, existe el objeto stmt, pero, de momento, no tiene sentencias para pasar al SGBD. BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 35
36 API JDBC Sentencias CREATE/INSERT/UPDATE El método executeupdate de la clase Statement permite crear una tabla, modificar y borrarla. También, permite modificar las tuplas que pertenecen a la tabla. Como todos estos comandos cambian el estado de la base de datos, el nombre del método contiene un Update. stmt.executeupdate ( CREATE TABLE... ); stmt.executeupdate ( INSERT INTO... ); BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 36
37 API JDBC Sentencias SELECT En este caso, el resultado de una consulta es un conjunto de tuplas (una tabla) y no se modifica el estado de la base de datos. El método a utilizar es executequery, que devuelve como resultado rs, un objeto de la clase ResultSet. ResultSet rs = stmt.executequery ( SELECT... ); BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 37
38 API JDBC Sentencias SELECT Debemos poder acceder a cada fila y a cada atributo de ellas. La clase ResultSet proporciona un cursor que nos permite acceder a cada fila de la tabla. Al principio, el cursor está justo antes de la primera fila. Cada invocación del método next produce un avance a la siguiente fila. Con los métodos getstring y getfloat podemos acceder a los valores de las columnas. BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 38
39 API JDBC Sentencias SELECT while ( rs.next () ) { variable1 = rs.getstring ( Atributo1 ); variable2 = rs.getfloat ( Atributo2 );... } BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 39
40 API JDBC Manejo de Errores El cliente (programa) que accede al servidor (Base de Datos) necesita conocer si ha ocurrido algún error en el acceso a los datos. JDBC permite este control con dos condiciones de error: SQLException: son excepciones Java que pueden provocar el fin de la ejecución. SQLWarning: son subclases de SQLException, que no representan errores fatales. BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 40
41 API JDBC Manejo de Errores En Java, las sentencias de las que esperamos recoger una excepción o un aviso se encierran dentro de un bloque try. Si una sentencia del bloque try lanza una excepción, se puede tratar en la sentencia catch correspondiente. try { stmt.executeupdate ( CREATE TABLE... );...} catch (SQLException ex) { System.err.println ( Excepción de SQL...);} BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 41
42 API JDBC Un ejemplo completo: import java.sql.*; class Bases2 { public static void main(string s[]) { Connection connection = null; try { String drivername = "oracle.jdbc.driver.oracledriver"; String driverurl = "jdbc:oracle:thin:@duero:1521:oratuti"; String username = "estad48"; String pwd = "pass48"; BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 42
43 API JDBC try {// Cargar el controlador JDBC Class.forName(driverName); } catch (ClassNotFoundException e) { System.out.println("No encuentro la clase " + drivername); } // Establecer una conexión con la Base de Datos. connection = DriverManager.getConnection(driverURL, username,pwd); // Crear un objeto que usaremos para mandar "statements" al DBMS Statement stmt = connection.createstatement(); // Tenemos la conexión preparada => podemos trabajar sobre la BD BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 43
44 API JDBC // Crear una tabla y poblarla // 1. Comprobamos si la tabla ya existe. Si fuese así, la eliminamos. tabla ResultSet mistablas = stmt. executequery("select table_name while (mistablas.next()){ from user_tables"); if (mistablas.getstring(1).equals("tablajdbc")){ ntes de crearla }//if }//while System.out.println("La tabla ya existe => BORRAR"); stmt.executeupdate("delete tablajdbc"); // vaciar la stmt.executeupdate("drop table tablajdbc");//eliminarla BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 44
45 API JDBC // 2. Creamos la tabla stmt.executeupdate("create TABLE tablajdbc(" + "local VARCHAR2(40), producto VARCHAR2(40), precio REAL)"); // 3. La poblamos stmt.executeupdate("insert INTO tablajdbc VALUES" + "('Local1', 'Cerveza', 3.06)"); // Ejecutar consultas ResultSet rs = stmt. executequery("select * from tablajdbc"); // Mostramos los resultados (la 2º columna) while (rs.next()) System.out.println("Producto = " + rs.getstring(2)); BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 45
46 API JDBC // Cerramos el resultado, la operación y la conexión mistablas.close(); rs.close(); stmt.close(); connection.close(); } catch (SQLException e) { // Recogemos cualquier otra posibilidad: fallo en la conexión, // petición o recepción de información e.printstacktrace(); } } //main }//Bases BD (I.T.Informática) M. Martínez, C. Hernández, C. Cuesta 46
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 [email protected] Web www.lsi.us.es Diseño
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
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
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
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
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.
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
JDBC. Una mini-introducci. introducción
JDBC Una mini-introducci introducción Introducción JDBC (Java DataBase Connectivity) Protocolo para utilizar bases de datos relacionales desde Java Se basa en la utilización n de drivers que implementan
MANUALITO 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
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
Acceso a BD desde Java. JDBC
JDBC (Java DataBase Connectivity) es una interfaz para programar la ejecución de sentencias SQL sobre SGBDR El API JDBC facilita programar el acceso a BD sin que se tenga en cuenta a que Servidor nos dirigimos
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
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)
Triggers 24/12/2016. Escuela Técnica Superior de Ingeniería Informática Departamento de Lenguajes y Sistemas Informáticos. Triggers en Oracle
Triggers en Oracle Grupo de Ingeniería del Software y Bases de Datos Universidad de Sevilla Diciembre 2016 Introducción Objetivos de la práctica Conocer qué son los y para qué se utilizan Aprender a construir
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
[email protected] 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
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
PL/SQL. Con PL/SQL vamos a poder programar las unidades de programa de la base de datos Oracle:
PL/SQL (Procedural Language/Structured Query Language) PL/SQL es el lenguaje de programación que proporciona Oracle para extender el SQL estándar con otro tipo de instrucciones y elementos propios de los
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
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
DISPARADORES EN SQL DISPARADORES EN SQL:1999 SINTAXIS GENERAL DE UN DISPARADOR EN SQL:1999 SINTAXIS GENERAL DE UN DISPARADOR EN SQL:1999
DISPARADORES EN SQL:1999 DISPARADORES EN SQL Modelos Avanzados de Bases de Datos Un (trigger) es un procedimiento especial que se ejecuta en respuesta a un evento específico. Ej. Al aumentar el sueldo
ADMINISTRACIÓ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
T12 Vistas y tablas temporales
1 de 9 17/05/2013 14:01 Lecciones SQL > T12 Vistas y tablas temporales En esta sesión vamos a mostrar dos tipos de objetos de uso habitual en cualquier SGBD: las vistas y las tablas temporales. Mientras
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
- 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
Programación Orientada a Objetos II. La Plataforma JDBC
Programación Orientada a Objetos II La Plataforma JDBC Introducción a (JDBC) Java Database Connectivity El API JDBC permite acceder a cualquier tipo de datos tabulares y comúnmente se utiliza para acceder
Bases de datos relacionales y el modelo entidad-relación
Bases de datos relacionales y el modelo entidad-relación Qué es una base de datos relacional? El sistema gestor de bases de datos El modelo entidad-relación entidad, atributos y elementos (tablas, columnas
Disparadores 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
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 [email protected] DEFINICIÓN DE BASE DE DATOS Base de Datos es un conjunto de datos relacionados entre
Lic. Vladimir Cotaquispe Gutierrez PROGRAMACIÓN PL/SQL I - 1. Copyright 2008, Oracle. All rights reserved.
Lic. Vladimir Cotaquispe Gutierrez PROGRAMACIÓN PL/SQL I - 1 INTRODUCCIÓN PL/SQL: Lenguaje de programación procedimental estructurado en bloques que amplía el lenguaje estándar SQL. Permite: Manipular
Practica 11: Conexión de Java con Bases de datos Access
Practica 11: Conexión de Java con Bases de datos Access En esta práctica vamos a crear una base de datos Microsoft Access y luego vamos a conectarnos desde una aplicación java haciendo uso del puente JDBC-ODBC
Tutorial Oracle SQL Developer 1.2.1
Tutorial Oracle SQL Developer 1.2.1 Departamento de Informática Índice Í0. Introducción...3 1. Conexión y desconexión de la base de datos...3 2. Ejecución de sentencias SQL...4 3. Creación de tablas...6
NORMAS PARA LA ENTREGA DE LOS LABORATORIOS
Facultad de Ingeniería Escuela de Ingeniería de Sistemas y Computación Bases de Datos I - Laboratorio # 5 - SQL 3: Conexión de Programas Java con DBMS Entrega: Sábado, 29 de Noviembre de 2014 NORMAS PARA
Guía práctica de introducción básica a JDBC
Guía práctica de introducción básica a JDBC Programación Orientada a Objetos Universidad Autónoma de Manizales Instalar SQLite Descargar el paquete que corresponda con la versión binaria (Precompiled Binaries)
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 [email protected] Agenda Secuencias Triggers Vistas Código almacenado
Acceso a BDs en Java: JDBC
Acceso a BDs en Java: JDBC Bases de Datos II 1 Introducción Para hacer una aplicación de BDs en Java se necesita disponer del driver adecuado para el SGBD. En nuestro caso necesitamos el de mysql. http://dev.mysql.com/downloads/connector/j/3.0.html
Oracle 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
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.
Consultas con combinaciones
UNIDAD 1.- PARTE 2 MANIPULACIÓN AVANZADA DE DATOS CON SQL. BASES DE DATOS PARA APLICACIONES Xochitl Clemente Parra Armando Méndez Morales Consultas con combinaciones Usando combinaciones (joins), se pueden
Diseño de bases de datos
Departamento de Lenguajes y Sistemas Informáticos E.T.S. Ingeniería Informática. Universidad de Sevilla Avda Reina Mercedes s/n. 41012 Sevilla Tlf/Fax 954 557 139 E-mail [email protected] Web www.lsi.us.es
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
Está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
Iniciando con Oracle. Índice de contenido. Ingresando a Oracle. Cambiando Su Contraseña. Ingresando un Comando SQL en SQL*Plus
Iniciando con Oracle Índice de contenido Ingresando a Oracle...1 Cambiando Su Contraseña...1 Ingresando un Comando SQL en SQL*Plus...2 Saliendo de SQL*Plus...2 Consiguiendo Ayuda...2 Creación de una Tabla...3
Enlaces 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
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
APUNTES: APLICACIONES WEB BASADAS EN PHP Y MYSQL Página 1 de 5
APUNTES: APLICACIONES WEB BASADAS EN PHP Y MYSQL Página 1 de 5 APLICACIONES WEB BASADAS EN PHP Y MYSQL Una aplicación web es básicamente un programa escrito sobre una página web, generalmente en lenguaje
Bibliografí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
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
CONSULTAS BASICAS EN SQL SERVER
CONSULTAS BASICAS EN SQL SERVER CONSULTAS DE SELECCION Las consultas de selección se utilizan para indicar al motor de datos que devuelva información de las bases de datos, esta información es devuelta
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
Escuela 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
Java y MySQL. Ciclo de ejecución
Java y MySQL JDBC: Java DataBase Connectivity Cliente Servidor Aplicación Java Driver JDBC MySQL Conexión cliente-servidor MySQL Java Runtime Librerías JDBC El driver implementa las interfaces del paquete
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
Ejercicios - Persistencia en Android: ficheros y SQLite
Ejercicios - Persistencia en Android: ficheros y SQLite Índice 1 Uso de ficheros (0.5 puntos)...2 2 Persistencia con ficheros (0.5 puntos)...3 3 Base de datos: SQLiteOpenHelper (0.5 puntos)... 3 4 Base
Base de Datos JDBC. Unidad: 1 Laboratorio de Programación. Universidad Nacional de la Patagonia Austral Unidad Académica Río Gallegos
Base de Datos JDBC Unidad: 1 Laboratorio de Programación Universidad Nacional de la Patagonia Austral Unidad Académica Río Gallegos Indice Repaso clase anterior Sentencias preparadas PreparedStatement
TEMA 6: MODIFICACIÓN DE LA BASE DE DATOS EN SQL
TEMA 6: MODIFICACIÓN DE LA BASE DE DATOS EN SQL 5.6 MODIFICACIÓN DE LA BASE DE DATOS SQL posee comandos destinados también para modificar la base de datos, entre estos se tienen operaciones de borrado,
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
Sistemas de Datos Curso: Ernesto Chinkes. Subconsultas Stored Procedures - Triggers
Subconsultas Stored Procedures - Triggers Subconsultas Concepto Ubicación En el SELECT En el FROM En el WHERE Operadores IN ANY-ALL EXISTS Concepto Son sentencias SELECT que aparecen dentro de otra consulta
Microsoft SQL Server 2005
Microsoft SQL Server 2005 Módulo 1: Diseño y programación Estudia el servidor de bases de datos SQL Server 2005 desde el punto de vista de un diseñador y programador de bases de datos, prestando atención
El Lenguaje PL/SQL. Un lenguaje de propósito general orientado a la inclusión de sentencias SQL. Estructura del código PL/SQL.
Un lenguaje de propósito general orientado a la inclusión de sentencias SQL Estructura del código PL/SQL. Bloques: El Lenguaje PL/SQL sentencias PL/SQL Los ficheros terminan con el caracter
SQL (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
CURSORES EN SQL SERVER
Año del Centenario de Machu Picchu para el mundo CURSORES EN SQL SERVER Curso: IMPLEMENTACION DE BASE DE DATOS VII Ciclo Integrantes: Vásquez Paredes, Pablo Bustamante Auccasi, Janett Córdova Farfán, Carlos
Tópicos Avanzados de Programación (TAP3501)
DuocUC Tópicos Avanzados de Programación (TAP3501) Ariel Alexis Fierro Sáez [email protected] Uso JDBC en Java Uso JDBC en aplicaciones java Class.forName("driver") Cargar/Registrar el driver JDBC
BASE 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
10. JDBC. 10. JDBC Introducción. java.sql
10 JDBC 287 10 JDBC Introducción javasql JDBC(Java DataBase Connectivity), consiste en un conjunto de clases e interfaces Java que permiten desarrollar aplicaciones de acceso a Bases de Datos JDBC envía
Programación SQL. Lucio Salgado Diciembre 2008
Programación SQL Lucio Salgado Diciembre 2008 1 Gestionadores de Bases de Datos (DBMS) Es el software que permite administrar bases de datos, a través de ella el usuario puede usar los datos con mucha
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
Desarrollo de Software con
Desarrollo de Software con Antonio J. Vélez Q. Universidad del Valle Sede Palmira Requerimientos de Software Java 2 SE Development Kit java.sun.com/javase Java EE 5 SDK java.sun.com/javaee Netbeans (IDE)
Haga clic para PostgreS cambiar el estilo
Taller # 1 Uso y Manejo l Sistema Gestor Bases Datos PostgreSQL Luis García Computación [email protected] Contenido - Creación Tablas (Create Table...) ( Check Foreign Keys ) - Inserción Datos (Insert Into...)
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
Taller de Programación II J2EE
ᄎ INACAP Universidad Tecnológica de Chile Sede Santiago Centro Taller de Programación II J2EE Tema 03 Uso de las Bases de Datos con Java Ing. Manuel López R. Recordando conceptos sobre bases de datos...
Manual de NetBeans y XAMPP
Three Headed Monkey Manual de NetBeans y XAMPP Versión 1.0 Guillermo Montoro Delgado Raúl Nadal Burgos Juan María Ruiz Tinas Lunes, 22 de marzo de 2010 Contenido NetBeans... 2 Qué es NetBeans?... 2 Instalación
Los 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
Universidad Don Bosco. Materia: Programación Orientada a Objetos Contenido: Modificadores de Acceso y JDBC
Universidad Don Bosco CICLO: 01/2010 Materia: Programación Orientada a Objetos Contenido: Modificadores de Acceso y JDBC Protección de miembros de la clase ->El principio de ocultación de información se
Base de datos relacional
Base de datos relacional Una base de datos relacional es una base de datos que cumple con el modelo relacional, el cual es el modelo más utilizado en la actualidad para modelar problemas reales y administrar
Triggers. BASES DE DATOS Mercedes García Merayo
Triggers BASES DE DATOS Mercedes García Merayo Triggers Un trigger es código (PL/SQL) que se ejecuta automáticamente cuando se realiza una determinada acción sobre la base de datos. Tipos de triggers Triggers
Modulo 1 El lenguaje Java
Modulo 1 El lenguaje Java 13 - Codificación en Java Una de las grandes diferencias entre Java y Pascal en cuando a la codificación es que Java se trata de un lenguaje de los llamados case sensitive Esto
Programación Orientada a Objetos Analista Programador Universitario Plan 2008 Año 2010
INTRODUCCION Los objetos usados en aplicaciones JAVA mantienen su estado y comportamiento mientras la aplicación se halle en ejecución. Generalmente se necesita mantener el estado y comportamiento de los
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
LAS SUBCONSULTAS SQL SERVER 2005. Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE
LAS SUBCONSULTAS SQL SERVER 2005 Manual de Referencia para usuarios Salomón Ccance CCANCE WEBSITE LAS SUBCONSULTAS Una subconsulta es una consulta que aparece dentro de otra consulta o subconsultas, en
MySQL 5 (versiones 5.1 a 5.6) Guía de referencia del desarrollador
Prefacio 1. Objetivos de este libro 13 2. Principales temas tratados en este libro 13 3. A quién va dirigido este libro? 14 4. Requisitos 14 Introducción a MySQL 1. Introducción a las bases de datos relacionales
E16 - 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
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
1. DML. Las subconsultas
1.1 Introducción 1. DML. Las subconsultas Una subconsulta es una consulta que aparece dentro de otra consulta o subconsulta en la lista de selección, en la cláusula WHERE o HAVING, originalmente no se
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
6 - Recuperar algunos registros (where)
6 - Recuperar algunos registros (where) Hemos aprendido a seleccionar algunos campos de una tabla. También es posible recuperar algunos registros. Existe una cláusula, "where" con la cual podemos especificar
Manual del Protocolo XML-RPC de Mensajería Negocios
Manual del Protocolo XML-RPC de Mensajería Negocios Índice de contenidos 1 INTRODUCCIÓN... 3 2 FUNCIONALIDADES DEL API DE COMUNICACIÓN XML-RPC... 4 2.1 Envío Libre... 4 2.2 Envío a Grupo de Contactos...
Estándar de desarrollo de aplicaciones del Govern de les Illes Balears
Estándar de desarrollo de aplicaciones del Govern de les Illes Balears BASE DE DATOS Versión 5.0 Fecha Revisión: 28/05/09 Índice de contenidos INTRODUCCIÓN... 3 NOMENCLATURA DE BASE DE DATOS... 4 2.1.
UNIVERSIDAD DON BOSCO FACULTAD DE ESTUDIOS TECNOLÓGICOS
UNIVERSIDAD DON BOSCO FACULTAD DE ESTUDIOS TECNOLÓGICOS CICLO: 01/ 2015 Nombre de la Practica: Lugar de Ejecución: Tiempo Estimado: MATERIA: DOCENTES: GUIA DE LABORATORIO #12 USO DE JDBC Laboratorio de
Base de datos Procedimientos Almacenados y Funciones
Base de datos Procedimientos Almacenados y Eduardo Saavedra A. Universidad Nacional Andrés Bello 4 de noviembre de 2008 Contenidos Ventajas 1 Ventajas 2 3 4 5 Conceptos Ejemplo 6 Procedimiento Almacenado
El lenguaje de manipulación de datos (DML) es una parte fundamental de SQL.
GUIA DE LABORATORIO # 5 Nombre de la Practica: Manipulación de datos Lugar de ejecución: Centro de Computo MATERIA: Base de Datos II CICLO: 02-2012 I. OBJETIVOS ESPECIFICOS Qué el estudiante: Manipule
Tema 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
GESTIÓN DE EXCEPCIONES EN JAVA. CAPTURA CON BLOQUES TRY CATCH Y FINALLY. EJEMPLOS RESUELTOS. (CU00927C)
APRENDERAPROGRAMAR.COM GESTIÓN DE EXCEPCIONES EN JAVA. CAPTURA CON BLOQUES TRY CATCH Y FINALLY. EJEMPLOS RESUELTOS. (CU00927C) Sección: Cursos Categoría: Lenguaje de programación Java nivel avanzado I
Í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
Uso de excepciones en Java
Uso de excepciones en Java En Java, cuando se produce un error en un método, se lanza un objeto Throwable. Cualquier método que haya llamado al método puede capturar la excepción y tomar las medidas que
Trabajos de Ampliación. Bases de datos NoSQL.
BASES DE DATOS NoSql Son bases de datos pensadas para aplicaciones que hagan un uso intensivo de la misma. Estas bases de datos permiten una mayor flexibilidad y facilidad a la hora de introducir los datos
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
COMANDOS DE SQL, OPERADORES, CLAUSULAS Y CONSULTAS SIMPLES DE SELECCIÓN
COMANDOS DE SQL, OPERADORES, CLAUSULAS Y CONSULTAS SIMPLES DE SELECCIÓN Tipos de datos SQL admite una variada gama de tipos de datos para el tratamiento de la información contenida en las tablas, los tipos
LENGUAJE DE CONSULTA ESTRUCTURADO - SQL CONTENIDO
LENGUAJE DE CONSULTA ESTRUCTURADO - SQL 1. TIPOS DE DATOS 2. COMANDOS DDL 2.1 Créate 2.2 Drop 2.3 Alter 3. COMANDOS DML 3.1 Select 3.2 Insert 3.3 Update 3.4 Delete 4. CLAUSULAS 4.1 From 4.2 Where 4.3 Having
