Diseño de bases de datos

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

Download "Diseño de bases de datos"

Transcripción

1 Departamento de Lenguajes y Sistemas Informáticos E.T.S. Ingeniería Informática. Universidad de Sevilla Avda Reina Mercedes sn Sevilla TlfFax [email protected] Web Diseño de Bases de Datos e.t.s. ingeniería informática Diseño de bases de datos Anexo B Sevilla, febrero 2007 V

2 Indice 1 INTRODUCCIÓN DISEÑO Y RENDIMIENTO ESTRUCTURA DEL LENGUAJE USO DE VARIABLES Declaración de variables Tipos de variables La propiedad %TYPE La propiedad %ROWTYPE ESTRUCTURAS DE CONTROL Control Condicional: Control Iterativo:...6 EJERCICIO EJERCICIO EJERCICIO EJERCICIO EJERCICIO EJERCICIO Pág. 2 de 8

3 1 Introducción. es un lenguaje procedural propietario de Oracle. Combina: la potencia de definición y manipulación de datos de SQL la potencia de procesamiento de los lenguajes procedurales. Tiene estructuras de bloques; las unidades básicas de un programa son bloques lógicos. [ * comienza parte de declaraciones *...Declaraciones de objetos] * comienza parte ejecutable *...Comandos y Sentencias SQL y [EXCEPTION * comienza parte de tratamiento excepciones *...Tratamiento de excepciones] Un bloque puede ser un bloque anónimo, un procedimiento o una función. La estrategia de diseño es la modularidad; reducir la complejidad del problema dividiendo el problema en problemas más simples y fáciles de implementar (definición de procedimientos y funciones almacenados) 1.1 Diseño y rendimiento. Diseñando las aplicaciones en base a una librería de subprogramas almacenados, podemos eliminar el Código Redundante e incrementar la Productividad. Así mismo, se reduce la probabilidad de que existan errores en el código aumentando la Integridad y Consistencia de las aplicaciones. Al crear un procedimiento, función ó package, Oracle automáticamente lo compila y el código objeto lo carga en una área de memoria compartida de la SGA. Así mismo, cuando se dispara un trigger y el código objeto no está en la SGA, Oracle lo compila y carga el código objeto en la SGA. Si varios usuarios invocan un procedimiento ó función que está cargado en la SGA ó disparan un trigger, no son necesarios accesos a disco ni hay que cargar el código objeto en un área de la SGA distinta para cada usuario. Por tanto, mejora en Funcionamiento y Concurrencia de las aplicaciones y los Requerimientos de Memoria son menores. 2 Estructura del lenguaje. Contiene las siguientes estructuras: Control condicional : (IF.. ). Control iterativo: (Bucles FOR, WHILE, LOOP) Anidamiento de bloques. Control robusto de errores. Excepciones Variables y constantes. Funciones Pág. 3 de 8

4 incorpora las sentencias DML (INSERT, UPDATE, DELETE) y las sentencias SELECT de SQL. permite obtener variables y constantes basadas en el tipo de dato actual de columnas de la base de datos, o referenciar estructuras completas de filas de una tabla. 2.1 Uso de variables. Las variables se declaran y se pueden inicializar en la sección declarativa de un bloque. Permiten pasar valores a un subprograma mediante parámetros. Existen tres formas: IN El valor viene del proceso de llamada (es un dato de entrada y su valor no se cambia). Es el valor por defecto. OUT En una salida de programa sin error, el valor del argumento es devuelto al proceso de llamada. IN OUT Es una variable de entradasalida Declaración de variables. La sintaxis para la declaración de variables es: Nombre_variable [CONSTANT] tipo_de_dato [NOT NULL] [ := DEFAULT expresión] CONSTANT Declara la variable como constante. Su valor no puede cambiar. Debe ser inicializada. Departamento VARCHAR2(10) NOT NULL := C1 ; Valor CONSTANT NUMBER(2) := 12; Fecha_nac DATE; Fecha_contrato DATE DEFAULT SYSDATE; Tipos de variables. Los tipos de datos de las variables son: Escalar, Compuesto y LOB Existen otras variables que no son y podemos clasificar en: variables BIND y variables HOST. Variables tipo escalar. BINARY-INTEGER Almacena enteros con signo.subtipos:natural, POSITIVO NUMBER [(precisión, escala)]. Almacena números con punto fijo o flotante CHAR [(longitud máxima)]. Almacena cadenas de caracteres de longitud fija. VARCHAR2 (longitud máxima). Almacena cadenas de caracteres de longitud variable. LONG Almacena cadenas de caracteres de longitud variable. RAW. Almacena datos binarios. LONG RAW. Almacena datos binarios. BOOLEAN. Almacena TRUE, FALSE o NULL. DATE. Almacena valores de fecha. ROWID. Dirección física de una fila de la BD Tipo compuesto. Los tipos compuestos son las tablas y registros definidos por el usuario, tablas anidadas y varrays. Variables HOST. Son variables que se declaran por ej. en SQL*Plus y se utilizan en bloques. Para utilizarlas en tienen que llevar como prefijo dos puntos (:). Pág. 4 de 8

5 2.1.3 La propiedad %TYPE. Declara una variable basada en: El tipo de dato de otra variable declarada previamente. El tipo de dato de una columna de una tabla. Cuando se declara una variable para contener los valores de una columna de una tabla, es necesario asegurar que la variable es del mismo tipo y precisión que los datos que va a contener. De no ser así se producirá un error de ejecución. Para utilizar el atributo %TYPE en lugar de un tipo de dato en la declaración de la variable, se añade %TYPE al nombre de la columna o al nombre de la variable previamente declarada. Sintaxis: <nom_variable propietario.tabla.columna%type>; <nombre_variable variable_%type> ; Ejemplos: w_departamento dept.dept_no%type ; total NUMBER(6) := 1000 ; total_mensual total%type ; Reduce el mantenimiento de programas La propiedad %ROWTYPE. Declara una variable registro, que representa una fila en una tabla o vista. Las columnas de la fila, y los nombres de los campos de la variable registro, tienen los mismos nombres y tipos de datos. Sintaxis: <nombre_variable_registro propietario.tabla%rowtype> ; Ej.: EMP_REC EMP%ROWTYPE ;.. SELECT * INTO EMP_REC FROM EMP.. END ; Para hacer referencia a un campo: Ej.: EMP_REC.ename := José ; nombre_variable_registro.nombre_columna Es más útil utilizar %ROWTYPE que una variable tipo registro definido por el usuario ya que de está forma no es necesario conocer el número y tipo de datos de la tabla subyacente y evita hacer modificaciones cuando la estructura de la tabla cambie. Pág. 5 de 8

6 2.2 Estructuras de control Control Condicional: IF THEN ; IF THEN ELSE; IF THEN ELSIF IF tipo_transacción = A THEN UPDATE cuentas SET.. ; ELSE UPDATE.. SET.. ; ENDIF; Control Iterativo: Repite un número de veces un conjunto de sentencias Estructura repetitiva básica. LOOP <sentencias> EXIT WHEN <condición de salida> <sentencias> END LOOP LOOP INSERT INTO EMP (nombre, salario) VALUES (nombre_emp(i), salario_emp(i)); i := i+1; EXIT WHEN i > 3; Esquema WHILE WHILE <condición de permanencia> LOOP <sentencias> END LOOP Bucle FOR numérico con indicación de rango FOR <variable> IN [REVERSE] <r_mín.><r_máx> LOOP <sentencias> Bucle WHILE WHILE i < 4 LOOP INSERT INTO EMP (nombre, salario) VALUES (nombre_emp(i), salario_emp(i)); i := i+1; FOR i IN 1..3 LOOP INSERT INTO EMP (nombre, salario) VALUES (nombre_emp(i), salario_emp(i); i := i+1; Pág. 6 de 8

7 Ejercicio 1. Crear un bloque que muestre el máximo número de departamento. VARIABLE g_dep_max NUMBER dep_max NUMBER; SELECT max(deptno) INTO dep_max FROM dept; :g_dep_max := dep_max; PRINT g_dep_max Solución b) SET SERVEROUTPUT ON dep_max NUMBER; SELECT max(deptno) INTO dep_max FROM dept; dbms_output.put_line(to_char (dep_max)); Ejercicio 2. Crear un bloque que borre los empleados del departamento 10. Mostrar el número total de registros borrados. SET VERIFY OFF VARIABLE g_resulta VARCHAR2(40) resulta VARCHAR2(40); DELETE FROM emp WHERE deptno = 10; resulta := SQL%ROWCOUNT; :g_resulta := (TO_CHAR(resulta) 'filas borradas.'); COMMIT; SET VERIFY ON PRINT g_resulta Solución b) SET VERIFY OFF SET SERVEROUTPUT ON resulta VARCHAR2(40); DELETE FROM emp WHERE deptno = 10; resulta := SQL%ROWCOUNT; dbms_output.put_line(to_char(resulta) 'f. borradas'); COMMIT; Pág. 7 de 8

8 Ejercicio 3. Añadir un campo llamado estrellas VARCHAR2(100) a la tabla de empleados. ALTER TABLE emp ADD estrellas VARCHAR2(100) Para el empleado número 1 (empno = 1) añadir al campo estrellas un asterisco por cada 100 $ de su salario. SET VERIFY OFF v_empno emp1.empno%type; v_asteri emp1.estrellas%type := NULL; v_sal emp1.sal%type; COMMIT; SET VERIFY ON SELECT NVL(ROUND(sal100), 0) INTO v_sal FROM emp1 WHERE empno = 1; FOR i IN 1..v_sal LOOP v_asteri := v_asteri '*'; UPDATE emp1 SET estrellas = v_asteri WHERE empno = 1; Ejercicio 4. Crear una tabla (tabla1) con una sola columna (valor). Insertar registros en la tabla mediante un contador que se va incrementando y toma valores desde 1 hasta 10. V_contador INTEGER :=1; LOOP INSERT INTO tabla1 (Valor) VALUES (V_contador); V_contador :=V_contador +1; EXIT WHEN V_contador =10; Ejercicio 5. Modificar el ejercicio anterior utilizando un BUCLE WHILE. Ejercicio 6. Modificar el ejercicio anterior utilizando un BUCLE FOR. Pág. 8 de 8

Introducción a PL/SQL

Introducción a PL/SQL 22/11/2016 Grupo de Ingeniería del Software y Bases de Datos Departamento de Lenguajes y Sistemas Informáticos Universidad de Sevilla Noviembre 2014 Objetivos de este tema Conocer el lenguaje procedimental

Más detalles

Diseño de bases de datos

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

Más detalles

Introducción a PL/SQL

Introducción a PL/SQL Introducción a PL/SQL Grupo de Ingeniería del Software y Bases de Datos Departamento de Lenguajes y Sistemas Informáticos Universidad de Sevilla noviembre 2011 Objetivos de este tema Conocer PL/SQL. PL/SQL

Más detalles

Declaración de Variables. Copyright Oracle Corporation, All rights reserved.

Declaración de Variables. Copyright Oracle Corporation, All rights reserved. 3 Declaración de Variables Copyright Oracle Corporation, 1998. All rights reserved. Objetivos Al completar esta lección, debería a ser capaz de hacer lo siguiente: Reconocer las bases del bloque PL/SQL

Más detalles

PRÁCTICA T2. El lenguaje procedural PL/SQL de Oracle

PRÁCTICA T2. El lenguaje procedural PL/SQL de Oracle 3º Ingeniero Técnico en Informática de Sistemas Asignatura: Fundamentos de Bases de Datos Curso: 2007/8 PRÁCTICA T2. El lenguaje procedural PL/SQL de Oracle Objetivos Conocer los conceptos y estructuras

Más detalles

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

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

Más detalles

INTRODUCCIÓN A PL/SQL

INTRODUCCIÓN A PL/SQL PRÁCTICA: 8. INTRODUCCIÓN A PLSQL OBJETIVOS: Conocer los fundamentos básicos de PLSQL y aprender los componentes principales de un bloque PLSQL. MATERIAL: ORACLE 9i versión para WINDOWS XP BIBLIOGRAFIA:

Más detalles

Introducción a Oracle PL / SQL 12c

Introducción a Oracle PL / SQL 12c ORACLE PL / SQL 12C a Oracle PL / SQL 12c 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 detalles

//Sección de manejo de excepciones. Las rutinas de manejo de errores //aparecen aqui

//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 detalles

Oracle PL/SQL. Programa de Estudio.

Oracle 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 detalles

GUIA 3 PARTE II. Introducción a PL/SQL

GUIA 3 PARTE II. Introducción a PL/SQL GUIA 3 PARTE II Introducción a PL/SQL PL/SQL proviene de Procedural Language (lenguaje procedural)/ Structured Query Language (Lenguaje de consulta estructurado). PL/SQL ofrece un conjunto de comandos

Más detalles

Cadena de caracteres Numéricas Fecha y hora Booleanas Tipo registro Tipo cursor

Cadena de caracteres Numéricas Fecha y hora Booleanas Tipo registro Tipo cursor Cadena de caracteres Numéricas Fecha y hora Booleanas Tipo registro Tipo cursor Declaración de variables Inicialización de variables Declaración de constantes Asignación de valores a variables Tipo Nombre_var

Más detalles

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

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

Más detalles

Oracle Database 12c SQL and PLSQL Fundamentals

Oracle Database 12c SQL and PLSQL Fundamentals Oracle Database 12c SQL and PLSQL Fundamentals DESCRIPCION MODULOS DE CAPACITACION Introducción Información general sobre 12c de base de datos Oracle y productos afines Descripción de los conceptos y la

Más detalles

Triggers. BASES DE DATOS Mercedes García Merayo

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

Más detalles

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

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

Más detalles

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

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

Más detalles

Introducción a SQL (DDL)

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

Más detalles

Unidad 6. Procedimientos Almacenados y Disparadores

Unidad 6. Procedimientos Almacenados y Disparadores Unidad 6 Procedimientos Almacenados y Disparadores Disparadores (Triggers) Características Los disparadores solo ocurren cuando se presentan determinados eventos Los tipos de eventos permitidos suelen

Más detalles

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

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

Más detalles

PL/SQL. Con PL/SQL vamos a poder programar las unidades de programa de la base de datos Oracle:

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

Más detalles

Lenguaje PL/SQL. Instrucciones de Repetición

Lenguaje PL/SQL. Instrucciones de Repetición Lenguaje PL/SQL Instrucciones de Repetición Instrucciones de repetición Los LOOPs repiten una secuencia de instrucciones varias veces. Los tipos son: Loop básico: Acciones repetitivas sin condición. Loop

Más detalles

Triggers (o disparadores) Definición y sintaxis

Triggers (o disparadores) Definición y sintaxis Triggers (o disparadores) Definición y sintaxis Son bloques PL/SQL almacenados asociados a una tabla que se ejecutan o disparan automáticamente cuando se producen ciertos eventos sobre la tabla (inserción,

Más detalles

Funciones, procedimientos y cursores en Oracle

Funciones, procedimientos y cursores en Oracle Funciones, procedimientos y cursores en Oracle Grupo de Ingeniería del Software y Bases de Datos Departamento de Lenguajes y Sistemas Informáticos Universidad de Sevilla Noviembre 2013 Funciones, procedimientos,

Más detalles

El Lenguaje PL/SQL. Un lenguaje de propósito general orientado a la inclusión de sentencias SQL. Estructura del código PL/SQL.

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

Más detalles

Para procesar instrucciones SELECT que devuelvan más de una fila, son necesarios cursores explicitos combinados con un estructura de bloque.

Para procesar instrucciones SELECT que devuelvan más de una fila, son necesarios cursores explicitos combinados con un estructura de bloque. Base de datos II. Guía 8 1 Facultad: Ingeniería Escuela: Computación Asignatura: Base de datos II Tema: Cursores Objetivo Conocer la definición y utilización de los cursores Materiales Oracle 12 c Guía

Más detalles

GBD Diseño físico de DDBB

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

Más detalles

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 [email protected] Web www.lsi.us.es Diseño

Más detalles

SUBPROGRAMAS 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 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 detalles

Escuela Técnica Superior de Ingeniería Informática Departamento de Lenguajes y Sistemas Informáticos. Triggers

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

Más detalles

PRÓLOGO... XI CAPÍTULO 1. FUNDAMENTOS DEL LENGUAJE PL/SQL.

PRÓLOGO... XI CAPÍTULO 1. FUNDAMENTOS DEL LENGUAJE PL/SQL. ÍNDICE PRÓLOGO... XI CAPÍTULO 1. FUNDAMENTOS DEL LENGUAJE PL/SQL. 1 Introducción... 1 Unidades léxicas... 7 Tipos de datos... 11 Declaración de variables... 15 CAPÍTULO 2. ESTRUCTURAS DE CONTROL 21 Introducción...

Más detalles

Departamento de Lenguajes y Sistemas Informáticos

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

Más detalles

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. 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

Más detalles

TIPOS COMPUESTOS. Pueden contener varios valores, a diferencia de los tipos escalares. Existen dos tipos:

TIPOS COMPUESTOS. Pueden contener varios valores, a diferencia de los tipos escalares. Existen dos tipos: TIPOS COMPUESTOS Pueden contener varios valores, a diferencia de los tipos escalares. Existen dos tipos: Registros PL/SQL : Almacenan elementos de distintos tipos (Similar a una struct en C) Colecciones

Más detalles

Manual de desarrollo en PL/SQL

Manual de desarrollo en PL/SQL Published on Marco de Desarrollo de la Junta de Andalucía (http://madeja.i-administracion.juntaandalucia.es/servicios/madeja) Manual de desarrollo en PL/SQL Área: Especificaciones de Codificación y Construcción

Más detalles

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

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

Más detalles

Oracle Database 11g: Conceptos Fundamentales de SQL y PL/SQL Nuevo

Oracle Database 11g: Conceptos Fundamentales de SQL y PL/SQL Nuevo Oracle University Contacte con nosotros: 902 302 302 Oracle Database 11g: Conceptos Fundamentales de SQL y PL/SQL Nuevo Duración: 5 Días Lo que aprenderá En este curso, los estudiantes aprenderán los conceptos

Más detalles

PRÓLOGO... XI CAPÍTULO 1. FUNDAMENTOS DEL LENGUAJE PL/SQL.

PRÓLOGO... XI CAPÍTULO 1. FUNDAMENTOS DEL LENGUAJE PL/SQL. ÍNDICE PRÓLOGO... XI CAPÍTULO 1. FUNDAMENTOS DEL LENGUAJE PL/SQL. 1 Introducción... 1 Unidades léxicas... 7 Tipos de datos... 11 Declaración de variables... 15 CAPÍTULO 2. ESTRUCTURAS DE CONTROL 21 Introducción...

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

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

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

Más detalles

Existen dos tipos de disparadores que se clasifican según la cantidad de ejecuciones a realizar:

Existen dos tipos de disparadores que se clasifican según la cantidad de ejecuciones a realizar: Trigger Un trigger(o desencadenador) es una clase especial de procedimiento almacenado que se ejecuta automáticamente cuando se produce un evento en el servidor de bases de datos. Los triggers o disparadores

Más detalles

Examen de Ficheros y bases de datos Convocatoria de junio II PARCIAL

Examen de Ficheros y bases de datos Convocatoria de junio II PARCIAL Examen de Ficheros y bases de datos Convocatoria de junio II PARCIAL ) 3 puntos) Considérese un fichero secuencial con un índice con asociación estática. El índice es primario y está organizado sobre una

Más detalles

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

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

Más detalles

Triggers 27/11/2014. Escuela Técnica Superior de Ingeniería Informática Departamento de Lenguajes y Sistemas Informáticos. Triggers en Oracle

Triggers 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 detalles

Procedimientos 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 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 detalles

Administración de sistemas gestores de bases de datos

Administración de sistemas gestores de bases de datos Administración de sistemas gestores de bases de datos S TAR BOOK Pablo Valderrey Sanz Administración de sistemas gestores de bases de datos Pablo Valderrey Sanz Contenido Capítulo 1. Tipos de almacenamiento

Más detalles

Cursores Explícitos. Copyright Oracle Corporation, All rights reserved.

Cursores Explícitos. Copyright Oracle Corporation, All rights reserved. 8 Cursores Explícitos Copyright Oracle Corporation, 1998. All rights reserved. Objetivos Al final de esta lección, usted podrá: Distinguir entre un cursor explícito y otro implícito Utilizar una variable

Más detalles

Lenguaje SQL (2ª Parte) Definición de datos

Lenguaje 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 detalles

Bases de Datos 2: Procedimientos Almacenados, Funciones y Triggers. Tecnólogo en Informática, sede Paysandú Bases de Datos 2

Bases de Datos 2: Procedimientos Almacenados, Funciones y Triggers. Tecnólogo en Informática, sede Paysandú Bases de Datos 2 Bases de Datos 2: Procedimientos Almacenados, Funciones y Triggers Tecnólogo en Informática, sede Paysandú Bases de Datos 2 Funciones Variables Declarar: DECLARE @ Asignar valor:

Más detalles

Triggers. Carmen Hernández Triggers y PL/SQL 2

Triggers. Carmen Hernández Triggers y PL/SQL 2 Triggers y PL/SQL Triggers Un trigger (disparador) define una acción que la base de datos siempre debería realizar cuando ocurre algún tipo de acontecimiento que la afecta. Se utilizan para mantener la

Más detalles

Introducción al lenguaje PL/SQL

Introducción al lenguaje PL/SQL Introducción al lenguaje PL/SQL Diseño de Bases de Datos y Seguridad de la Información PL/SQL-1 Índice 1. Introducción al PL/SQL 2. Conceptos Básicos de PL/SQL Estructura de Bloques Reglas y Convenciones

Más detalles

Tema 5. Lenguaje de Definición de Datos

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

Más detalles

UNIDAD DE TRABAJO 3: PROGRAMACIÓN DE BASES DE DATOS TEMA 8: INTRODUCCIÓN AL LENGUAJE DE PROGRAMACIÓN

UNIDAD DE TRABAJO 3: PROGRAMACIÓN DE BASES DE DATOS TEMA 8: INTRODUCCIÓN AL LENGUAJE DE PROGRAMACIÓN UNIDAD DE TRABAJO 3: PROGRAMACIÓN DE BASES DE DATOS TEMA 8: INTRODUCCIÓN AL LENGUAJE DE PROGRAMACIÓN 8.1. INTRODUCCIÓN AL SQL PROCEDIMENTAL Casi todos los grandes Sistemas Gestores de Datos incorporan

Más detalles

Fundamentos de Programación

Fundamentos de Programación Fundamentos de Programación COMENTARIOS Microsoft Visual Basic interpreta que todo lo que está a la derecha del carácter ( ) en una línea cualquiera de programa es un comentario y no ejecuta acción alguna.

Más detalles

Creación y Gestión de Tablas. Copyright Oracle Corporation, 1998. All rights reserved.

Creación y Gestión de Tablas. Copyright Oracle Corporation, 1998. All rights reserved. 10 Creación y Gestión de Tablas Copyright Oracle Corporation, 1998. All rights reserved. Objetivos Al completar esta lección, debería a ser capaz de hacer lo siguiente: Describir los principales objetos

Más detalles

Tema: DISPARADORES (TRIGGERS)

Tema: DISPARADORES (TRIGGERS) Base de datos II. Guía 7 1 Facultad: Ingeniería Escuela: Computación Asignatura: Base de datos II Tema: DISPARADORES (TRIGGERS) Objetivo Conocer la definición y utilización de los triggers Materiales Oracle

Más detalles

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

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

Más detalles

Tema II: El modelo relacional de datos. (2.7) Automatización

Tema II: El modelo relacional de datos. (2.7) Automatización Tema II: El modelo relacional de datos. (2.7) El modelo relacional de datos. 2.5 El lenguaje standard SQL 2.5.1 Lenguaje de definición de datos DDL. 2.5.2 Lenguaje de manipulación de datos DML. 2.6 Información

Más detalles

Checks, Triggers y Excepciones en InterBase: validando desde la base de datos

Checks, 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 detalles

ORACLE 11g &12c Developer PLSQL

ORACLE 11g &12c Developer PLSQL ORACLE 11g &12c Developer PLSQL En este curso aprenderás a: Crear códigos de aplicación para compartir en formularios, informes y aplicaciones desarrolladas en otras tecnologías. Desarrollar procedimientos

Más detalles

Oracle Database: Conceptos Básicos de SQL y PL/SQL

Oracle Database: Conceptos Básicos de SQL y PL/SQL Oracle University Contact Us: +34916267792 Oracle Database: Conceptos Básicos de SQL y PL/SQL Duration: 5 Days What you will learn Este curso está diseñado para enseñar los conceptos fundamentales de SQL

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

Sistemas de Bases de Datos II ITS / ITSB EMT CETP

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

Más detalles

Sistemas Gestores de Bases de Datos Tema 8: Fundamentos de PL/SQL

Sistemas Gestores de Bases de Datos Tema 8: Fundamentos de PL/SQL Sistemas Gestores de Bases de Datos Tema 8: Fundamentos de PL/SQL Raúl Ruiz Padilla [email protected] Febrero 2011 Raúl Ruiz Padilla, Febrero de 2011 Basado en un trabajo previo de Laura Mateos Párraga

Más detalles

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

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

Más detalles

ARREGLOS PL/SQL César Martínez C. Profesor Instructor de Base de Datos Sede Puente Alto DUOC

ARREGLOS PL/SQL César Martínez C. Profesor Instructor de Base de Datos Sede Puente Alto DUOC ARREGLOS PL/SQL César Martínez C. Profesor Instructor de Base de Datos Sede Puente Alto DUOC INTRODUCCIÓN Los tipos de arreglos que estudiaremos son: Registros Tablas PL/SQL Varray Son estructuras de datos

Más detalles

Oracle básico (IV): Programación en PL/SQL

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

Más detalles

Desarrollo de Aplicaciones Informáticas

Desarrollo de Aplicaciones Informáticas Desarrollo de Aplicaciones Informáticas CICLO FORMATIVO DE GRADO SUPERIOR FORMACIÓN PROFESIONAL A DISTANCIA Unidad 5 PL/SQL Fundamentos MÓDULO Desarrollo de Aplicaciones en Entornos de Cuarta Generación

Más detalles

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

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

Más detalles

Tipos de Datos Compuestos. Copyright Oracle Corporation, 1998. All rights reserved.

Tipos de Datos Compuestos. Copyright Oracle Corporation, 1998. All rights reserved. 7 Tipos de Datos Compuestos Copyright Oracle Corporation, 1998. All rights reserved. Objetivos Al final de esta lección, usted podrá: Crear registros PL/SQL definidos por el usuarios Crear un registro

Más detalles

(LDD) VARCHAR2 (n) : alfanumérico (hasta 240) NUMBER (n,p) : números con signo y punto decimal

(LDD) VARCHAR2 (n) : alfanumérico (hasta 240) NUMBER (n,p) : números con signo y punto decimal Lenguaje de Definición de Datos (LDD) Tipos de Datos Nuevos VARCHAR2 (n) : alfanumérico (hasta 240) NUMBER (n,p) : números con signo y punto decimal n = número total de dígitos a almacenar p = dígitos

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

- 1 - Mg. Abril Saire Peralta

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

Más detalles

El SQL es un lenguaje estándar de programación para el acceso a bases de datos.

El SQL es un lenguaje estándar de programación para el acceso a bases de datos. El SQL es un lenguaje estándar de programación para el acceso a bases de datos. El lenguaje SQL se utiliza para acceder y manipular datos en cualquier base de datos del mercado, como por ejemplo, para

Más detalles

Guía práctica SQL. (c) Francisco Charte Ojeda

Guía práctica SQL. (c) Francisco Charte Ojeda Guía práctica SQL Introducción Qué es SQL? Aplicaciones de SQL Intérpretes de SQL Tipos de RDBMS (c) Francisco Charte Ojeda Cómo usar este libro Convenciones tipográficas 1. El modelo relacional 1.1. Introducción

Más detalles

Administración Base de Datos SQL

Administración Base de Datos SQL Administración Base de Datos SQL Profesor René Sandoval Ingeniero (E) Informática [email protected] Introducción Además de DML, DDL y los tipos de datos, Transact-SQL (desde ahora T-SQL) tiene algunos

Más detalles

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

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

Más detalles

Unidad III. Bases de Datos

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

Más detalles

Base de Datos Oracle 10g: Programación con PL/SQL Código: D Duración: 5 días (40 horas)

Base de Datos Oracle 10g: Programación con PL/SQL Código: D Duración: 5 días (40 horas) Base de Datos Oracle 10g: Programación con PL/SQL Código: D17214 - Duración: 5 días (40 horas) Lo que aprenderá Esta clase es aplicable para los usuarios de Oracle8i, Oracle9i y Oracle Database 10g. Este

Más detalles

Oracle Database: Programación con PL/SQL

Oracle 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 detalles

5.1 Procedimientos y Funciones Almacenados. 5.2 Disparadores (Triggers).

5.1 Procedimientos y Funciones Almacenados. 5.2 Disparadores (Triggers). Unidad 5 SQL Procedural 5.1 Procedimientos y Funciones. 5.2 Disparadores (Triggers). Taller Bases de Datos ISC Ing. Felipe Alanís González -ITD- 1 MySQL 1. Se usará la Base de Datos llamada LaConsentida.

Más detalles

TEMA 7. ARRAYS (LISTAS Y TABLAS).

TEMA 7. ARRAYS (LISTAS Y TABLAS). TEMA 7. ARRAYS (LISTAS Y TABLAS). En capítulos anteriores se han descrito las características de los tipos de datos básicos o simples (carácter, entero y coma flotante). Asimismo, se ha aprendido a definir

Más detalles

Manual de Sentencias Básicas en SQL

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

Más detalles

Introducción 1 Recuperación de Datos mediante la Sentencia SQL SELECT

Introducción 1 Recuperación de Datos mediante la Sentencia SQL SELECT Introducción Objetivos I-2 Objetivos del Curso I-3 Oracle11g - 12cI-5 Oracle Database 11g - 12cI-6 Oracle Application Server 11g - 12cI-7 Oracle Enterprise Manager 11g - 12cGrid Control I-8 Sistema de

Más detalles