Enlaces relacionados:

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

Download "Enlaces relacionados: http://otn.oracle.com/tech/pl_sql/index.html"

Transcripción

1 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 introducir los elementos existentes en los demás lenguajes de programación y dirigir el flujo de un programa mediante bloques de código. El elemento principal del PL/SQL es el bloque, que como acabamos de decir contendrá sentencias condicionales, bucles, llamadas a procedimientos y/o funciones, etc... Enlaces relacionados: 2.BLOQUES Veremos que hay dos tipos de bloques (anónimos y nombrados) y que estos se utilizan en todas las construcciones PL/SQL: Bloques anónimos, Disparadores de aplicación (para Forms, Reports, Graphics, y las herramientas de desarrollo nativas de Oracle), Disparadores de Base de datos, Procedimientos o funciones almacenada en la Base de datos, Procedimientos o funciones de aplicación (para Forms, Reports, Graphics, y las herramientas de desarrollo nativas de Oracle) y Paquetes de Base de datos (dejaremos aparte los tipos de objetos, ya que no los abordaremos en este curso, sólo recordar que Oracle 8 es una base de datos orientada a objetos y estos forman parte de la BD). Cada estructura PL/SQL contiene uno o más bloques. Los bloques pueden estar separados uno tras otro o anidados unos dentro de otros BLOQUES ANONIMOS Los bloques anónimos son, como su nombre indica, bloques sin nombre. Se ejecutan normalmente como scripts independientes o dentro de una aplicación. La estructura es la siguiente: DECLARE (opcional) Definición de variables, tipos y objetos a utilizar en el bloque. Sentencias ejecutables (opcional) Acciones a realizar si ocurre algún error en las sentencias ejecutables. END ; Los elementos y END son obligatorios e incluyen las sentencias a ejecutar. La sección DECLARE es opcional y nos servirá para declarar las variables, constantes, cursores y excepciones definidas por el usuario que vamos a usar dentro del bloque. La sección es también opcional y es la encargada de atrapar los errores, en caso de que se produzcan y realizar las acciones oportunas según el tipo de excepción. Esta sección debe preceder inmediatamente a END. Como podéis observar el punto y coma va solamente en el END ya que se considera al bloque como un todo, pero Pág 1 de 9

2 dentro de la sección, las instrucciones deben ir siempre terminadas por el punto y coma. Como siempre, vamos a ver un ejemplo para aclarar las cosas: DECLARE WHERE codigo=1 ; Veamos: en la sección DECLARE establecemos la variable v_nombre del mismo tipo y longitud que el campo nombre de la tabla EMPLEADOS para recoger ese dato en el programa. Después del ejecutamos una sentencia SELECT con la particularidad de la clausula INTO que provoca que el campo nombre se guarde en la variable v_nombre. En este caso buscamos el nombre del empleado cuyo código es el 1. Finalmente, terminamos el bloque con Vale, todo correcto, pero supongamos que la sentencia SELECT no recupera ningún registro porque no hay registros grabados, o porque no existe el empleado 1, o simplemente porque se produce un error de sistema. Para eso está la sección : DECLARE WHERE codigo=1 ; Si no se encuentra ningún registro que cumpla las condiciones de la sentencia SELECT, se lanza una excepción NO_DATA_FOUND y la sección la capturará, almacenando en la variable v_error el mensaje apropiado. Otra cosa será lo que hagamos con ello después. Si se produce cualquier otra excepción, se capturará por WHEN OTHERS que recoge cualquier excepción que no se haya especificado antes, por lo que es muy conveniente ponerla siempre. La gestión de excepciones la iremos viendo a medida que avancemos ya que es bastante ilustrativo hacerlo así. Considero que dedicar un capítulo a las excepciones puede llegar a ser inútil si las vamos explicando paso a paso. Importante indicar que una SELECT dentro de un bloque PL/SQL solo puede devolver un registro. En este caso no nos hemos preocupado del asunto pues el campo codigo es clave primaria de la tabla EMPLEADOS. Pág 2 de 9

3 2.2.- BLOQUES NOMBRADOS (SUBPROGRAMAS) Los subprogramas son bloques nombrados que pueden tener parámetros y ser llamados por otros bloques. PL/SQL dispone de dos tipos: procedimientos y funciones. Ambos pueden residir en la aplicación o en la propia base de datos. Su estructura es la siguiente: Cabecera IS Definición de variables, tipos y objetos a utilizar en el bloque. Sentencias ejecutables (opcional) Acciones a realizar si ocurre algún error en las sentencias ejecutables. END ; Como podéis la diferencia con los bloques anónimos está en la sección de declaraciones. Aquí no se usa DECLARE y sin embargo tenemos una Cabecera que consta de: Si se trata de un procedimiento: PROCEDURE nombre_procedimiento(parametros) Si se trata de una función: FUNCTION nombre_funcion(parametros) RETURN tipo Los parámetros son opcionales y pueden ser de entrada, de salida o de entrada y salida al mismo tiempo. En el caso de las funciones, el tipo devuelto especifica el tipo de dato que devuelve la función mediante la sentencia RETURN expresión. Que se especifica en la sección ejecutable y en la de. Es muy importante recordar que una función SIEMPRE debe devolver un valor, por lo que hay que tener especial atención a los errores que se puedan generar, capturarlos y devolver un valor incluso en caso de error. Como siempre, unos ejemplos: PROCEDIMIENTO: PROCEDURE nombre_empleado(p_codigo IN NUMBER) IS WHERE codigo=p_codigo ; Pág 3 de 9

4 Vemos la sección de cabecera con el nombre del procedimiento y el parámetro pasado (IN = de entrada). Claro, ahora más de uno dirá: y para qué sirve este procedimiento si el nombre del empleado que recuperamos, se queda en la variable v_nombre. Cierto, pero tranquilos, vamos a ver los parámetros de salida y resolvemos el problema. De nuevo escribimos nuestro procedimiento: PROCEDURE nombre_empleado(p_codigo IN NUMBER, P_NOMBRE OUT VARCHAR2) IS P_NOMBRE := NULL; SELECT nombre INTO P_NOMBRE WHERE codigo=p_codigo ; Ahora en el parámetro P_NOMBRE saldrá (OUT) el nombre del empleado que hemos recuperado. Como se puede ver, he eliminado la variable v_nombre de la sección de declaraciones ya que ahora no nos hace falta, y en la SELECT INTO metemos el valor directamente en el parámetro de salida P_NOMBRE. También vemos que justo antes de la SELECT asignamos el valor NULL al parámetro. Esto no es obligatorio, pero es buena costumbre ya que así, en caso de error, el parámetro P_NOMBRE contendrá un valor: el valor NULL. FUNCION: El mismo ejemplo pero con una función: FUNCTION nombre_empleado(p_codigo IN NUMBER) RETURN VARCHAR2 IS WHERE codigo=p_codigo ; RETURN v_nombre; RETURN v_error ; RETURN v_error ; Por supuesto, una función puede devolver más de un valor haciendo uso de los parámetros de salida (OUT). Pág 4 de 9

5 Observar que aunque se produzca un error hacemos que la función devuelva un valor. Esto lo hacemos así ya que cuando se produce una excepción dentro de un bloque, se ejecuta el código del manejador de la excepción y se finaliza la ejecución del código del bloque en cuestión. Es decir, en el caso anterior, si se produce un error, la función devolverá el valor de v_error y no el de v_nombre ya la sentencia RETURN v_nombre no se llega a ejecutar. Hemos dicho que los bloques nombrados, ya sean procedimientos o funciones pueden estar almacenados en la aplicación o en la base de datos. Durante el curso nos ceñiremos al caso de almacenarlos en la base de datos ya que escapa a este documento el entrar a explicar las herramientas de desarrollo nativas de Oracle (Developer, Discover, etc...). En este sentido, podemos utilizar para almacenar los procedimientos o funciones en la base de datos, las aplicaciones suministradas por Oracle (Procedure Builder) o utilizar aplicaciones de terceros (SQL Navigator, Toad, etc..), pero insisto, vamos a suponer que solo tenemos un editor de textos y la herramienta SQL*Plus para poder ejecutar sentencias o scripts SQL. Dicho esto, ahora os preguntareis: como almaceno la función anterior en la base de datos entonces?. Vamos a verlo: CREATE OR REPLACE FUNCTION nombre_empleado(p_codigo IN NUMBER) RETURN VARCHAR2 IS WHERE codigo=p_codigo ; RETURN v_nombre; RETURN v_error ; RETURN v_error ; / Así de sencillo. Ponemos delante CREATE OR REPLACE para crearla o sustituirla en caso de que ya exista y de esta forma queda almacenada en la base de datos. Fácil no?. Con un procedimiento lo haríamos igual. La clausula OR REPLACE es opcional como habréis deducido ya. El lector atento se habrá dado cuenta de la barra / al final. Sí, no se trata de un error. Es para que SQL*Plus ejecute el código directamente. No voy a tratar el SQL*Plus ya que tampoco es necesario para aprender PL/SQL, aunque es la herramienta básica, al final la mayoría usamos otras herramientas más avanzadas (SQL*Plus es una consola de SQL y poco más). Y cómo borro lo que acabo de almacenar en la base de datos?. La sentencia para borrar un procedimiento almacenado en la base de datos es: Pág 5 de 9

6 DROP PROCEDURE nombre_procedimiento ; Y,de forma análoga, para borrar una función almacenada: DROP FUNCTION nombre_funcion ; Es importante recordar que no hay posibilidad de ROLLBACK después de una sentencia DDL, por lo que una instrucción DROP es definitiva (aviso para los gatillos rápidos ). Volveremos a los procedimientos y funciones más adelante BLOQUES ANIDADOS Ya hemos comentado que los bloques se pueden anidar, ya sea con los bloques anónimos como con los nombrados. El concepto es muy sencillo y, básicamente, consiste en encerrar entre END los bloques de código susceptibles de provocar algún error para así poder capturarlo y proceder en consecuencia. Por ejemplo: supongamos que tenemos un procedimiento que inserta un registro en la tabla DEPARTAMENTOS y actualiza en EMPLEADOS el departamento de un empleado con el nuevo creado. Pero sólo debe realizarse la transacción si se tiene éxito en los dos casos. Por supuesto, si no se puede realizar la inserción del departamento, es absurdo intentar actualizar el departamento del empleado ya que no existirá (falló la inserción) PROCEDURE INSERTA_DEP_EMP(p_departamento IN NUMBER, p_nom_departamento IN VARCHAR2, p_cod_empleado IN NUMBER p_resultado OUT VARCHAR2) IS -- Primer bloque. Anidado dentro del bloque principal INSERT INTO DEPARTAMENTOS VALUES(p_departamento, p_nom_departamento); -- Segundo bloque. Anidado dentro del bloque del INSERT -- Se ejecutará si no se produjo error en el anterior. UPDATE EMPLEADOS SET departamento=p_departamento WHERE codigo=p_cod_empleado ; -- AQUI LLEGAMOS SI NO SE PRODUJO NINGUNA EXCEPCION -- GRABAMOS LA TRANSACCION. COMMIT; ROLLBACK ; p_resultado := 'Error al actualizar el empleado'; p_resultado := 'Error al insertar Departamento'; Pág 6 de 9

7 Esta es una forma de hacerlo, sobre todo para poder observar perfectamente el anidamiento de los bloques y el control de las excepciones (errores). Daros cuenta que insertamos el registro y si todo ha ido bien, actualizamos el registro del empleado con el nuevo departamento. Si también ha tenido éxito el update, hacemos el commit, grabando así la transacción. Si falla el insert, devolvemos en la variable p_resultado la causa del error y no hemos hecho nada. Si lo que falla es el update posterior, deshacemos la inserción (ROLLBACK) y devolvemos la causa del error. También podríamos haber colocado un SAVEPOINT al principio para hacer el ROLLBACK TO SAVEPOINT en lugar del ROLLBACK, asegurándonos así que solo deshacemos el insert y no alguna transacción pendiente que pudiera haber. El código final sería: PROCEDURE INSERTA_DEP_EMP(p_departamento IN NUMBER, p_nom_departamento IN VARCHAR2, p_cod_empleado IN NUMBER p_resultado OUT VARCHAR2) IS -- Primer bloque. Anidado dentro del bloque principal SAVEPOINT trans1 INSERT INTO DEPARTAMENTOS VALUES(p_departamento, p_nom_departamento); -- Segundo bloque. Anidado dentro del bloque del INSERT -- Se ejecutará si no se produjo error en el anterior. UPDATE EMPLEADOS SET departamento=p_departamento WHERE codigo=p_cod_empleado ; -- AQUI LLEGAMOS SI NO SE PRODUJO NINGUNA EXCEPCION -- GRABAMOS LA TRANSACCION. COMMIT; ROLLBACK TO SAVEPOINT trans1; p_resultado := 'Error al actualizar el empleado'; p_resultado := 'Error al insertar Departamento'; El tema de los bloques anidados es muy útil. Otra aplicación interesante es la de buscar un valor en una tabla y si no existe, proceder a ejecutar una serie de instrucciones. Por ejemplo: en el caso anterior, si el departamento que vamos a insertar NO existe, lo insertamos, si ya existe solo actualizaremos el departamento al empleado. Veamos el código comentado: Pág 7 de 9

8 PROCEDURE INSERTA_DEP_EMP(p_departamento IN NUMBER, p_nom_departamento IN VARCHAR2, p_cod_empleado IN NUMBER p_resultado OUT VARCHAR2) IS SAVEPOINT trans1 -- Primer bloque. Anidado dentro del bloque principal -- BUSCAMOS EL DEPARTAMENTO SELECT codigo FROM DEPARTAMENTOS WHERE codigo=p_departamento ; -- No existe, así que lo insertamos (LO INTENTAMOS) -- OTRO BLOQUE ANIDADO. INSERT INTO DEPARTAMENTOS VALUES(p_departamento, p_nom_departamento); p_resultado := 'Error al insertar Departamento'; -- Segundo bloque. Anidado dentro del bloque principal -- Tanto si ya existía el departamento, como si se ha -- insertado nuevo, actualizamos el empleado. UPDATE EMPLEADOS SET departamento=p_departamento WHERE codigo=p_cod_empleado ; -- AQUI LLEGAMOS SI NO SE PRODUJO NINGUNA EXCEPCION -- GRABAMOS LA TRANSACCION. COMMIT; ROLLBACK TO SAVEPOINT trans1; p_resultado := 'Error al actualizar el empleado'; En este código falta algo, pero volveremos a él cuando veamos las excepciones definidas por usuario y cómo lanzar una excepción de forma intencionada. En particular falta un RAISE <excepcion> (además una excepción especial) para forzar la interrupción de la ejecución del código. Daros cuenta que ya dijimos que cuando se produce una excepción se ejecuta el código del manejador que la gestiona y se finaliza el bloque actual. Pero fijaros en el código anterior. Si el INSERT falla, se carga el texto en la variable p_resultado y se finaliza la ejecución del bloque, pero nada impide que se ejecute el código del siguiente bloque (el azul). De momento lo controlaremos con una variable lógica que nos indique si tenemos que realizar la actualización. De este modo además, vemos la sentencia IF THEN END IF; de control de flujo como adelanto. Ahí va el código correspondiente: Pág 8 de 9

9 PROCEDURE INSERTA_DEP_EMP(p_departamento IN NUMBER, p_nom_departamento IN VARCHAR2, p_cod_empleado IN NUMBER p_resultado OUT VARCHAR2) IS updateamos BOOLEAN; updateamos := TRUE ; SAVEPOINT trans1 -- Primer bloque. Anidado dentro del bloque principal -- BUSCAMOS EL DEPARTAMENTO SELECT codigo FROM DEPARTAMENTOS WHERE codigo=p_departamento ; -- No existe, así que lo insertamos (LO INTENTAMOS) -- OTRO BLOQUE ANIDADO. INSERT INTO DEPARTAMENTOS VALUES(p_departamento, p_nom_departamento); updateamos := FALSE ; p_resultado := 'Error al insertar Departamento'; -- Segundo bloque. Anidado dentro del bloque principal -- Tanto si ya existía el departamento, como si se ha -- insertado nuevo, actualizamos el empleado. -- Siempre y cuando no haya habido error. IF updateamos THEN UPDATE EMPLEADOS SET departamento=p_departamento WHERE codigo=p_cod_empleado ; -- AQUI LLEGAMOS SI NO SE PRODUJO NINGUNA EXCEPCION -- GRABAMOS LA TRANSACCION. COMMIT; ROLLBACK TO SAVEPOINT trans1; p_resultado := 'Error al actualizar el empleado'; END IF; Como podéis ver, el tema de bloques anidados da para mucho. Podéis empezar a imaginar las muchas posibilidades que tienen y cuando veamos las excepciones predefinidas y las definibles por usuario un poco más adelante, le sacaremos más partido aún. Pág 9 de 9

Los paquetes tienen dos partes: una especificación y un cuerpo que están almacenados por separado en la base de datos.

Los paquetes tienen dos partes: una especificación y un cuerpo que están almacenados por separado en la base de datos. 8. PAQUETES DE BASE DE DATOS Los paquetes nos van a permitir agrupar conceptos PL/SQL como pueden ser tipos, procedimientos y funciones. Por ejemplo: una paquete de Contabilidad podrá contener procedimientos

Más 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

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

Sintaxis: CURSOR nombre_cursor[(param1 [IN] tipo1,... )] IS consulta ;

Sintaxis: CURSOR nombre_cursor[(param1 [IN] tipo1,... )] IS consulta ; 7. CONCEPTOS AVANZADOS DE CURSORES EXPLICITOS En este capítulo veremos algunas cosas bastante útiles respecto a los cursores explícitos, como pueden ser los cursores con parámetros (que nos permitirán

Más detalles

E16 - Diseño de Sistemas de Bases de Datos Boletín 3

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

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

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

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

Más detalles

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

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

Procedimientos, Funciones, Trigger y Cursores en ORACLE

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

Más detalles

FIREBIRD: SQL PROCEDIMENTAL (PSQL)

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

Más detalles

Bases de Datos SQL 1 SQL. Jorge Pérez R. Universidad de Talca, II Semestre 2006

Bases de Datos SQL 1 SQL. Jorge Pérez R. Universidad de Talca, II Semestre 2006 Bases de Datos SQL 1 SQL Jorge Pérez R. Universidad de Talca, II Semestre 2006 Bases de Datos SQL 2 SQL + Procedural La mayoría de los DBMS actuales permiten extensiones de SQL para la creación de bloques

Más detalles

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

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

Más detalles

1. Introducción al PL/SQL 2. Conceptos Básicos de PL/SQL Estructura de Bloques Reglas y Convenciones del Lenguaje

1. Introducción al PL/SQL 2. Conceptos Básicos de PL/SQL Estructura de Bloques Reglas y Convenciones del Lenguaje Índice 1. Introducción al PL/SQL 2. Conceptos Básicos de PL/SQL Estructura de Bloques Reglas y Convenciones del Lenguaje Entrada y Salida de Datos 3. Variables de PL/SQL 4. Estructuras de Control 5. Cursores

Más detalles

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

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

Más detalles

PHP Perfect SQL v1.0 (SQL perfectas en PHP)

PHP Perfect SQL v1.0 (SQL perfectas en PHP) PHP Perfect SQL v1.0 (SQL perfectas en PHP) Muchas veces cuando programamos para web es muy fácil cometer errores en la construcción sintáctica de consultas SQL, por ejemplo cuando tenemos que realizar

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

CONCEPTOS DE PROCESAMIENTO DE TRANSACCIONES

CONCEPTOS DE PROCESAMIENTO DE TRANSACCIONES Tema 6. CONCEPTOS DE PROCESAMIENTO DE TRANSACCIONES TRANSACCIONES Una transacción es una unidad lógica de trabajo o procesamiento (ejecución de un programa que incluye operaciones de acceso a la base de

Más detalles

Para ver una copia completa de la licencia, acudir a la dirección http://creativecommons.org/licenses/by-nc-sa/2.5/es/legalcode.

Para ver una copia completa de la licencia, acudir a la dirección http://creativecommons.org/licenses/by-nc-sa/2.5/es/legalcode. Para ver una copia completa de la licencia, acudir a la dirección http://creativecommons.org/licenses/by-nc-sa/2.5/es/legalcode.es (3) (unidad 5) PL/SQL esquema de la unidad (5.1) introducción 6 (5.1.2)

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

DIPLOMADO EN BASE DE DATOS ORACLE

DIPLOMADO EN BASE DE DATOS ORACLE DIPLOMADO EN BASE DE DATOS ORACLE Release 10.2.0.2 MODULO 1 - DISEÑO DE BASES DE DATOS RELACIONALES (20 Horas) OBJETIVO Introducir al alumno a los conceptos necesarios para construir sistemas de información

Más detalles

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

Procesamiento Condicional con Sentencias IF Procesamiento Condicional con Sentencias CASE Sentencia Loop Simple Sentencia WhileLoop Sentencia ForLoop 1 Introducción Objetivos del Curso Agenda Descripción del Esquema Human Resources (HR) Entornos de Desarrollo PL/SQL Disponibles en este Curso Introducción a SQL Developer Introducción a PL/SQL Visión

Más detalles

PRÁCTICA III. DISPARADORES EN SQL (II)

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

Más detalles

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

Los disparadores pueden ser utilizados para cumplir con alguna de las siguientes tareas:

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

Más detalles

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

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

Más detalles

Tutorial Oracle SQL Developer 1.2.1

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

Más detalles

INTRODUCCIÓN AL SQL. TRANSACT-SQL SQL SERVER 2005. Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE

INTRODUCCIÓN AL SQL. TRANSACT-SQL SQL SERVER 2005. Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE INTRODUCCIÓN AL SQL. TRANSACT-SQL SQL SERVER 2005 Manual de Referencia para usuarios Salomón Ccance CCANCE WEBSITE INTRODUCCIÓN AL SQL. TRANSACT SQL CONCEPTOS BÁSICO DE SQL SQL (Structured Query Language),

Más detalles

Laboratorio Informix. Stored Procedures Triggers

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

Más detalles

Recuperación del Sistema

Recuperación del Sistema Recuperación del Sistema 1 Andrés Moreno S. Diagrama de Transición de Estados COMMIT y ROLLBACK puntos de confirmación BEGIN activo READ / WRITE END parcialmente confirmado COMMIT confirmado fallo fallo

Más detalles

1. DML. Las subconsultas

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

Más detalles

PROGRAMA DE MATERIA DATOS DE IDENTIFICACIÓN DESCRIPCIÓN GENERAL OBJETIVO (S) GENERAL (ES) LENGUAJES DE BASES DE DATOS CENTRO DE CIENCIAS BÁSICAS

PROGRAMA DE MATERIA DATOS DE IDENTIFICACIÓN DESCRIPCIÓN GENERAL OBJETIVO (S) GENERAL (ES) LENGUAJES DE BASES DE DATOS CENTRO DE CIENCIAS BÁSICAS DATOS DE IDENTIFICACIÓN MATERIA: CENTRO ACADÉMICO: DEPARTAMENTO ACADÉMICO: LENGUAJES DE BASES DE DATOS CENTRO DE CIENCIAS BÁSICAS SISTEMAS ELECTRÓNICOS PROGRAMA EDUCATIVO: AÑO DEL PLAN DE ESTUDIOS: 2009

Más detalles

Tema 1. Bases de datos activas

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

Más detalles

MANUALITO MS-SQL SERVER

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

Más detalles

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

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

Más detalles

PRÁCTICA DE ADMINISTRACIÓN DE BASES DE DATOS

PRÁCTICA DE ADMINISTRACIÓN DE BASES DE DATOS PRÁCTICA DE ADMINISTRACIÓN DE BASES DE DATOS Modulo 1.- CONFIDENCIALIDAD DE LOS DATOS El objetivo de esta parte de la práctica es comprender los distintos mecanismos que se pueden utilizar en ORACLE 10g

Más detalles

Tema: Procedimientos almacenados y cursores. Facultad : Ingeniería Escuela : Computación Asignatura: SQL SERVER. GUÍA 2 Pág. 1

Tema: Procedimientos almacenados y cursores. Facultad : Ingeniería Escuela : Computación Asignatura: SQL SERVER. GUÍA 2 Pág. 1 Tema: Procedimientos almacenados y cursores. Facultad : Ingeniería Escuela : Computación Asignatura: SQL SERVER GUÍA 2 Pág. 1 I. OBJETIVOS Utilizar procedimientos almacenados Conocer el uso de los cursores

Más detalles

Programación SQL. Lucio Salgado Diciembre 2008

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

Más detalles

Disparadores en ORACLE

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

Más detalles

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

Más detalles

Comencemos a programar con. Entrega 10. Estructuras de Control II

Comencemos a programar con. Entrega 10. Estructuras de Control II Comencemos a programar con VBA - Access Entrega 10 Estructuras de Control II Eduardo Olaz 10-2 Estructuras de Control, segunda parte Las Instrucciones While - - - Wend La estructura de bucle For Contador

Más detalles

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

PL/PGSQL. Extensión procedural de SQL PL/PGSQL Extensión "procedural" de SQL Pero primero triggers DROP TABLE producto cascade; CREATE TABLE producto( id int PRIMARY KEY, vendido timestamp); DROP FUNCTION modificacion() cascade; CREATE FUNCTION

Más detalles

Dirigido a Profesionales y técnicos de informática que se inicien en el manejo de la base de datos Oracle 11g

Dirigido a Profesionales y técnicos de informática que se inicien en el manejo de la base de datos Oracle 11g El temario se divide en tres partes: Parte I. Lenguaje SQL Lenguaje SQL Objetivos Conocer los componentes de las bases de datos relacionales Obtener los conocimientos del lenguaje SQL para el manejo de

Más detalles

Conceptos básicos de programación con PL/SQL

Conceptos básicos de programación con PL/SQL Conceptos básicos de programación con PL/SQL 1. Bloques PL/SQL 2. Tipos de Datos Estructurados 3. Funciones y Procedimientos 4. Paquetes 5. Disparadores de Base de Datos 1. Bloques PL/SQL 1.1 Introducción

Más detalles

Tema: Disparadores Parte I.

Tema: Disparadores Parte I. Base de datos I. Guía 10 1 Facultad: Ingeniería Escuela: Computación Asignatura: Base de datos I Tema: Disparadores Parte I. Objetivo Utilizar la sintaxis de un disparador en SQL Server Implementar transacciones

Más detalles

SQL básico. SQL básico http://idesweb.es/ 1. Contenido

SQL básico. SQL básico http://idesweb.es/ 1. Contenido SQL básico http://idesweb.es/ 1 SQL básico El presente documento no tiene más aspiraciones que servir de recordatorio mínimo para las órdenes más básicas y en su mínima expresión. No es un manual de SQL

Más detalles

BASES DE DATOS OBJETO-RELACIONALES

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

Más detalles

ADMINISTRACIÓN DE BASE DE DATOS

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

Más detalles

Otros objetos de Base de Datos

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

Más detalles

Base de datos Procedimientos Almacenados y Funciones

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

Más detalles

COMANDOS DE SQL, OPERADORES, CLAUSULAS Y CONSULTAS SIMPLES DE SELECCIÓN

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

Más detalles

Si queremos modificar la contraseña de sys, una vez que accedamos al sistema como sys, escribiremos la sentencia:

Si queremos modificar la contraseña de sys, una vez que accedamos al sistema como sys, escribiremos la sentencia: TRABAJANDO CON SQL*PLUS El objetivo de este tema es simplemente, hacer una revisión de los conceptos avanzados de SQL, para ello, empezaremos por ver como se accede a SQL*PLUS y como crear usuarios, para

Más detalles

Introducción a la Programación en MATLAB

Introducción a la Programación en MATLAB Introducción a la Programación en MATLAB La programación en MATLAB se realiza básicamente sobre archivos M, o M-Files. Se los denomina de esta forma debido a su extensión.m. Estos archivos son simple archivos

Más detalles

SENTENCIAS Y CONSULTAS EN SQL SERVER

SENTENCIAS Y CONSULTAS EN SQL SERVER SENTENCIAS Y CONSULTAS EN SQL SERVER En esta sección nos preocuparemos por conocer, las consultas en SQL que describiremos aquí. Para eso haremos un pequeño de las palabras claves que se utilizan en SQL,

Más detalles

Conceptos básicos de programación con PL/SQL

Conceptos básicos de programación con PL/SQL Conceptos básicos de programación con PL/SQL 1. Bloques PL/SQL 2. Tipos de Datos Estructurados 3. Funciones y Procedimientos 4. Paquetes 5. Métodos asociados a tipos de objetos 6. Disparadores de Base

Más detalles

Estándares para la construcción de Sentencias SQL

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

Más detalles

Comencemos a programar con. Entrega 09

Comencemos a programar con. Entrega 09 Comencemos a programar con VBA - Access Entrega 09 Estructuras de Control Eduardo Olaz 09-2 Estructuras de Control. Las estructuras de control son segmentos de código que nos permiten tomar decisiones

Más detalles

ORACLE DEVELOPER 10g

ORACLE DEVELOPER 10g Diplomado ORACLE DEVELOPER 10g INTRODUCCION En la era de los sistemas y la información es cada vez más imperioso presentar soluciones ajustadas a requerimientos determinados por los usuarios, con interfaces

Más detalles

Principales rutinas de mantenimiento

Principales rutinas de mantenimiento Principales rutinas de mantenimiento 1 Actualización de días de crédito en base al saldo del cliente La actualización de los días de crédito es una rutina que ayuda a saber cuales de nuestros clientes

Más detalles

OBJETIVOS METODOLOGÍA PROCEDIMIENTO 1.- Trabajo con el servidor de bases de datos Sybase

OBJETIVOS METODOLOGÍA PROCEDIMIENTO 1.- Trabajo con el servidor de bases de datos Sybase UNIVERSIDAD NACIONAL DE COLOMBIA FACULTAD DE INGENIERIA Departamento de Ingeniería de Sistemas e Industrial Curso de Bases de Datos Por: Ismael Castañeda Fuentes Taller Marzo 21 de 2013 OBJETIVOS Conectarse

Más detalles

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

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

Más detalles

Administración Básica de Oracle 10g. Prácticas sobre trabajos.

Administración Básica de Oracle 10g. Prácticas sobre trabajos. PRACTICAS. TRABAJOS. 1. Identificar los procesos de sistema operativo que corresponden a la base de datos, existe algún proceso coordinador de trabajos -cjqnnn- corriendo en la instancia?. homecursocurso01

Más detalles

Estándar de desarrollo de aplicaciones del Govern de les Illes Balears

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.

Más detalles

Anthony R. Sotolongo León Yudisney Vazquez Ortíz

Anthony R. Sotolongo León Yudisney Vazquez Ortíz Anthony R. Sotolongo León Yudisney Vazquez Ortíz ISBN : 978-1-312-99489-8, Edición 1 La Habana, 2015 Guía para el desarrollo de lógica de negocio del lado del servidor CONTENIDOS PREFACIO VII INTRODUCCIÓN

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 6 PL/SQL Programación avanzada MÓDULO Desarrollo de Aplicaciones en Entornos de Cuarta

Más detalles

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

PL/SQL. DECLARE /* Parte Declarativa */ BEGIN /* Parte de Ejecución */ EXCEPTION /* Parte de Excepciones */ END; 18 de marzo de 2002 1 1. Declaraciones Variables y constantes Cursores Excepciones 2. Instrucciones Asignación Control de flujo Bucles 3. Manejadores de excepciones 4. Anidamiento de bloques 5. Tipos de

Más detalles

Estructura de una BD Oracle. datafiles redo log controlfiles tablespace objetos Estructura lógica. Tablespaces tablespace SYSTEM

Estructura de una BD Oracle. datafiles redo log controlfiles tablespace objetos Estructura lógica. Tablespaces tablespace SYSTEM Estructura de una BD Oracle. Una BD Oracle tiene una estructura física y una estructura lógica que se mantienen separadamente. La estructura física se corresponde a los ficheros del sistema operativo:

Más detalles

Procedimientos Almacenados con InterBase

Procedimientos Almacenados con InterBase Procedimientos Almacenados con InterBase Por Alfonso Ricaño Bringas Los Procedimientos Almacenados son otra característica interesante con la que cuenta InterBase. En este artículo muestro una introducción

Más detalles

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

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

Más detalles

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

SQL dinámico en Transact SQL

SQL dinámico en Transact SQL SQL dinámico en Transact SQL Transact SQL permite dos formas de ejecutar SQL dinamico(construir sentencias SQL dinamicamente para ejecutarlas en la base de datos): La instrucción EXECUTE - o simplemente

Más detalles

ÍNDICE PRIMERA PARTE... 17

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

Más detalles

SQL (Structured Query Language)

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

Más detalles

DICCIONARIO DE DATOS

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

Más detalles

DIAGRAMAS DE FLUJO: DFD

DIAGRAMAS DE FLUJO: DFD DIAGRAMAS DE FLUJO: DFD DFD es un programa de libre disposición para ayuda al diseño e implementación de algoritmos expresados en diagramas de flujo (DF). Además incorpora opciones para el depurado de

Más detalles

TEMA 6: MODIFICACIÓN DE LA BASE DE DATOS EN SQL

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,

Más detalles

El lenguaje de manipulación de datos (DML) es una parte fundamental de SQL.

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

Más detalles

Definiciones. Tema 21_Módulos Menú 1

Definiciones. Tema 21_Módulos Menú 1 Definiciones Un menú es una lista de opciones o de órdenes que forman parte de un mismo título, mediante los cuales se podrán seleccionar determinadas operaciones de la aplicación. El conjunto de todos

Más detalles

Curso de Visual Basic 6.0 - Lección 1 Area Interactiva - www.areaint.com

Curso de Visual Basic 6.0 - Lección 1 Area Interactiva - www.areaint.com LECCIÓN 6 En esta lección vamos a familiarizarnos con las estructuras de repetición, las cuales nos sirven para realizar una misma instrucción un número determinado de veces o indeterminado dependiendo

Más detalles

SQL Los fundamentos del lenguaje

SQL Los fundamentos del lenguaje Introducción 1. Un poco de historia 11 2. Las normas SQL 12 3. Descripción rápida del modelo relacional 14 3.1 Principales conceptos del modelo relacional 15 3.2 Principales reglas 16 4. Los operadores

Más detalles

Bibliografía Oracle Database Concepts - 10g Release 2 (10.2) (Octubre 2005)

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

Más detalles

Disparadores en Oracle (Ejemplos Prácticos)

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

Más detalles

Administradores de Bases de Datos Studio.NET 2005 Y SQL Server 2005. Barrios

Administradores de Bases de Datos Studio.NET 2005 Y SQL Server 2005. Barrios Curso de SQL Server 2005 Developer e Introducción a VB.net Práctica No.1. Escribiendo y ejecutando código transact sql desde el Query Analyzer EELLAA BBO RRAADDO PPO RR: FFEECCHHAA DDEE EELLAABB OO RR

Más detalles

Oracle 12c DISEÑO Y PROGRAMACIÓN

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

Más detalles

Diseño de bases de datos

Diseño de bases de datos Departamento de Lenguajes y Sistemas Informáticos E.T.S. Ingeniería Informática. Universidad de Sevilla Avda Reina Mercedes sn. 41012 Sevilla TlfFax 954 557 139 E-mail lsi@lsi.us.es Web www.lsi.us.es Diseño

Más detalles

Tema 9. Bases de Datos Objeto-Relacionales en Oracle 8. 1. Introducción. 2. Tipos de Datos Definidos por el Usuario

Tema 9. Bases de Datos Objeto-Relacionales en Oracle 8. 1. Introducción. 2. Tipos de Datos Definidos por el Usuario Tema 9 Bases de Datos Objeto-Relacionales en Oracle 8 1. Introducción Debido a los requerimientos de las nuevas aplicaciones, en su octava versión, el sistema gestión de bases de datos relacionales Oracle

Más detalles

Programando con PL/SQL en una Base de Datos Oracle

Programando con PL/SQL en una Base de Datos Oracle Programando con PLSQL en una Base de Datos Oracle Instructor: Ing. Francisco Riccio. OCA Oracle Database Administrator 10g OCP Oracle Database Administrator 10g OCP Oracle Database Administrator 11g OCA

Más detalles

Haga clic para PostgreS cambiar el estilo

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

Más detalles

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

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

Más detalles

TEMA 8. CONSTRUCCIÓN DE GUIONES DE ADMINISTRACIÓN

TEMA 8. CONSTRUCCIÓN DE GUIONES DE ADMINISTRACIÓN 1 TEMA 8. CONSTRUCCIÓN DE GUIONES DE ADMINISTRACIÓN 1. Introducción 2. Procedimientos y funciones 3. Parámetros y variables 4. Instrucciones condicionales 5. Instrucciones repetitivas 6. Cursores 7. Gestión

Más detalles

INTRODUCCIÓN. En la actualidad existe un gran número de herramientas para el desarrollo de un

INTRODUCCIÓN. En la actualidad existe un gran número de herramientas para el desarrollo de un 1 2 iv INTRODUCCIÓN. En la actualidad existe un gran número de herramientas para el desarrollo de un sistema informático, cada una tiene sus ventajas y desventajas, lo importante es saber seleccionar lo

Más detalles

Introducción al SQL embebido

Introducción al SQL embebido Introducción al SQL embebido Bases de Datos II 1 Índice 1. Introducción. 2. Estructura típica de un programa 3. Declaración de variables. 4. Utilización de SQL embebido. Sentencias básicas Uso de cursores

Más detalles

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

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

Más detalles

6 - Recuperar algunos registros (where)

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

Más detalles

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

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

Más detalles

MS_20461 Querying Microsoft SQL Server

MS_20461 Querying Microsoft SQL Server Gold Learning Gold Business Intelligence Silver Data Plataform www.ked.com.mx Por favor no imprimas este documento si no es necesario. Introducción. Este curso proporciona a los estudiantes las habilidades

Más detalles

Tema: PROCEDIMIENTOS ALMACENADOS.

Tema: PROCEDIMIENTOS ALMACENADOS. Base de datos I. Guía 9 1 Facultad: Ingeniería Escuela: Computación Asignatura: Base de datos I Tema: PROCEDIMIENTOS ALMACENADOS. Objetivo Específico Conocer la sintaxis de un procedimiento almacenado

Más detalles

Introducción a PL/SQL

Introducción a PL/SQL Introducción a PL/SQL Características de PL/SQL (Procedural Language/SQL): Combina la potencia y flexibilidad de SQL con la de un lenguaje 3GL: SQL es un Lenguaje de Cuarta Generación (4GL): El lenguaje

Más detalles

Funcionamiento del sistema de autentificación en PHP

Funcionamiento del sistema de autentificación en PHP Sistema de autentificación PHP Cómo realizar un sistema de autentificación en PHP, en el que los usuarios deban introducir nombre y contraseña para que puedan visualizar las páginas de una aplicación con

Más detalles

Administración Básica de Oracle9i.

Administración Básica de Oracle9i. PRACTICAS. TRABAJOS (JOBS). 1. Identificar los procesos de sistema operativo que corresponden al proceso gestor de colas corriendo en la instancia. u01apporacleadmincurso01pfile (CURSO01)> ps -ef grep

Más detalles