Introducción a PL/SQL

Documentos relacionados
Introducción a PL/SQL

Diseño de bases de datos

Introducción a PL/SQL

Introducción a Oracle PL / SQL 12c

Oracle PL/SQL. Programa de Estudio.

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

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

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

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

Estructura general. Fundamentos. Comentarios. Tipos de datos. Funciones de conversión

PL/SQL. Programming Language Structured Query Language

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

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

INTRODUCCIÓN A PL/SQL

Oracle Database 12c SQL and PLSQL Fundamentals

Lic. Vladimir Cotaquispe Gutierrez PROGRAMACIÓN PL/SQL I - 1. Copyright 2008, Oracle. All rights reserved.

Manual de desarrollo en PL/SQL

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

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

ORACLE 11g &12c Developer PLSQL

ÍNDICE INTRODUCCIÓN...13

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

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

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

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

Oracle Database: Programación con PL/SQL

Triggers. BASES DE DATOS Mercedes García Merayo

Administración de sistemas gestores de bases de datos

Fundamentos de Programació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.

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

Introducción a SQL (DDL)

FUNDAMENTOS DE INFORMÁTICA

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

PL/SQL. DECLARE /* Parte Declarativa */ BEGIN /* Parte de Ejecución */ EXCEPTION /* Parte de Excepciones */ END;

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

Procesamiento Condicional con Sentencias IF Procesamiento Condicional con Sentencias CASE Sentencia Loop Simple Sentencia WhileLoop Sentencia ForLoop

Diseño de bases de datos

PRECIO: 350 * * Materiales didácticos, titulación oficial y gastos de envío incluidos (internacionales se presupuestará aparte)

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

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

Unidad 6. Procedimientos Almacenados y Disparadores

Los disparadores pueden emplearse para muchas cosas diferentes, incluyendo:

Triggers (o disparadores) Definición y sintaxis

Modulo I: Introducción Gestores de Bases De Datos

Administración Base de Datos SQL

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

Creación de Estructuras de Control. Copyright Oracle Corporation, All rights reserved.

Lenguaje PL/SQL. Instrucciones de Repetición

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

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

ALGORÍTMICA. Dpto. Ingeniería de Sistemas y Automática Facultad de Ciencias Universidad de Valladolid.

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

Apunte Laboratorio ALPI - El lenguaje de programación Pascal

PL/PGSQL. Extensión "procedural" de SQL

PL/SQL. - La unidad de programación utilizada por PL/SQL es el bloque. - Todos los programas de PL/SQL están conformados por bloques.

Tema 1 INTRODUCCIÓN A LOS LENGUAJES DE PROGRAMACIÓN

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

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

Oracle Database y Oracle SQL Developer

Informática Ingeniería en Electrónica y Automática Industrial

Todo programa en 'C' consta de una o más funciones, una de las cuales se llama main.

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

ADMINISTRACION DE ORACLE 9i Guía de estudio (OCA) TEMA 1

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

Nombre y Apellidos: Especialidad y Grupo:

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

col Type mismatch línea 1 3A Type mismatch c$ + j línea 2

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

Oracle Database 11g: Programación con PL/SQL Nuevo

Curso de Oracle Database 11g: PL/SQL

Introducción a Fortran

CLIPS Definición de funciones

Objetivos: Descripción del curso. Curso: Dirigido a: ORACLE - PL/SQL UNIVERSIDAD NACIONAL DE INGENIERÍA Ê Ê Ê. Duración:

Índice general 7. Presentación 15

Repaso Visual Basic Interfaz Gráfica

Visual Basic.net Completo

Métodos con Parámetros

Visual Basic.net Completo

Los procedimientos almacenados son nuevas funcionalidades de la versión de MySQL 5.0. Un procedimiento

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

Lenguaje C. República Bolivariana de Venezuela Fundación Misión Sucre Aldea Fray Pedro de Agreda Introducción a la Programación III

Historia. Introducción al lenguaje Ada95. Historia (2) Características. Elementos del lenguaje. Características (2)

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

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

Visual Basic.NET Completo

DIPLOMADO EN BASE DE DATOS ORACLE

Tema 1. Bases de datos activas

BD Activas: Motivación

Tema: DISPARADORES (TRIGGERS)

Tema 2. El lenguaje JAVA

Base de datos II Facultad de Ingeniería. Escuela de computación.

ESTRUCTURAS DE CONTROL

Tema 3.- Predicados y sentencias condicionales

Transcripción:

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 de Oracle PL/SQL. Conocer las estrategias para ar adecuadamente las excepciones. Ser capaz de utilizar las estructuras de PL/SQL para implementar parte de la funcionalidad de un sistema informático. 1 IISSI 1

22/11/2016 Qué es PL/SQL? PL/SQL: Procedural Language/Structured Query Language. Es un lenguaje propietario de Oracle que combina La manipulación de datos mediante sentencias DML (INSERT, UPDATE, DELETE) y sentencias SELECT de SQL. El procesamiento mediante sentencias imperativas PL/SQL. 2 Bloque PL/SQL Bloque lógico estructurado en tres partes. Las secciones DECLARE y EXCEPTION son opcionales. 3 IISSI 2

22/11/2016 Ejemplo de bloque anónimo PL/SQL Muestra por pantalla el mensaje Hello world!. 4 Elementos de PL/SQL Tipos de datos. Definición de variables. Estructuras de. Condicional. Iterativo. Gestión de excepciones. 5 IISSI 3

22/11/2016 Tipos de datos Principales (tipos atómicos) BINARY- INTEGER Enteros con signo. NUMBER [(precisión, escala)] Reales. CHAR[(longitud fija)] Cadenas de caracteres de longitud fija. VARCHAR2(longitud máxima) Cadenas de caracteres de longitud variable. LONG Cadenas de caracteres de longitud variable. Otros tipos (multivaluados) Collections (Arrays, Varrays, Tables), Records, etc. 6 Declaración de variables y constantes Nombre_variable [CONSTANT] tipo de dato [NOT NULL][:=DEFAULT expresión] CONSTANT : Declara una constante. Su valor no puede cambiar. Debe ser inicializada. 7 IISSI 4

22/11/2016 Declaración de variables Propiedad %TYPE Declara una variable basada en: El tipo de dato de una columna de una tabla. El tipo de otra variable declarada previamente. Sintaxis: variable tabla.columna%type; variable variable_pl/sql%type; 8 Declaración de variables Propiedad %ROWTYPE Declara una variable registro: Representa una fila de una tabla o vista. 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. Sintaxis: variable tabla%rowtype; 9 IISSI 5

22/11/2016 Estructuras de condicional IF THEN IF THEN ELSE IF THEN ELSIF 10 Estructuras de condicional Ejemplo: 11 IISSI 6

22/11/2016 Estructuras de iterativas Repite un número de veces un conjunto de sentencias. Estructura repetitiva básica LOOP: 12 Estructuras de iterativas Ejemplo LOOP: 13 IISSI 7

22/11/2016 Estructuras de iterativas Esquema WHILE: Ejemplo: 14 Estructuras de iterativas Bucle FOR numérico con indicación de rango: Ejemplo: 15 IISSI 8

22/11/2016 Gestión de excepciones Una excepción es un error que ocurre durante la ejecución del código. Si ocurre un error Se ejecutan las se dispara se Sí sentenciasde gestión Ejecución una a de la excepción del código excepción el error? Se detiene el código No 16 Gestión de excepciones Tipos de excepciones en PL/SQL Predefinidas: son las más comunes y solo hay que tratarlas. Definidas por el usuario: hay que declararlas, especificar en qué consisten y tratarlas. 17 IISSI 9

22/11/2016 Gestión de excepciones Excepciones predefinidas PL/SQL Permiten ar las condiciones de error más habituales. No es necesario declararlas, se utilizan cuando son lanzadas por algún error determinado. Se generan implícitamente cuando se produce su error asociado. 18 Gestión de excepciones Excepciones predefinidas PL/SQL Las más comunes son: 19 IISSI 10

22/11/2016 Gestión de excepciones Excepciones definidas por el usuario Se declaran en la sección declarativa de un bloque PL/SQL y tienen asociado el tipo EXCEPTION. Se generan explícitamente mediante la instrucción RAISE. 20 Gestión de excepciones Ejemplo de excepciones definida por el usuario 21 IISSI 11

22/11/2016 Gestión de excepciones Claúsula when Se ejecuta para todas las excepciones que se generen y no sean tratadas en ninguna otra claúsula When. SQLCODE Función que devuelve el código de error actual. SQLERRM Función que devuelve el texto de mensaje del error actual. RAISE_APPLICATION_ERROR(numero, mensaje) Permite crear mensajes más descriptivos asociados al error que se produce. 23 Ejercicios: 1. Desarrollar un bloque PL/SQL que cuente el número de aficiones que tiene Pedro en la base de datos de Hobbies. El bloque PL/SQL debe mostrar la siguiente pantalla: 2. Desarrollar un bloque PL/SQL que muestre qué afición tiene Ana en la base de datos de Hobbies. El bloque PL/SQL debe mostrar la siguiente pantalla: 24 IISSI 12

22/11/2016 Ejercicio 1 Desarrollar un bloque PL/SQL que cuente el número de aficiones que tiene Pedro en la base de datos de Hobbies. El bloque PL/SQL debe mostrar la siguiente pantalla: 25 Ejercicio 1 26 IISSI 13

22/11/2016 Ejercicio 2. Desarrollar un bloque PL/SQL que muestre qué afición tiene Ana en la base de datos de Hobbies. El bloque PL/SQL debe mostrar la siguiente pantalla: 27 Ejercicio 2 28 IISSI 14