Grandes volúmenes de datos Plan de ejecución. bases de datos

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

Download "Grandes volúmenes de datos Plan de ejecución. bases de datos"

Transcripción

1 Grandes volúmenes de datos Plan de ejecución bases de datos

2 Plan de ejecución Es la fase del parsing de una sentencia encargada de decidir cómo se va a acceder a los datos solicitados -> se encarga el optimizador. El optimizador ORACLE puede trabajar por REGLAS o COSTES (defecto) Si trabaja por COSTES el optimizador debe considerar diversos factores relacionados con los objetos referenciados y las condiciones especificadas en el query (indices existentes, tamaños de las tablas, histogramas de los datos, num. filas estimadas en la recuperación, etc ) Para obtener un correcto plan de ejecución (por COSTES) se deben recoger estadísticas con cierta frecuencia (hay muchas formas de hacerlo) ( ANALYZE TABLE t1 ESTIMATE STATISTICS FOR ALL COLUMNS FOR ALL INDEXES; DBMS_STATS.GATHER_SCHEMA_STATS(OWNNAME => USER1', CASCADE => TRUE); etc El resultado es el plan de ejecución (hoja de ruta a seguir para acceder a la información) 2

3 Plan de ejecución Podemos forzar el plan de ejecución mediante el uso de hints Los hints se especifican en la select select /*+ aquí el hint */ c1, c2, c3 from T Hay muchos tipos de hints (para pasar a modo REGLA, para usar índices, para forzar accesos paralelos, para forzar tablas conductoras en los jois, etc. ). Se recomienda consultar el manual Hay que utilizarlos SOLO cuando son estrictamente necesarios ya que quedan en el código y pueden ser contraproducentes en versiones posteriores 3

4 Ejemplos uso de Hints SELECT /*+ RULE */ C1, C2 FROM TABLA1 WHERE C1>100 Indicamos que queremos optimizador por reglas SELECT /*+ INDEX (TABLA1 ID1_T) */ C1, C2 FROM TABLA1, TABLA2 WHERE C1>100 AND TABLA1.C1=TABLA2.C3 Indicamos que queremos que use el índice ID1_T de la tabla TABLA1 SELECT /*+ NO_INDEX (T1 ID1_T) */ C1, C2 FROM TABLA1 T1, TABLA2 T2 WHERE C1>100 AND T1.C1=T2.C3 Si usamos alias en las tablas aquí debe de aparecer el alias Indicamos que NO queremos que use el índice ID1_T de la tabla TABLA1 4

5 EXPLAIN PLAN Permite consultar el plan de ejecución de una sentencia antes de ejecutarla Muestra plan de ejecución La sentencia no se ejecuta 5

6 EXPLAIN PLAN Inserta una fila en la tabla PLAN_TABLE por cada paso del plan de ejecución en una consulta PLAN_TABLE se proporciona en el script $ORACLE_HOME/RDBMS/ADMIN/UTLXPLAN.SQL 6

7 PLAN_TABLE Statement_id varchar2(30) Valor opcional para identificar planes de ejecución Operation varchar2(30) Nombre de la operación interna realizada Options varchar2(225) Detalles sobre la operación Object_name varchar2(30) Nombre de la tabla o índice Position numeric Para la primera fila indica el coste estimado por el optimizador para realizar la sentencia. Para el resto, indica la posición relativa respecto al padre 7

8 Sintaxis (reducida) EXPLAIN PLAN SET STATEMENT_ID = 'texto' INTO esquema.tabla (por defecto es la PLAN_TABLE) FOR sentencia ; 8

9 Cláusula set statement_id Valor para la columna plan_table.statement_id para las filas del plan de ejecución Valor por defecto null Cláusula into table Nombre de la tabla de salida Valor por defecto plan_table Cláusula for Sentencia para la cual se desea conocer el plan de ejecución Select, insert, update, delete, create table,.. 9

10 Ejemplo. No existe índice explain plan set statement_id = 'e1' into plan_table for select nomb_empr from empresas where cpos_empr = '03560'; select operation, options, object_name, position from plan_table where statement_id='e1'; 10

11 Ejemplo. Existe índice explain plan set statement_id = 'e2' into plan_table for select nomb_empr from empresas where cif_empr = 'A '; select operation, options, object_name, position from plan_table where statement_id='e2'; Al ser PK indica que solo recupera 1 11

12 Plan de ejecución en Oracle Ejemplo sin indice explain plan set statement_id='bm1' for select nume_pedi, fech_pedi from pedidos where esta_pedi ='R'; 12

13 Ejemplo con indice b-tree create index idx_pedidos_esta_pedi on pedidos (esta_pedi); explain plan set statement_id='bm2' for select nume_pedi, fech_pedi from pedidos where esta_pedi ='R'; Al no ser un indce UNICO ndica que solo recupera mas de 1, se desplaza por las hojas del indice 13

14 Ejemplo con índice bitmap drop index idx_pedidos_esta_pedi; create bitmap index bidx_pedidos_esta_pedi on pedidos (esta_pedi); explain plan set statement_id='bm3' for select nume_pedi, fech_pedi from pedidos where esta_pedi ='R'; 14

15 Ejemplo. Función aritmética explain plan set statement_id='bf1' for select nume_pedi, esta_pedi from pedidos where fech_pedi +5 = to_date('25/05/07, dd/mm/yyyy ); 15

16 Ejemplo. Función aritmética create index idx_pedidos_fech_pedi on pedidos (fech_pedi); explain plan set statement_id='bf2' for select nume_pedi, esta_pedi from pedidos where fech_pedi +5 = to_date('25/05/07, dd/mm/yyyy ); 16

17 Ejemplo. Función aritmética create index fidx_pedidos_fech_pedi on pedidos (fech_pedi+5); analyze table pedidos compute statistics; analyze index fidx_pedidos_fech_pedi validate structure; explain plan set statement_id='bf3' for select nume_pedi, esta_pedi from pedidos where fech_pedi +5 = to_date('25/05/07, dd/mm/yyyy ); 17

18 Ejemplo. Función aritmética explain plan set statement_id='bf4' for select nume_pedi, esta_pedi from pedidos where fech_pedi +5 > to_date('25/05/07, dd/mm/yyyy ); 18

19 Ejemplo. Función aritmética YA NO LO USA PUES EL INDICE SE CONSTRUYO CON +5 explain plan set statement_id='bf5' for select nume_pedi, esta_pedi from pedidos where fech_pedi +15 > to_date('25/05/07, dd/mm/yyyy ); 19

20 Ejemplo. Función predefinida SQL explain plan set statement_id='bf6' for select nomb_empr from empresas where cif_empr = 'A '; 20

21 Ejemplo. Función SQL explain plan set statement_id='bf6' for select nomb_empr from empresas where substr(cif_empr,1,1) = 'A'; 21

22 Ejemplo. Función SQL create index fidx_empresas_cif_empr on empresas (substr(cif_empr,1,1) ); analyze table empresas compute statistics; analyze index fidx_empresa_cif_empr validate structure; explain plan set statement_id='bf7' for select nomb_empr from empresas where substr(cif_empr,1,1) = 'A'; 22

23 índices compuestos CREATE E INDEX INDICE_X ON TABLA (c1, c2) Select * from TABLA where c1=x and c2=y ; Select * from TABLA where c2=y and c2=x ; Select * from TABLA where c1=x ; usarán el índice Select * from TABLA where c2=y ; No usará el índice

24 Predicados OR create index fidx_empresas_cpos on empresas ( cif_empr ); create index fidx_empresas_cpos on empresas ( cpos_empr ); analyze table empresas compute statistics; explain plan set statement_id='bf8' for select nomb_empr from empresas where cif_empr = 'A ' or cpos_empr='03011' ; Obtiene los resultados entrando por cada índice y después hace la fusión de resultados 24

25 Existen utilidades que nos facilitan gráficamente el plan de ejecución 25

26 En muchos casos el plan de ejecución es muy complejo 26

Grandes volúmenes de datos Plan de ejecución. bases de datos

Grandes volúmenes de datos Plan de ejecución. bases de datos Grandes volúmenes de datos Plan de ejecución bases de datos Plan de ejecución Es la fase del parseo de una sentencia encargada de decidir cómo se va a acceder a los datos solicitados -> se encarga el optimizador.

Más detalles

Grandes volúmenes de datos Particionamiento. bases de datos

Grandes volúmenes de datos Particionamiento. bases de datos Grandes volúmenes de datos Particionamiento bases de datos Particionamiento. Introducción Problemas con tablas con gran volumen de registros: Tiempo de respuesta en las consultas Problemas de almacenamiento

Más detalles

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

ADMINISTRACION DE ORACLE 9i Guía de estudio (OCA) TEMA 1 ADMINISTRACION DE ORACLE 9i Guía de estudio (OCA) TEMA 1 TEMA 1. CONSULTAS BÁSICAS Fundamentos de SQL Tipos de datos, operadores y literales Sentencia SELECT Limitación de filas y operadores Ordenación

Más detalles

Grandes volúmenes de datos Vistas materializadas. bases de datos

Grandes volúmenes de datos Vistas materializadas. bases de datos Grandes volúmenes de datos Vistas materializadas bases de datos Es una vista pero no sólo se almacena su definición, sino también los datos que devuelve en una tabla que el sistema crea de forma automática

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

Modelamiento y Gestión de Base de Datos

Modelamiento y Gestión de Base de Datos Modelamiento y Gestión de Base de Datos Uso de sentencias para el envió y extracción de datos Objetivos: Identificar la sintaxis de las consultas de datos Elaborar sentencias de manejo de datos. INTRODUCCION:

Más detalles

Uso de sentencias para el envió y extracción de datos

Uso de sentencias para el envió y extracción de datos Base de datos I Uso de sentencias para el envió y extracción de datos Objetivos: Identificar la sintaxis de las consultas de datos Elaborar sentencias de manejo de datos. INTRODUCCION: Las sentencias más

Más detalles

Tutorial MySql - 1 -

Tutorial MySql - 1 - Tutorial MySql - 1 - Índice 1 - Introducción...4 2 - show databases...5 3 - Creación de una tabla y mostrar sus campos (create table - show tables - describe - drop table)...6 4 - Carga de registros a

Más detalles

1. Lenguaje de Definición de Datos. 2. Lenguaje de Manipulación de. Datos. M. C. Gustavo Alfonso Gutiérrez Carreón

1. Lenguaje de Definición de Datos. 2. Lenguaje de Manipulación de. Datos. M. C. Gustavo Alfonso Gutiérrez Carreón 1. Lenguaje de Definición de Datos 2. Lenguaje de Manipulación de Datos M. C. Gustavo Alfonso Gutiérrez Carreón Los 'sistemas de gestión de bases de datos (en inglés database management system, abreviado

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

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

ÍNDICE. Introducción... Capítulo 1. Características, instalación, inicio y entorno de trabajo... 1

ÍNDICE. Introducción... Capítulo 1. Características, instalación, inicio y entorno de trabajo... 1 ÍNDICE Introducción... XI Capítulo 1. Características, instalación, inicio y entorno de trabajo... 1 Características y novedades de Access 2010... 1 Comienzo rápido del trabajo y seguimiento de la información...

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

T07 Opciones de integridad referencial

T07 Opciones de integridad referencial 1 de 9 17/05/2013 13:48 Lecciones SQL > T07 Opciones de integridad referencial Contenidos 1 Las opciones para mantener la integridad Las opciones para mantener la integridad referencial 2 On delete referencial

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

Bases de Datos 1. Teórico: Structured Query Language

Bases de Datos 1. Teórico: Structured Query Language Bases de Datos 1 Teórico: Structured Query Language Historia Los orígenes del SQL están ligados a los orígenes de las bases de datos relacionales Estandarizado por ANSI en 1986 (SQL-86) Hubieron varias

Más detalles

Base de datos Oracle: Arquitectura Oracle. Arquitectura. Marzo Luis Vinuesa Martínez

Base de datos Oracle: Arquitectura Oracle. Arquitectura. Marzo Luis Vinuesa Martínez Base de datos Oracle: Marzo 2003 1 Arquitectura Oracle 2 Arquitectura 3 Arquitectura Instancias Schema User/Password SQLNET o NET8 SQLNET LISTENER 4 Arquitectura - memoria SGA (Shared Global Area) Database

Más detalles

Oracle Database 12c - Histogramas

Oracle Database 12c - Histogramas Oracle Database 12c - Histogramas Gaston Aprile Mail to: gaaprile@cl.ibm.com gasaprile@gmail.com 2016 2015 IBM Corporation Contenido Performance Que son las estadísticas? Que son los Histogramas? Tipos

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 lsi@lsi.us.es www.lsi.us.es E.T.S. Ingeniería Informática Diseño de bases de datos Práctica-1

Más detalles

Un proyecto de IBM llamado Sistem/R construye un prototipo simple llamado SQUARE que después se transformó en SQL.

Un proyecto de IBM llamado Sistem/R construye un prototipo simple llamado SQUARE que después se transformó en SQL. CONTENIDO: 1. Lenguaje SQL 1. Componentes 2. Comandos 3. Clausulas 4. Operadores lógicos 5. Operadores de comparación 6. Funciones de agregado 2. MYSQL 1. Como entrar a MySQL 2. Comandos generales 3. Sintaxis

Más detalles

SQL SERVER SQL Server 2005 permite tres tipos de operaciones con conjuntos: UNION, disponible en todas las versiones de SQL Server.

SQL SERVER SQL Server 2005 permite tres tipos de operaciones con conjuntos: UNION, disponible en todas las versiones de SQL Server. SQL SERVER 2005 Operaciones con Conjuntos SQL Server 2005 permite tres tipos de operaciones con conjuntos: UNION, disponible en todas las versiones de SQL Server. EXCEPT, nuevo en SQL Server 2005. INTERSECT,

Más detalles

SQL Básico. José Muñoz Jimeno Febrero 2015

SQL Básico. José Muñoz Jimeno Febrero 2015 SQL Básico José Muñoz Jimeno Febrero 2015 Control de cambios Version Fecha Comentarios 1.0 13/02/2015 Primera versión para el curso Introducción a las bases de datos con MySQL en el COITCV La última versión

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

Manejo de Tablas y Llaves Foráneas

Manejo de Tablas y Llaves Foráneas Manejo de Tablas y Llaves Foráneas Llaves Foráneas Para manejar las llaves foráneas, deben crearse al menos dos tablas, la primera tal y como se ha hecho anteriormente CREATE TABLE nombre_tabla ( nombre_columna_1

Más detalles

Modulo I: Introducción Gestores de Bases De Datos

Modulo I: Introducción Gestores de Bases De Datos Modulo I: Introducción Gestores de Bases De Datos El SQL El SQL (Lenguaje de Consulta Estructurado Structure Query Language), es un lenguaje de consulta estructurado establecido claramente como el lenguaje

Más detalles

SUBCONSULTAS SQL. Cuando se ejecuta una consulta que contiene una subconsulta, la subconsulta se ejecuta por cada fila de la consulta principal.

SUBCONSULTAS SQL. Cuando se ejecuta una consulta que contiene una subconsulta, la subconsulta se ejecuta por cada fila de la consulta principal. SUBCONSULTAS SQL DEFINICION. Una subconsulta es una sentencia SELECT que aparece dentro de otra sentencia SELECT que llamaremos consulta principal. Se puede encontrar en la lista de selección, en la cláusula

Más detalles

Usando los operadores SET (Conjunto)

Usando los operadores SET (Conjunto) Usando los operadores SET (Conjunto) Objetivos del capítulo Describir los operadores SET (Conjunto) Usar un operador SET (Conjunto) para combinar múltiples consultas en una consulta simple Controlar el

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

Bases de Datos Ejercicio Número 2 Bogotá, Diciembre 5 de 2013

Bases de Datos Ejercicio Número 2 Bogotá, Diciembre 5 de 2013 Bases de Datos Ejercicio Número 2 Bogotá, Diciembre 5 de 203 Enunciado del ejercicio En los servidores de bases de asignados al curso: Sybase, MS SQL Server y Oracle, elaborar el ejercicio sobre aislamiento,

Más detalles

6.1. Introducción. Guía 5. SQL.

6.1. Introducción. Guía 5. SQL. 6.1. Introducción. Guía 5. SQL. 1 6.2. Lenguaje de Definición de Datos (Data Definition Language DDL-). 2 3 4 5 -------------------------------------------------------------------------------------------------------------------------

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

Conexiones a BD. Juan Manuel Espinoza Marquez CFT San Agustín Linares -2012

Conexiones a BD. Juan Manuel Espinoza Marquez CFT San Agustín Linares -2012 Conexiones a BD Juan Manuel Espinoza Marquez juanmanuel.espinoza@gmail.com CFT San Agustín Linares -2012 Bases de datos en la Web Las bases de datos permiten almacenar de una forma estructurada y eficiente

Más detalles

4- Uso de sentencias para el envió y extracción de datos

4- Uso de sentencias para el envió y extracción de datos Objetivos: 4- Uso de sentencias para el envió y extracción de datos Identificar la sintaxis de las consultas de datos Elaborar sentencias de manejo de datos. Recursos: SQL SERVER 2012 Guías de práctica.

Más detalles

TRANSACT-SQL, DISEÑO Y PROGRAMACIÓN DE BASES DE DATOS EN SQL SERVER 2008

TRANSACT-SQL, DISEÑO Y PROGRAMACIÓN DE BASES DE DATOS EN SQL SERVER 2008 TRANSACT-SQL, DISEÑO Y PROGRAMACIÓN DE BASES DE DATOS EN SQL SERVER 2008 ESTRUCTURA DEL SEMINARIO Modulo 1: Crear y administrar una base de datos SQL Server Métodos para crear una base de datos SQLServer.

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

Objetivos: Descripción del curso. Curso: Dirigido a: INTRODUCCIÓN A SQL - ORACLE UNIVERSIDAD NACIONAL DE INGENIERÍA

Objetivos: Descripción del curso. Curso: Dirigido a: INTRODUCCIÓN A SQL - ORACLE UNIVERSIDAD NACIONAL DE INGENIERÍA INTRODUCCIÓN A SQL - ORACLE Duración: 24 hrs. Código: INSQL Curso: Descripción del curso El curso se desarrollará bajo la modalidad de un taller, desarrollando casos prácticos con los conocimientos obtenidos.

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

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

Insertar Datos en Tablas

Insertar Datos en Tablas Insertar Datos en Tablas La instrucción básica para insertar valores a los atributos (columnas) de una tabla es la instrucción INSERT INTO Insertar una sola tupla Para insertar una tupla en la tabla, se

Más detalles

Número de Práctica: 1 Nombre de la Práctica: Comunicación Cliente Servidor Vía Sockets Java con Sistema Manejador de Bases de Datos

Número de Práctica: 1 Nombre de la Práctica: Comunicación Cliente Servidor Vía Sockets Java con Sistema Manejador de Bases de Datos Número de Práctica: 1 Nombre de la Práctica: Comunicación Cliente Servidor Vía Sockets Java con Sistema Manejador de Bases de Datos Problemática: Desarrollar aplicaciones Cliente Servidor utilizando Sockets

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

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

Modelamiento y Diseño de Base de Datos

Modelamiento y Diseño de Base de Datos Modelamiento y Diseño de Base de Datos Sub consultas y vistas Objetivos: Elaborar sub consultas, a partir de una consulta. Generar diferentes vistas a partir de las tablas de una base de datos. Introducción

Más detalles

Modificar estructura Se pueden agregar/quitar campos a una tabla, modificar el tipo de un campo, agregar/quitar índices a una tabla, etc.

Modificar estructura Se pueden agregar/quitar campos a una tabla, modificar el tipo de un campo, agregar/quitar índices a una tabla, etc. EL lenguaje SQL(Structured Query Language) El Lenguaje de Consulta Estructurado (Structured Query Language) es unlenguaje de acceso a bases de datos relacionales que permite especificar diversos tipos

Más detalles

Tema 1. Introducción a MySQL. José Muñoz Jimeno Octubre 2015

Tema 1. Introducción a MySQL. José Muñoz Jimeno Octubre 2015 Tema 1. Introducción a MySQL José Muñoz Jimeno Octubre 2015 Control de cambios Versión Fecha Comentarios 1.0 21/05/2015 Primera versión para el curso Introducción a la administración de MySQL en el COITCV

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

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

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

FUNDAMENTOS ORACLE 12C

FUNDAMENTOS ORACLE 12C FUNDAMENTOS ORACLE 12C Introducción a Oracle Fundamentos 12c Aprende a programar en SQL con la base de datos más poderosa del mercado. Diseña y modela bases de datos corporativas utilizando las herramientas

Más detalles

SQL DML Select. Ges$ón y Modelación de Datos. María Constanza Pabón

SQL DML Select. Ges$ón y Modelación de Datos. María Constanza Pabón SQL DML Select Ges$ón y Modelación de Datos María Constanza Pabón mcpabon@javerianacali.edu.co SQL - DML Sentencias: INSERT UPDATE DELETE SELECT SQL - DML Query (consulta): proceso de recuperar datos de

Más detalles

UNIVERSIDADE DE VIGO ESCOLA TÉCNICA SUPERIOR DE ENXEÑEIROS DE MINAS MÉTODOS COMPUTACIONALES. Transparencias

UNIVERSIDADE DE VIGO ESCOLA TÉCNICA SUPERIOR DE ENXEÑEIROS DE MINAS MÉTODOS COMPUTACIONALES. Transparencias UNIVERSIDADE DE VIGO ESCOLA TÉCNICA SUPERIOR DE ENXEÑEIROS DE MINAS MÉTODOS COMPUTACIONALES Transparencias Índice de la asignatura Niveles de abstracción en una base de datos Funciones de un Sistema Gestor

Más detalles

Seguridad de la Información Permisos. Sistemas de Bases de Datos II - ITS EMT - CETP

Seguridad de la Información Permisos. Sistemas de Bases de Datos II - ITS EMT - CETP Seguridad de la Información Permisos Permisos Para mantener la seguridad de la base de datos existen permisos que permiten: utilizar la B. D. utilizar tablas de la B. D. utilizar columnas de la B. D. utilizar

Más detalles

Clase 4: SQL DDL DML Consultas Simples y Multitablas. BASE DE DATOS FAC.DE INGENIERIA - UNJu

Clase 4: SQL DDL DML Consultas Simples y Multitablas. BASE DE DATOS FAC.DE INGENIERIA - UNJu Clase 4: SQL DDL DML Consultas Simples y Multitablas BASE DE DATOS FAC.DE INGENIERIA - UNJu SQL (Structured query language) Es un lenguaje de consulta estructurado, surgido de un proyecto de investigación

Más detalles

Oracle Fundamentos. Programa de Estudio.

Oracle Fundamentos. Programa de Estudio. Oracle Fundamentos Programa de Estudio Oracle Fundamentos Aprende a programar en SQL con la base de datos más poderosa del mercado. Diseña y modela bases de datos corporativas utilizando las herramientas

Más detalles

Oracle Fundamentos. Programa de Estudio.

Oracle Fundamentos. Programa de Estudio. Oracle Fundamentos Programa de Estudio Oracle Fundamentos Aprende a programar en SQL con la base de datos más poderosa del mercado. Diseña y modela bases de datos corporativas utilizando las herramientas

Más detalles

LENGUAJE DE CONSULTA ESTRUCTURADO (SQL)

LENGUAJE DE CONSULTA ESTRUCTURADO (SQL) Qué es una base de datos? Una base de datos (cuya abreviatura es BD) es una entidad en la cual se pueden almacenar datos de manera estructurada, con la menor redundancia posible. Diferentes programas y

Más detalles

INSTITUTO DE EDUCACIÓN SUPERIOR TECNOLÓGICO IBEROTEC SEMESTRE ACADÉMICO: 2014-II SÍLABO

INSTITUTO DE EDUCACIÓN SUPERIOR TECNOLÓGICO IBEROTEC SEMESTRE ACADÉMICO: 2014-II SÍLABO INSTITUTO DE EDUCACIÓN SUPERIOR TECNOLÓGICO IBEROTEC SEMESTRE ACADÉMICO: 201-II SÍLABO 1. DATOS GENERALES UNIDAD DIDÁCTICA : DESARROLLO DE APLICACIONES CON BASE DE DATOS MÓDULO : DESARROLLO DE SOFTWARE

Más detalles

Columnas calculadas (operadores aritméticos y de concatenación)

Columnas calculadas (operadores aritméticos y de concatenación) Columnas calculadas (operadores aritméticos y de concatenación) SqlServer Aprendimos que los operadores son símbolos que permiten realizar distintos tipos de operaciones. Dijimos que SQL Server tiene 4

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 Structured Query Language Lenguaje de consulta para bases de datos comerciales. Originalmente llamado

Más detalles

El Lenguaje SQL TEMA V. Grupo de Bas ses de Datos Avanzadas Univ. Carlo os III de Madrid. V.1 SQL como Lenguaje de Definición de Datos

El Lenguaje SQL TEMA V. Grupo de Bas ses de Datos Avanzadas Univ. Carlo os III de Madrid. V.1 SQL como Lenguaje de Definición de Datos Grupo de Bases de Datos Avanzadas Univ. Carlos III de Madrid Índice V.1 Introducción V.1 SQL como Lenguaje de V.1.1 Definición del esquema V.1.2 Evolución del esquema V.2 SQL como Lenguaje de Manipulación

Más detalles

Integridad Referencial. Restricciones (constraints)

Integridad Referencial. Restricciones (constraints) Integridad Referencial Restricciones (constraints) Integridad de Referencial Integridad referencial: asegura la integridad entre las llaves foráneas y primarias (relaciones padre/hijo). Existen cuatro

Más detalles

Herramientas para la optimización

Herramientas para la optimización Herramientas para la optimización Creación de la tabla de Planes 1. Se debe ejecutar el siguiente script para la creación de la tabla de los planes (plan_table) @utlxplan.sql Ejemplo del EXPLAIN PLAN SQL>

Más detalles

8 SQL SERVER 2008 RA-MA

8 SQL SERVER 2008 RA-MA ÍNDICE Capítulo 1. Características, novedades y entorno de trabajo... 17 1.1 Novedades en SQL Server 2008... 17 1.2 Instalación de Microsoft SQL Server 2008... 19 1.3 Versiones de Microsoft SQL Server

Más detalles

VISUALIZACIÓN DE DATOS A PARTIR DE VARIAS TABLAS

VISUALIZACIÓN DE DATOS A PARTIR DE VARIAS TABLAS VISUALIZACIÓN DE DATOS A PARTIR DE VARIAS TABLAS Puede que al realizar una consulta necesitemos los datos producidos por otra consulta. Para realizar esto se pueden anidar varias sentencias select con

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

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 lsi@lsi.us.es Web www.lsi.us.es

Más detalles

Utilizar la cláusula RETURNS es obligatorio al momento de definir una función y sirve para especificar el tipo de dato que será devuelto.

Utilizar la cláusula RETURNS es obligatorio al momento de definir una función y sirve para especificar el tipo de dato que será devuelto. Funciones MySQL La diferencia entre una función y un procedimiento es que la función devuelve valores. Estos valores pueden ser utilizados como argumentos para instrucciones SQL. Utilizar la cláusula RETURNS

Más detalles

Create Database ClaseAutos. Use ClaseAutos

Create Database ClaseAutos. Use ClaseAutos Vamos a Crear el siguiente modelo, en una base de Datos llamada ClaseAutos. Comando para Crear la Base de Datos Create Database ClaseAutos Comando para utilizar la Base de Datos Use ClaseAutos vehiculo

Más detalles

Capítulo 7. Optimización de consultas

Capítulo 7. Optimización de consultas Capítulo 7 Optimización de consultas ÍNDICE CAPÍTULO 7 Índices Tipos de índices Índices en MySQL Gestión de índices Procesamiento de consultas Optimización de consultas e índices Sugerencias de ejecución

Más detalles

Unidad IV. Aplicaciones sobre Base de Datos

Unidad IV. Aplicaciones sobre Base de Datos Clase:013 1 Unidad IV Aplicaciones sobre Base de Datos 2 Agenda PROGRAMA DE MANIPULACION DE BASE ANDROID SQLITE SQLITE OpenHelper SQLITE Database Cursor Ejemplos Agregar controles según campo Usar query

Más detalles

Funciones de PHP con MySQL.

Funciones de PHP con MySQL. Funciones de PHP con MySQL. Una vez que conocemos las características básicas de MySQL y las sentencias SQL que se pueden ejecutar, vamos a ver como se integra MySQL con PHP. Las definiciones de bases

Más detalles

Data source name: Nombre por el que se conocerá la conexión ODBC y que será usado en los distintos clientes del driver ODBC.

Data source name: Nombre por el que se conocerá la conexión ODBC y que será usado en los distintos clientes del driver ODBC. Página 1 de 16 Odbc Driver V7 Se trata del driver de acceso a datos Velneo. Satisface los siguientes estándares ODBC: - Driver ODBC Version: 3.00 - ODBC Version: 3.52 - ODBC API Conformance Level 1 - ODBC

Más detalles

8 MICROSOFT SQL SERVER 2008 R2. CURSO PRÁCTICO RA-MA

8 MICROSOFT SQL SERVER 2008 R2. CURSO PRÁCTICO RA-MA ÍNDICE CAPÍTULO 1. CARACTERÍSTICAS, NOVEDADES Y ENTORNO DE TRABAJO...17 1.1 NOVEDADES EN SQL SERVER 2008 R2...17 1.2 INSTALACIÓN DE MICROSOFT SQL SERVER 2008 R2...18 1.3 VERSIONES DE MICROSOFT SQL SERVER

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

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

OPTIMIZADOR ORACLE. 1. La meta: escoger el modo más eficiente de ejecutar una declaración S.Q.L. FILTER 2 NESTED LOOPS

OPTIMIZADOR ORACLE. 1. La meta: escoger el modo más eficiente de ejecutar una declaración S.Q.L. FILTER 2 NESTED LOOPS 1 OPTIMIZADOR ORACLE. 1. La meta: escoger el modo más eficiente de ejecutar una declaración S.Q.L. Ejemplo : SELECT ename,job, sal, dname FROM emp,dept WHERE emp.deptno = dept.deptno AND NOT EXISTS ( SELECT

Más detalles

Guía N 5 Tema: Consultas de manipulación de datos

Guía N 5 Tema: Consultas de manipulación de datos Facultad: Ingeniería Escuela: Computación Asignatura: Modelamiento y diseño de base de datos Guía N 5 Tema: Consultas de manipulación de datos I. Objetivos Que el estudiante sea capaz de: 1. Agregar información

Más detalles

Contenidos. 1 Aspectos de seguridad 2 El Sistema de Privilegios 3 Conexión n al servidor 4 Control de Acceso 5 Ejercicios

Contenidos. 1 Aspectos de seguridad 2 El Sistema de Privilegios 3 Conexión n al servidor 4 Control de Acceso 5 Ejercicios Contenidos 1 Aspectos de seguridad 2 El Sistema de Privilegios 3 Conexión n al servidor 4 Control de Acceso 5 Ejercicios 2 1 Aspectos de seguridad MySQL tiene un sistema de seguridad muy avanzado Utiliza

Más detalles

GESTORES GESTORES DE BASES DE DATOS

GESTORES GESTORES DE BASES DE DATOS GESTORES GESTORES DE BASES DE DATOS Existen varios tipos de Sistemas gestores de bases de datos SGBD, según el modelo de datos que utilizan. Son estos: bases jerárquica, en red, relacional, y bases de

Más detalles

Introducción a phpmyadmin

Introducción a phpmyadmin Introducción a phpmyadmin, ejercicio http://idesweb.es/ 1 Introducción a phpmyadmin El propósito del siguiente ejercicio es replicar, más o menos, la base de datos utilizada en los videos de introducción

Más detalles

LENGUAJE DE MANIPULACIÓN DE DATOS

LENGUAJE DE MANIPULACIÓN DE DATOS LENGUAJE DE MANIPULACIÓN DE DATOS Las instrucciones de DML funcionan con los datos de la base de datos. Mediante estas instrucciones puede cambiarlos o recuperar información. Las instrucciones de DML incluyen:

Más detalles

departamento NUMBER(3) FK (DEPARTAMENTOS.CODIGO) salario NUMBER(3) NOT NULL fecha_alta DATE NOT NULL jefe NUMBER(5) FK (EMPLEADOS.

departamento NUMBER(3) FK (DEPARTAMENTOS.CODIGO) salario NUMBER(3) NOT NULL fecha_alta DATE NOT NULL jefe NUMBER(5) FK (EMPLEADOS. 7.- MANIPULACION DE DATOS El lenguaje de manipulación de datos (DML) es parte esencial del SQL. Si queremos actualizar, insertar o eliminar datos de la base de datos, tenemos que ejecutar una sentencia

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

Acceso a bases de datos MySQL con PHP

Acceso a bases de datos MySQL con PHP GESTIÓN Y ADMINISTRACIÓN WEB Acceso a bases de datos MySQL con PHP Ing. CIP Fabián Silva Alvarado fsilvasys@hotmail.com DEFINICIÓN DE BASE DE DATOS Base de Datos es un conjunto de datos relacionados entre

Más detalles

UNIVERSIDAD DON BOSCO FACULTAD DE ESTUDIOS TECNOLÓGICOS ESCUELA DE COMPUTACIÓN

UNIVERSIDAD DON BOSCO FACULTAD DE ESTUDIOS TECNOLÓGICOS ESCUELA DE COMPUTACIÓN CICLO 3-2016 UNIVERSIDAD DON BOSCO FACULTAD DE ESTUDIOS TECNOLÓGICOS ESCUELA DE COMPUTACIÓN GUÍA DE LABORATORIO Nº 8 Nombre de la práctica: Consultas a múltiples tablas. Uso de JOIN y SUBCONSULTAS. Lugar

Más detalles

SINTAXIS DE SQL-92. <definición de esquema >::= CREATE SCHEMA <cláusula de nombre de esquema> [ <elemento de esquema>... ]

SINTAXIS DE SQL-92. <definición de esquema >::= CREATE SCHEMA <cláusula de nombre de esquema> [ <elemento de esquema>... ] SINTAXIS DE SQL-92 Introducción: Se presenta brevemente un resumen de la sintaxis de SQL según el estándar ISO 9075 (SQL- 92), dividido en tres partes: - Lenguaje de Definición de Daots (LDD), - Lenguaje

Más detalles

INTRODUCCIÓN A LAS BASES DE DATOS. L.I Gerardo Benavides Pérez

INTRODUCCIÓN A LAS BASES DE DATOS. L.I Gerardo Benavides Pérez INTRODUCCIÓN A LAS BASES DE DATOS L.I Gerardo Benavides Pérez SISTEMA GESTOR DE BASE DE DATOS Un sistema gestor de bases de datos (SGBD) consiste en una colección de datos interrelacionados y un conjunto

Más detalles

Manual Práctico de SQL. ORIENTADO A SQL 7.0 Preparado por: Alvaro E. García

Manual Práctico de SQL. ORIENTADO A SQL 7.0 Preparado por: Alvaro E. García ORIENTADO A SQL 7.0 Preparado por: Alvaro E. García alvaroegarcia@ubbi.com ÍNDICE INTRODUCCIÓN 3 PASOS PARA IMPLEMENTAR UNA BD 5 CREAR UNA BD 6 SENTENCIA CREATE 8 LIGADURAS 9 ELIMINACIÓN DE TABLAS 14 SENTENCIA

Más detalles

Procesamiento de Consultas. Carlos A. Olarte (carlosolarte@puj.edu.co) BDII

Procesamiento de Consultas. Carlos A. Olarte (carlosolarte@puj.edu.co) BDII Carlos A. Olarte (carlosolarte@puj.edu.co) BDII Contenido 1 Introducción 2 Indexación 3 Costo de las Operaciones 4 Evaluación de Expresiones 5 Transformación de Expresiones 6 Un ejemplo con Oracle Pasos

Más detalles

Bases de datos: Lenguaje de consultas SQL

Bases de datos: Lenguaje de consultas SQL Bases de datos: Lenguaje de consultas SQL EMPEZAR LA CASA POR EL TEJADO Del código máquina a los lenguajes de alto nivel. Img 0. Del código máquina al lenguaje de alto nivel. Creación propia. De los sistemas

Más detalles

Fundamentos de Bases de Datos. Práctica 8.

Fundamentos de Bases de Datos. Práctica 8. Fundamentos de Bases de Datos. Práctica 8. Profesor: M.I. Gerardo Avilés Rosas gar@ciencias.unam.mx Laboratorio: Carlos Augusto Escalona Navarro caen@ciencias.unam.mx 8 de octubre de 2018 Se dan a conocer

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

SQL - DDL y consultas de actualización. José Muñoz Jimeno Febrero 2015

SQL - DDL y consultas de actualización. José Muñoz Jimeno Febrero 2015 SQL - DDL y consultas de actualización José Muñoz Jimeno Febrero 2015 Control de cambios Versión Fecha Comentarios 1.0 13/02/2015 Primera versión para el curso Introducción a las bases de datos con MySQL

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