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

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

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

Transcripción

1 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 * FROM salgrade WHERE emp.sal BETWEEN losal and hisal ); 1 FILTER 3 emp 2 NESTED 6 LOOPS 4 (BY ROWID) dept salgrade 5 INDEX (UNIQUE SCAN) pk_deptno ID 0 SELECT STATEMENT 1 FILTER 2 NESTED LOOPS 3 FULL EMP 4 BY ROWID DEPT 5 INDEX UNIQUE SCAN PK_DEPTNO 6 FULL SALGRADE 1

2 2 2. Como se lleva a cabo la optimización : 2.1 Se evaluan todas las condiciones y expresiones que sea posible. eje1: sal > 24000/12. es transformada en sal > sal * 12 > NO es transformada. Observación : comparar columnas con constantes siempre que sea posible. eje2 : ename IN ( SMITH, KING, JONES ) es transformada en ename = SMITH OR ename = KING OR ename = JONES Observacion : Idem para ANY y para ALL eje3: x > ANY ( SELECT sal FROM emp WHERE job = ANALYST ) es transformada en EXISTS ( SELECT sal FROM emp WHERE job = ANALYST AND x > sal ); 2.2. Transforma la declaración en una equivalente (manipulación algebraica). ejemplo 1 : SELECT * FROM emp WHERE job = CLERK OR depto = 10; Si hay índice sobre ambas columnas se transforma en : SELECT * FROM emp WHERE job = CLERK UNION ALL SELECT * FROM emp WHERE depto = 10 and job <> CLERK ; Si uso el optimizador basado en reglas, se asume que el uso de los índices es de menor que leer todos los bloques que contienen la tabla. costo Con el optimizador basado en costos se evaluan las dos alternativas y se asume la de menor costo. ejemplo 2 : SELECT * FROM accounts WHERE custno IN ( SELECT custno FROM customers); Si custno tiene un índice en customers, Se transforma en SELECT accounts.* FROM accounts,customers WHERE accounts.custno = customers.custno; 2.3. Une las vistas con la declaración original y optimiza el resultado. Ejemplo1 : CREATE VIEW emp_10 2

3 3 AS SELECT empno,ename,job,... FROM emp WHERE deptno = 10; La consulta : SELECT empno FROM emp_10 WHERE empno > 7800; Se transforma en : SELECT empno FROM emp WHERE deptno = 10 AND empno > 7800; Observacion: Si la definición de la vista involucra operadores como UNION, INTERSECT, MINUS, GROUP BY,CONNECT BY, DISTINCT o funciones de grupo, no siempre es posible mezclar la vista con el SELECT que se ejecute Escoge el criterio de optimización TIPOS DE OPTIMIZACION: Basada en reglas: Se apoya en una información predefinida, donde cada operación tiene un rango de menor a mayor. Escoge la opción de menor rango. Basada en costos: Entre todos los posibles caminos de acceso escoge el de menor costo; para calcular dicho costo se apoya en estadísticas almacenadas en el diccionario de datos (tamaño de las tablas, indices existentes, imagen de los índices, etc). Tambien considera sugerencias definidas por quien ejecuta la instruccción. Véase OPTIMIZER_MODE en el init.ora. valores posibles: CHOOSE, COST o RULE. En su lugar usar el comando ALTER SESSION SET OPTIMIZER_GOAL= ALL_ROWS FIRST_ROWS RULE CHOOSE 2.5. Para cada tabla utilizada se escoge uno ó varios caminos de acceso a los datos Mecanismos de acceso a una tabla. FULL SCAN. BY ROWID. CLUSTER SCAN. Obtiene ROWID del índice y luego lee los bloques de la clave cluster. HASH SCAN. INDEX SCAN. (UNIQUE) o (RANGE) Tabla de rangos para el optimizador basado en reglas. Rango Camino de Acceso 1 Single row by ROWID 2 Single row by cluster join 3 Single row by hash cluster key with unique or primary key 4 Single row by unique or primary key. 5 cluster join 3

4 4 6 hash cluster key 7 Indexed cluster key 8 Composite index 9 single-column index 10 Bounded range search on indexed columns 11 Unbounded range search on indexed columns 12 sort-merge join 13 MAX or MIN of indexed column 14 ORDER by on indexed columns 15 Full table scan Camino 1: Si uso el ROWID o la clausula CURRENT OF CURSOR. Camino 2 : SELECT emp, dept FROM emp. dept WHERE emp.deptno = dept.deptno AND emp.empno = 7900; empno es la clave primaria y hay cluster por deptno. nested loops table access by rowid emp index unique scan pk_emp table access cluster dept Camino 3 : Válido si se cumplen ambas condiciones y el predicado usa la igualdad. Camino 4 : Utiliza al árbol B para obtener el rowid. Camino 5 : SELECT * FROM emp,dept WHERE emp.deptno = dept.deptno; Existe cluster por deptno entre ambas tablas. nested loops table access full dept table access cluster emp Camino 6 : Clave aleatoria. La columna con clave HASH no hace parte de la clave primaria. SELECT * FROM item WHERE orderno = ; Camino 7 : Clave cluster. SELECT warehouse_id,product_id,qtty FROM INVENTORY WHERE product_id = 1000; Si hay cluster por product_id. table access cluster inventory 4

5 5 index unique scan prod_idx Camino 8 : Indice compuesto. Las columnas del predicado hacen parte de un índice compuesto no único. SELECT * FROM emp WHERE depto = 20 AND region = 1; Asumiendo índice compuesto (region,depto) table access by rowid emp index range scan reg_dept_idx Camino 9 : Indice de solo una columna. Cada índice no único está creado sobre una sola columna de la tabla. SELECT * FROM emp WHERE job = ANALYST AND deptno = 20; Asumiendo índices en ambas columnas. table access by rowid emp and-equal index range scan job_idx index range scan dept_idx Camino 10 : Búsqueda por rango limitado sobre una columna con índice. SELECT * FROM emp WHERE deptno BETWEEN 30 AND 50; table access by rowid emp index range scan dept_idx Nota : valida si uso la primera columna de un índice compuesto. Camino 11: Búsqueda con rango ilimitado sobre una columna con índice. SELECT * FROM emp WHERE deptno > 30; 5

6 6 table access by rowid emp index range scan dept_idx Camino 12: Reunión natural con clasificación-mezcla. SELECT * FROM emp, dept WHERE emp.deptno = dept.deptno. Asumiendo que no hay cluster entre ambas tablas. merge join sort join table access full emp sort join table access full dept Camino 13 : Máximo o mínimo de una columna con índices. SELECT max(sal) FROM emp; Sólo aparece la columna con índice en el SELECT y no hay WHERE ni GROUP BY. aggregate index range scan sal_idx Camino 14 : ORDER BY en columna con índice. SELECT * FROM emp order by empno; table access by rowid emp index range scan pk_emp Camino 15 : Lectura completa de la tabla. SELECT * FROM emp; table access full emp Observación : Situaciones que provocan un barrido general. col1 > col2 ( idem para >=, <=,etc ) y pertenecen a la misma tabla. col NOT IN col IS NOT NULL col!= col LIKE PATRON expresion1 = expresion2; 6

7 7 NOT EXISTS subquery. Condiciones sobre columnas sin índices Ejemplo de estrategia basada en reglas. SELECT empno FROM emp WHERE ename = PEPE and sal > 2000; Asumo la tabla con índice en las columnas: empno (su clave primaria), ename ( no único) y sal (no único). Caminos posibles : camino 9 : utilizando ename = PEPE. camino 11: utilizando sal > 2000; camino 15 : barrido completo. La clave primaria no se tiene presente pues no aparece en el predicado. El optimizador escoge el camino Optimización basada en costos. - Escoge el camino de menor costo entre todos los posibles. - El costo lo obtiene de estadísticas almacenadas en el Diccionario de datos; criterios para la escogencia: - selectividad de las filas ( número de filas en la respuesta). Normalmente se usan los índices para buenas selectividades y el barrido de toda la tabla si es baja. - El parámetro DB_FILE_MULTIBLOCK_READ_COUNT. Eje 1: SELECT empno FROM emp WHERE ename = PEPE and sal > 2000; Asumo la tabla con índice en las columnas: empno (su clave primaria), ename ( no único) y sal (no único). EL optimizador usa las estadísticas USER_TAB_COLUMNS.NUM_DISTINCT y USER_S.NUM_ROWS para determinar el número de filas a recuperar. Eje 2 : SELECT * FROM emp WHERE empno < 7500; Usa USER_TAB_COLUMNS.HIGH_VALUE y USER_TAB_COLUMNS.LOW_VALUE. Para todos los valores del índice asume distribución uniforme entre estos dos rangos. Calcula que porcentaje de valores están por debajo de 7500 y define la estrategia. Si uso col BETWEEN A AND B se descompone en col <= B AND col >= A y calcula la selectividad de cada caso, S1 y S2 respectivamente. Luego aplica la fórmula : S = ABS(S1+S2-1) Se escoge método de ejecución para las reuniones naturales Los aspectos involucrados son : a. Escoger el camino de acceso a cada tabla involucrada en el join. b. Escoger la operación para el join : NESTED LOOPS SORT MERGE 7

8 8 CLUSTER c. El orden del join, cuando es un join de más de dos tablas Operaciones posible para un join. a. NESTED LOOPS Ejemplo: SELECT * FROM emp.dept WHERE emp.deptno = dept.deptno; 1 NESTED LOOPS 2 emp 4 3 (BY ROWID) dept INDEX (UNIQUE SCAN) pk_deptno b. SORT-MERGE JOIN. Usado solo en equi-join. SELECT * FROM emp.dept WHERE emp.deptno = dept.deptno; 1 MERGE JOIN 2 SORT (JOIN) 4 SORT (JOIN) 3 5 dept emp c. CLUSTER JOIN. Util en equi-join. SELECT * FROM emp.dept WHERE emp.deptno = dept.deptno; 1 NESTED LOOPS 2 3 8

9 9 dept (CLUSTER) emp Evaluación por reglas: Se generan R posibles secuencias para el join, definiendo en cada caso una tabla inicial diferente. Para definir el orden subsiguiente de las tablas cada vez se escoge, entre las restantes, aquella que tenga el camino de acceso de más alto rango. Se define para cada par de tablas ( ó el resultado del par anterior con la tabla siguiente) la manera de resolver el join, bajo los siguientes criterios: Si la segunda tabla tiene un camino de acceso igual o menor a 11 se aplica NESTED LOOPS. Si la segunda tabla tiene un camino mayor que 12 y es un equijoin se aplica SORT MERGE. Si la segunda tabla tiene un camino mayor que 12 y No es equijoin se aplica NESTED LOOPS. Se escoge entre los R planes resultantes aquel que tenga el mayor número de NESTED LOOPS - con INDEX SCAN en la tablas usadas en el ciclo interno. SI hay empate en varios planes se evalua adicionalmente y en su orden los siguientes criterios: Escoge la que tenga menos NESTED LOOPS con FULL SCAN. Escoge el que tenga menos SORT MERGE. Si continua el empate escoge el método cuya primera tabla tenga el más alto rango entre los caminos de acceso Evaluación por costos. Se genera un conjunto de planes de ejecución basado en el posible orden del join, operación a emplear y caminos disponibles. Se estima el costo de cada uno y se escoge el más barato. La evaluación se lleva a cabo de la siguiente manera : NESTED LOOPS : Usa la tabla con más filas como tabla externa. SORT MERGE : Se consideran otros factores : SORT_AREA_SIZE DB_FILE_MULTIBLOCK_READ_COUNT. Si es una reunión externa, la tabla con el (+) debe colocarse de última dentro de la condición del join. 3. Herramientas para el afinamiento de instrucciones S.Q.L Correr el script utlxplan.sql Crea la tabla plan_table create table PLAN_ ( statement_id varchar2(30), timestamp date, remarks varchar2(80), operation varchar2(30), 9

10 10 options varchar2(30), object_node varchar2(128), object_owner varchar2(30), object_name varchar2(30), object_instance numeric, object_type varchar2(30), optimizer varchar2(255), search_columns numeric, id numeric, parent_id numeric, position numeric, other long); 3.2. Ejecuto la la instrucción de la siguiente manera: SQL> EXPLAIN PLAN FOR SELECT e.id, first_name ' ' last_name nombre, d.id, d.name dpto,r.name region FROM s_emp e, s_dept d, s_region r WHERE EXISTS ( SELECT 'x' FROM s_customer c WHERE e.id = c.sales_rep_id and 1 < (SELECT count(o.id) FROM s_ord o WHERE o.customer_id = c.id )) AND e.dept_id = d.id AND d.region_id = r.id; 3.3. Ejecuto el siguiente SELECT. SQL>col operacion format a30 SQL>col options format a12 SQL> select level-1, lpad(' ',2*(level-1)) operation ' ' decode(id,0,'cost = ' position) "operacion",options,object_name from plan_table start with id=0 connect by prior id = parent_id; 3.4. Resultado : LEVEL-1 operacion OPTIONS OBJECT_NAME SELECT STATEMENT Cost = 16 1 FILTER 2 MERGE JOIN 3 SORT JOIN 4 NESTED LOOPS 5 FULL S_EMP 5 BY ROWID S_DEPT 10

11 11 6 INDEX UNIQUE SCAN S_DEPT_ID_PK 3 SORT JOIN 4 FULL S_REGION 2 FILTER 3 FULL S_CUSTOMER 3 SORT AGGREGATE 4 FULL S_ORD 14 rows selected Considere instrucciones alternativas. SELECT dname, deptno FROM dept WHERE deptno NOT IN ( select deptno FROM EMP); Asuma que hay indice en la columna deptno de la tabla emp llamado idx_deptno. 1 FILTER 2 3 dept emp SELECT dname,deptno FROM dept WHERE NOT EXISTS ( SELECT deptno FROM emp WHERE dept.deptno = emp.deptno); 1 FILTER 2 3 dept INDEX RANGE_SCAN idx_deptno 4. Utilidades SQL-TRACE y TKPROF Adecuar el ambiente : En el init.ora defina : TIMED_STATISTICS=TRUE. 11

12 12 USER_DUMP_DEST= directorio. Alli se crean los archivos que arrojan estas utilidades. En la sesion dar el comando : SQL>ALTER SESSION SET SQL_TRACE=TRUE; desde PL.SQL user la instrucción : DBMS_SESSION.SET_SQL_TRACE(TRUE); 4.2. Ejecute todas las instrucciones y/o programas que desee evaluar Corra la utilidad TKPROF desde el sistema operativo. $tkprof archivo_de_entrada archivo_de_salida explain=username/password Archivo de entrada: generado por ORACLE en el directorio indicado por el parámetro llamado USER_DUMP_DEST. archivo_de_salida : entrega la información del plan de ejecución seguido por cadai instrucción y su costo. call count cpu elapsed disk query current rows Parsed Execute Fetch total Lecturas físicas. + Lecturas Logicas Filas retornadas a) Si las lecturas lógicas están muy por encima de las filas retornadas pueden faltar índices. b) b.si la columna count de la operación fetch es muy cercana a la columna rows de la misma operación use la facilidad array proccessing. c) Si La columna count de la operación parsed es muy cercana a la columna count de la fila execute es probable que tenga una libreria cache pequeña. véase SHARED_POOL_SIZE. Tambien es probable un manejo pobre de los cursores. d) Si el total de la columna disk está cercano al total de lecturas lógicas, el database buffer cache puede ser insuficiente. Véase DB_BLOCK_BUFFER. e) Tambien es posible que está reciente el arranque de la B. de D. f) La columna query significa el número de veces que necesitó información desde los segmentos de Rollback. 5. Cual estrategia seguir? Se recomienda usar siempre la optimización basada en costos, especialmente para grandes volumenes de información Debo correr periódicamente para cada tabla el comando: 12

13 13 ANALYZE emp COMPUTE STATISTICS; o ANALYZE emp ESTIMATE STATISTICS; 5.2. Para aplicaciones en BATCH es deseable lograr una meta de mejor desempeño global: ALTER SESSION SET OPTIMIZER_GOAL = ALL_ROWS Para aplicaciones en línea es deseable lograr una meta de respuesta inicial rápida: ALTER SESSION SET OPTIMIZER_GOAL = FIRST_ROWS Puedo inducir al optimizador en la escogencia del método de ejecución usando HINTS. El programador puede definir : El esquema de optimización, la meta de optimización, el camino de acceso para las tablas involucradas, el order del join y la operación de join a emplear. Ejemplos: SELECT /*+ALL_ROWS */ empno,ename, sal,job FROM emp WHERE empno = 7566; SELECT /*+ FIRST_ROWS */ empno,ename, sal,job FROM emp WHERE empno = 7566 SELECT /*+ INDEX(sex_idx) */ name, height,weight FROM patients WHERE sex = M ; CREATE tank_readings ( time DATE UNIQUE, temperature NUMBER ); SELECT temperature FROM tank_readings WHERE time = ( SELECT MAX(time) FROM tank_readings WHERE time <= TO_DATE(:T) ); Proceso : Encuentra de menor a mayor todos los valores menores a T, entre ellos escoge el mayor y se ejecuta la parte externa de la consulta. SELECT /*+ INDEX_DESC(idx_time) */ temperature FROM tank_readings WHERE time <= TO_DATE(:T) AND ROWNUM = 1; 13

14 14 Recorre el índice de mayor a menor obtiene el ROWID del tiempo buscado y lee el bloque de datos donde se halla almacenado; Nota: Cada versión de ORACLE puede introducir mejoras y variantes al optimizador. Lo resumido en estas páginas da una idea general del funcionamiento, pero en todos los casos lo recomendado es consultar los manuales que correspondan a la versión de ORACLE con la que se trabaje. En el presente escrito no se incluyen las opciones de servidor de consultas en paralelo que se aprovecha de la presencia de multiples procesadores un una máquina ni los indices bitmap.. 14

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

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

OPTIMIZACIÓN DE CONSULTAS SQL

OPTIMIZACIÓN DE CONSULTAS SQL OPTIMIZACIÓN DE CONSULTAS SQL Doc.: {62485.doc} MODELO : ME005 ELA : REV: VERSION: FECHA: FECHA: 1/47 INDICE 1. CONCEPTOS GENERALES 3 1.1 Optimización de consultas 3 1.2 Tipos de Sentencias SQL 3 2. OPTIMIZACION

Más detalles

Unidad. Lenguaje SQL. (Structured Query Language)

Unidad. Lenguaje SQL. (Structured Query Language) Unidad Lenguaje SQL (Structured Query Language) 1 SQL Definición DDL Consulta y Actualización DML Create Alter Drop Select Insert Update Delete 2 SQL DDL CREATE TABLE nombre_tabla (nombre_columna tipo_dato/dominio

Más detalles

Tutorial de SQL - El comando SELECT

Tutorial de SQL - El comando SELECT Tutorial de SQL - El comando SELECT El objetivo de este documento es guiar su aprendizaje del comando SELECT de SQL. La idea es que, estando conectado a sql*plus, lea este material mientras ejercita simultáneamente

Más detalles

Subconsultas. Copyright Oracle Corporation, 1997. All rights reserved.

Subconsultas. Copyright Oracle Corporation, 1997. All rights reserved. 6 Subconsultas Copyright Oracle Corporation, 1997. All rights reserved. Objetivos Al completar esta lección, debería a ser capaz de hacer lo siguiente: Describir los tipos de problemas que las subconsultas

Más detalles

Tema 4. Manipulación de datos con SQL

Tema 4. Manipulación de datos con SQL Tema 4 Manipulación de datos con SQL Índice Tema 4 1. Inserción de registros. Consultas de datos anexados. 2. Modificación de registros. Consultas de actualización. 3. Borrado de registros. Consultas de

Más detalles

Nociones de performance

Nociones de performance Maestría en Bioinformática Bases de Datos y Sistemas de Información Nociones de performance Ing. Alfonso Vicente, PMP alfonso.vicente@logos.com.uy Agenda Conceptos Índices Optimizador Planes de acceso

Más detalles

TEMA 4.6: Procesamiento y optimización de consultas

TEMA 4.6: Procesamiento y optimización de consultas TEMA 4.6: Procesamiento y optimización de consultas 1. Introducción 2. Procesamiento de una consulta 2.1.- Análisis de la consulta 2.2.- Reescritura de la consulta 2.3.- Generación de un plan físico de

Más detalles

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

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

Más detalles

Bases de Datos I Práctica 1 Ejercicios de SQL

Bases de Datos I Práctica 1 Ejercicios de SQL Bases de Datos I Práctica 1 Ejercicios de SQL Curso 2005-2006 1. Descripción del modelo de datos El modelo de datos que se usará para las consultas está reflejado en el siguiente modelo E-R. Transformado

Más detalles

Constraints (Restricciones) Copyright Oracle Corporation, 1998. All rights reserved.

Constraints (Restricciones) Copyright Oracle Corporation, 1998. All rights reserved. 11 Constraints (Restricciones) Copyright Oracle Corporation, 1998. All rights reserved. Objetivos Al completar esta lección, debería a ser capaz de hacer lo siguiente: Describir constraints Crear y mantener

Más detalles

Sub consultas avanzadas

Sub consultas avanzadas Sub consultas avanzadas Objetivo Después de completar este capítulo conocerá lo siguiente: Escribir una consulta de múltiples columnas Describir y explicar el comportamiento de las sub consultas cuando

Más detalles

Consultas con combinaciones

Consultas con combinaciones UNIDAD 1.- PARTE 2 MANIPULACIÓN AVANZADA DE DATOS CON SQL. BASES DE DATOS PARA APLICACIONES Xochitl Clemente Parra Armando Méndez Morales Consultas con combinaciones Usando combinaciones (joins), se pueden

Más detalles

Dependiendo de las tareas, podemos clasificar las sentencias SQL en dos tipos:

Dependiendo de las tareas, podemos clasificar las sentencias SQL en dos tipos: CONTENIDO. 1. INTRODUCCIÓN 2. TIPOS DE SENTENCIAS SQL 3. TIPOS DE DATOS 4. SQL PLUS 5. CONSULTAS DE DATOS 6. RESTRICCIÓN Y CLASIFICACIÓN DE LOS DATOS 7. FUNCIONES A NIVEL DE FILA 8. VISUALIZACIÓN DE DATOS

Más detalles

Ejercicios SQL - Select TutorialesNET Versión 1.0 - Revisión 1 25 de julio de 2015

Ejercicios SQL - Select TutorialesNET Versión 1.0 - Revisión 1 25 de julio de 2015 Ejercicios SQL - Select TutorialesNET Versión 1.0 - Revisión 1 25 de julio de 2015 Manoel Antón Folgueira Hernández manoel@tutorialesnet.net http://tutorialesnet.net Página 1 de 13 Índice 1. Introducción

Más detalles

DESARROLLO DE APLICACIONES

DESARROLLO DE APLICACIONES DESARROLLO DE APLICACIONES Manual de Optimización Revisión 1.0 Servicio de Informática Area de Sistemas Julio 1993 1. Introducción. En este Manual se ha recopilado información relativa a la optimización

Más detalles

MANUAL BÁSICO DEL LENGUAJE SQL

MANUAL BÁSICO DEL LENGUAJE SQL MANUAL BÁSICO DEL LENGUAJE SQL ESCUELA COLOMBIANA DE INGENIERÍA JULIO GARAVITO LABORATORIO DE INFORMÁTICA BOGOTÁ D. C. 2007-2 TABLA DE CONTENIDO INTRODUCCIÓN... 3 1. COMANDOS... 4 1.1 Comandos DLL... 4

Más detalles

Base de Datos Oracle 10g: Introducción a SQL Código: D17216 - Duración: 5 días (40 horas)

Base de Datos Oracle 10g: Introducción a SQL Código: D17216 - Duración: 5 días (40 horas) Base de Datos Oracle 10g: Introducción a SQL Código: D17216 - Duración: 5 días (40 horas) Lo que aprenderá Esta clase es aplicable para los usuarios de Oracle8i, Oracle9i y Oracle Database 10g. En este

Más detalles

Datos Agregados por medio de Funciones de Grupo. Copyright Oracle Corporation, 1998. All rights reserved.

Datos Agregados por medio de Funciones de Grupo. Copyright Oracle Corporation, 1998. All rights reserved. 5 Datos Agregados por medio de Funciones de Grupo Copyright Oracle Corporation, 1998. All rights reserved. Objetivos Al completar esta lección, debería ser capaz de hacer lo siguiente: Identificar las

Más detalles

UNIDAD DE TRABAJO 2: BASES DE DATOS RELACIONALES

UNIDAD DE TRABAJO 2: BASES DE DATOS RELACIONALES UNIDAD DE TRABAJO 2: BASES DE DATOS RELACIONALES TEMA 6: CONSULTAS (parte 3) 6.21. INTRODUCCIÓN En este tercer tema sobre consultas veremos: Revisaremos las subconsultas, comenzando con una introducción

Más detalles

Ampliación de Bases de Datos Práctica 1: El lenguaje PL/SQL de Oracle Sesión 1: Introducción al PL/SQL

Ampliación de Bases de Datos Práctica 1: El lenguaje PL/SQL de Oracle Sesión 1: Introducción al PL/SQL Ampliación de Bases de Datos Práctica 1: El lenguaje PL/SQL de Oracle Sesión 1: Introducción al PL/SQL Dado el siguiente esquema relacional y su definición en Oracle que se encuentra definida en vuestro

Más detalles

Universidad Capitán General Gerardo Barrios. Facultad de Ciencia y Tecnología

Universidad Capitán General Gerardo Barrios. Facultad de Ciencia y Tecnología Universidad Capitán General Gerardo Barrios Facultad de Ciencia y Tecnología Guía práctica de Base de Datos I Sentencias básicas de SQL, utilizadas en Mysql, con la base de datos Northwind. Docente: Lic.Ms.

Más detalles

UNIDAD 3 ASPECTOS ASOCIADOS CON BASES DE DATOS. Diseno Físico de Bases de Datos Objetivo. 2.2 Visión General del Procesamiento de Consultas

UNIDAD 3 ASPECTOS ASOCIADOS CON BASES DE DATOS. Diseno Físico de Bases de Datos Objetivo. 2.2 Visión General del Procesamiento de Consultas UNIDAD 3 ASPECTOS ASOCIADOS CON BASES DE DATOS Temario 2.1 Diseño Físico de Bases de Datos 2.2 Visión General del Diseno Físico de Bases de Datos Objetivo Corresponde al proceso de elegir las estructuras

Más detalles

5- Uso de sentencias avanzadas

5- Uso de sentencias avanzadas Objetivos: 5- Uso de sentencias avanzadas Elaborar sentencias de manejo de datos. Recursos: Microsoft SQL Server Management Studio Guías prácticas. Introducción: Después de trabajar con las sentencias

Más detalles

OPTIMIZACIÓN DE CONSULTAS EN SQL. Análisis de Consultas y Transacciones Ajuste de Indices Ajuste de Consultas

OPTIMIZACIÓN DE CONSULTAS EN SQL. Análisis de Consultas y Transacciones Ajuste de Indices Ajuste de Consultas OPTIMIZACIÓN DE CONSULTAS EN SQL Análisis de Consultas y Transacciones Ajuste de Indices Ajuste de Consultas Análisis de Consultas y Transacciones Para elaborar el diseño físico de la base de datos debemos

Más detalles

PROGRAMAS DE ESTUDIO FORMATO 7 INTRODUCCIÓN A SQL. Área de Formación Profesional

PROGRAMAS DE ESTUDIO FORMATO 7 INTRODUCCIÓN A SQL. Área de Formación Profesional PROGRAMAS DE ESTUDIO FORMATO 7 NOMBRE DE LA ASIGNATURA INTRODUCCIÓN A SQL CICLO, AREA O MODULO Área de Formación Profesional CLAVE DE LA ASIGNATURA IT222 OBJETIVOS GENERALES DE LA ASIGNATURA Al final del

Más detalles

A.1. Definiciones de datos en SQL

A.1. Definiciones de datos en SQL A.1. Definiciones de datos en SQL Las Sentencias del lenguaje de definición de datos (DDL) que posee SQL operan en base a tablas. Las Principales sentencias DDL son las siguientes: CREATE TABLE DROP TABLE

Más detalles

Capítulo 12: Indexación y asociación

Capítulo 12: Indexación y asociación Capítulo 12: Indexación y asociación Conceptos básicos Índices ordenados Archivos de índice de árbol B+ Archivos de índice de árbol B Asociación estática Asociación dinámica Comparación entre indexación

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

GONZALEZ VARGAS ANA KAREN GUTIERREZ MUNGUIA LUIS DANIEL TELLEZ ARCOS DIANA FATIMA PROBLEMA A RESOLVER

GONZALEZ VARGAS ANA KAREN GUTIERREZ MUNGUIA LUIS DANIEL TELLEZ ARCOS DIANA FATIMA PROBLEMA A RESOLVER GONZALEZ VARGAS ANA KAREN GUTIERREZ MUNGUIA LUIS DANIEL TELLEZ ARCOS DIANA FATIMA PROBLEMA A RESOLVER Esta base de datos se va a crear para resolver el problema en una tienda departamental, ya que podemos

Más detalles

Sistemas de Datos Curso: Ernesto Chinkes. Subconsultas Stored Procedures - Triggers

Sistemas de Datos Curso: Ernesto Chinkes. Subconsultas Stored Procedures - Triggers Subconsultas Stored Procedures - Triggers Subconsultas Concepto Ubicación En el SELECT En el FROM En el WHERE Operadores IN ANY-ALL EXISTS Concepto Son sentencias SELECT que aparecen dentro de otra consulta

Más detalles

CONSULTAS CON SQL. 3. Hacer clic sobre el botón Nuevo de la ventana de la base de datos. Aparecerá el siguiente cuadro de diálogo.

CONSULTAS CON SQL. 3. Hacer clic sobre el botón Nuevo de la ventana de la base de datos. Aparecerá el siguiente cuadro de diálogo. CONSULTAS CON SQL 1. Qué es SQL? Debido a la diversidad de lenguajes y de bases de datos existentes, la manera de comunicar entre unos y otras sería realmente complicada a gestionar de no ser por la existencia

Más detalles

2. Mediante la tabla pg_class, vamos a ver cómo afecta los comandos analyze y vacuum a las tablas.

2. Mediante la tabla pg_class, vamos a ver cómo afecta los comandos analyze y vacuum a las tablas. Objetivos: o Catálogo o Indices o Ficheros / Discos 1. Vamos a crear una tabla y a ver dónde se encuentra su información en el catálogo. Creamos una tabla en el esquema empresa que se llame persona, con

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

Prácticas de Oracle 8i: SQL Statement Tuning Workshop.

Prácticas de Oracle 8i: SQL Statement Tuning Workshop. BASES DE DATOS Prácticas de Oracle 8i: SQL Statement Tuning Workshop. Profesor: Ing. Sergio Salinas Lugo. Servicio Social: Abraham García Casas. INDICE OBJETIVO...3 CONVENCIONES UTILIZADAS EN ESTE DOCUMENTO....4

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

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

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

Í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

Introducción 15. Parte 1 Entendiendo el optimizador 23

Introducción 15. Parte 1 Entendiendo el optimizador 23 El autor 2 Los revisores 2 Introducción 15 A quién va dirigido 18 Modo de uso 19 Parte 1 Entendiendo el optimizador 23 Optimizadores y modos de optimización 25 Modos de optimización 26 Uso de variables

Más detalles

UNIDAD 1.- PARTE 1 MANIPULACIÓN AVANZADA DE DATOS CON SQL. BASES DE DATOS PARA APLICACIONES. Xochitl Clemente Parra Armando Méndez Morales

UNIDAD 1.- PARTE 1 MANIPULACIÓN AVANZADA DE DATOS CON SQL. BASES DE DATOS PARA APLICACIONES. Xochitl Clemente Parra Armando Méndez Morales UNIDAD 1.- PARTE 1 MANIPULACIÓN AVANZADA DE DATOS CON SQL. BASES DE DATOS PARA APLICACIONES Xochitl Clemente Parra Armando Méndez Morales Práctica preliminar Crear la siguiente base de datos de prácticas

Más detalles

select nombre from profesores where categoria='aso6';

select nombre from profesores where categoria='aso6'; 1 de 10 17/05/2013 14:00 Lecciones SQL > T11 Conjuntos Operaciones de conjuntos y MySQL Un operador sobre conjuntos combina el resultado de dos sentencias select en un único resultado. Dependiendo del

Más detalles

Procesamiento y Optimización de consultas Material Preliminar en preparación

Procesamiento y Optimización de consultas Material Preliminar en preparación Procesamiento y Optimización de consultas Material Preliminar en preparación Optimización SQL Identificar sentencias problemáticas Verificar las estadísticas Revisar los planes de ejecución Reestructurar

Más detalles

OPTIMIZACION DE CONSULTAS A BASES DE DATOS RELACIONALES

OPTIMIZACION DE CONSULTAS A BASES DE DATOS RELACIONALES OPTIMIZACION DE CONSULTAS A BASES DE DATOS RELACIONALES 1. CONTENIDO DEL MARCO TEORICO 2. OPTIMIZACION ALGEBRAICA DE CONSULTAS 3. COSTO DEL INPUT / OUTPUT DEL PRODUCTO CARTESIANO Y JUNTA NATURAL 4. TUNING

Más detalles

BASE DE DATOS QUÉ ES UNA BASE DE DATOS?

BASE DE DATOS QUÉ ES UNA BASE DE DATOS? BASE DE DATOS BASE DE DATOS QUÉ ES UNA BASE DE DATOS? Una base de datos se puede definir como un conjunto de información relacionada que se encuentra agrupada ó estructurada. Actualmente la mayoría de

Más detalles

Procedimientos para agrupar y resumir datos

Procedimientos para agrupar y resumir datos Procedimientos para agrupar y resumir datos Contenido Introducción Presentación de los primeros n valores Uso de funciones de agregado 4 Fundamentos de GROUP BY 8 Generación de valores de agregado dentro

Más detalles

Tema: SUBCONSULTAS Y CREACION DE VISTAS.

Tema: SUBCONSULTAS Y CREACION DE VISTAS. Base de datos I. Guía 6 1 Facultad: Ingeniería Escuela: Computación Asignatura: Base de datos I Tema: SUBCONSULTAS Y CREACION DE VISTAS. Objetivo Específico Definir que es una subsonsulta Utilizar vistas

Más detalles

ÍNDICE. Introducción... Capítulo 1. Novedades de Access 2013... 1

ÍNDICE. Introducción... Capítulo 1. Novedades de Access 2013... 1 Introducción... XIII Capítulo 1. Novedades de Access 2013... 1 Nuevas posibilidades de cifrado, compactación y reparación de archivos... 1 Trabajo en la nube... 2 Compartir la información... 3 Guardar

Más detalles

Bases de Datos: Structured Query Language (SQL)

Bases de Datos: Structured Query Language (SQL) Structured Query Language (SQL): Introducción Bases de Datos: Structured Query Language (SQL) Franco Guidi Polanco Escuela de Ingeniería Industrial Pontificia Universidad Católica de Valparaíso, Chile

Más detalles

Trabajos de Ampliación. Bases de datos NoSQL.

Trabajos de Ampliación. Bases de datos NoSQL. BASES DE DATOS NoSql Son bases de datos pensadas para aplicaciones que hagan un uso intensivo de la misma. Estas bases de datos permiten una mayor flexibilidad y facilidad a la hora de introducir los datos

Más detalles

MySQL: Guía de Referencia

MySQL: Guía de Referencia Instituto Tecnologico Superior de Coatzacoalcos (ITESCO). MySQL: Guía de Referencia Farid Alfredo Bielma Lopez fbielma@fbielma.org http://fbielma.org/course/fbielma/curso_mysql.pdf Resumen del curso Algunas

Más detalles

Universidad Nacional de Costa Rica Administración de Bases de Datos

Universidad Nacional de Costa Rica Administración de Bases de Datos Universidad Nacional de Costa Rica Administración de Bases de Datos Mantenimiento de tablespaces e índices Para más información visite: http://www.slinfo.una.ac.cr Autor: Steven Brenes Chavarria Email:

Más detalles

DataBase Administration

DataBase Administration DataBase Administration 1. FUNCIONES DE UN DBA (Data Base Administrator) El rol de DBA involucra las siguientes tareas: Creación de Bases y Tablas Base de Datos Verificar el lugar de creación, en los espacios

Más detalles

El usuario puede utilizar esta tabla derivada como una tabla más, en sus consultas.

El usuario puede utilizar esta tabla derivada como una tabla más, en sus consultas. Vistas. El resultado de una consulta en el caso de SQL siempre es una tabla, ésta se puede hacer permanente dentro de la base de datos. En este caso se dice que esta tabla resultado es una vista o una

Más detalles

Escrito por Administrator Miércoles, 15 de Diciembre de 2010 21:30 - Actualizado Domingo, 19 de Diciembre de 2010 13:16

Escrito por Administrator Miércoles, 15 de Diciembre de 2010 21:30 - Actualizado Domingo, 19 de Diciembre de 2010 13:16 1. Top-Down Oracle, a la hora de optimizar el rendimiento de nuestra base de datos recomienda un orden concreto de los aspectos a optimizar. Por ejemplo ponen el diseño de la base de datos por encima de

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

Uso de las herramientas de consulta de Transact-SQL

Uso de las herramientas de consulta de Transact-SQL Uso de las herramientas de consulta de Transact-SQL Contenido Introducción 1 Analizador de consultas SQL 2 Uso de la herramienta Examinador de objetos en el Analizador de consultas SQL 3 Uso de plantillas

Más detalles

DML SQL II. Comparaciones con relaciones

DML SQL II. Comparaciones con relaciones DML SQL II Comparaciones con relaciones Subconsultascopiar Hasta ahora las condiciones en WHERE involucraban valores escalares Pero, como en el caso de Julie Andrews puede que aparezca SELECT como parte

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

Curso SQL Nivel Avanzado 1. Miguel Jurado García

Curso SQL Nivel Avanzado 1. Miguel Jurado García Curso SQL Nivel Avanzado 1 Miguel Jurado García Temario Sesión 1: 1- Elementos de Sintaxis Uso de Variables Collation y las Fechas Construcción de Sentencias Dinámicas 2- SQL Server Management Studio Filtrado

Más detalles

Manual de introducción SQL Centro de Tecnología Informática

Manual de introducción SQL Centro de Tecnología Informática Manual de introducción SQL Centro de Tecnología Informática web1.cti.unav.es/cti/manuales/intro_sql/indice.html Universidad de Navarra 1. CONCEPTO DE BASE DE DATOS 2. EL LENGUAJE DE GESTIóN DE BASES DE

Más detalles

Vistas en postgresql

Vistas en postgresql Vistas en postgresql Conceptos y definición de Vista Los usuarios que acceden a una base de datos relacional, lo hacen típicamente a través de vistas, de modo que diferentes usuarios tienen diferentes

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

CONSULTAS DE RESUMEN SQL SERVER 2005. Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE

CONSULTAS DE RESUMEN SQL SERVER 2005. Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE CONSULTAS DE RESUMEN SQL SERVER 2005 Manual de Referencia para usuarios Salomón Ccance CCANCE WEBSITE CONSULTAS DE RESUMEN Una de las funcionalidades de la sentencia SELECT es el permitir obtener resúmenes

Más detalles

3ra. Parte. Bases de Datos Relacionales

3ra. Parte. Bases de Datos Relacionales 3ra. Parte Bases de Datos Relacionales Lenguaje de consulta SQL Proyección Tabla 1 Selección Tabla 1 Tabla 1 Tabla 2 Unión Lenguaje SQL SELECT SELECT [TOP expresión [PERCENT] [ WITH TIES ] ]

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

Conceptos Avanzados de Cursores Explícitos. Copyright Oracle Corporation, 1998. All rights reserved.

Conceptos Avanzados de Cursores Explícitos. Copyright Oracle Corporation, 1998. All rights reserved. 9 Conceptos Avanzados de Cursores Explícitos Copyright Oracle Corporation, 1998. All rights reserved. Objetivos Al final de esta lección n podrá: Escribir un cursor que utilice parámetros Determinar cuándo

Más detalles

LENGUAJE SQL. En Mysql se utiliza un subconjunto de SQL (update, insert into, delete, select, truncate,etc).

LENGUAJE SQL. En Mysql se utiliza un subconjunto de SQL (update, insert into, delete, select, truncate,etc). LENGUAJE SQL Un manejador de base de datos debe de contener lenguajes que permitan definir el modelos de los datos, este mismo es que permite crear la estructura de la base de datos. Lenguaje de Definicion

Más detalles

Entendiendo y Optimizando MySQL

Entendiendo y Optimizando MySQL Grupo de Usuarios de Linux Universidad Carlos III de Madrid. 10 de Noviembre de 2010 Indice Arquitectura 1 Arquitectura 2 3 4 5 Arquitectura Sistema de Gestión de Bases de Datos. GPL. Escrito en C y C++.

Más detalles

6- Combinación de tablas

6- Combinación de tablas Objetivos: 6- Combinación de tablas Utiliza sentencias para unir los datos de diferentes tablas. Recursos: Microsoft SQL Server Management Studio Guías prácticas. Script de bases de datos. Introducción

Más detalles

Linux Error 29: Illegal Seek

Linux Error 29: Illegal Seek Newsletter Febrero 2013 Contenido Página: Por Ing. Manuel Carrillo mcarrillo@datum.com.gt Linux Error 29: Illegal Seek 1 Linux Error 29: Illegal Seek 3 Oracle 11g: Mejores planes de ejecución con baselines

Más detalles

: COMPUTACIÓN E INFORMATICA : Ingeniería de Software Ingeniería de Redes y Comunicaciones : Administración de Bases de Datos I : T-INF127

: COMPUTACIÓN E INFORMATICA : Ingeniería de Software Ingeniería de Redes y Comunicaciones : Administración de Bases de Datos I : T-INF127 I. DATOS INFORMATIVOS Carrera Especialidad Curso Código Ciclo : Tercero Requisitos Duración Horas Semana : 06 horas Versión : v.0110 II. SUMILLA : COMPUTACIÓN E INFORMATICA : Ingeniería de Software Ingeniería

Más detalles

3. El catálogo 26. Laboratorio de Bases de Datos

3. El catálogo 26. Laboratorio de Bases de Datos ÍNDICE Continuación SQL Índice 1. Continuación del SQL como DML (Lenguaje de Manipulación de Datos) 1 1.1. Inserción de datos................................. 1 1.2. Borrado de datos..................................

Más detalles

Práctica A: Trabajo con subconsultas

Práctica A: Trabajo con subconsultas Trabajo con Subconsultas 1 Práctica A: Trabajo con subconsultas Objetivos Después de realizar esta práctica, el alumno será capaz de: Usar una subconsulta como tabla derivada Usar una subconsulta como

Más detalles

3 GESTIÓN DE TABLESPACES

3 GESTIÓN DE TABLESPACES 3 GESTIÓN DE TABLESPACES 3.1 Introducción. 3.2 Creación de tablespaces. 3.3 Modificación de tablespaces. 3.4 Borrado de tablespaces. 3.5 Índices, secuencias y clusters. 3.6 Enlaces de bases de datos. 3.7

Más detalles

Restricciones de Integridad

Restricciones de Integridad Restricciones de Integridad Amparo López Gaona México, D.F. Semestre 2000-I Restricciones de Integridad Las principales restricciones de integridad que pueden indicarse son: La clave primaria. Claves candidatas.

Más detalles

Boletín de Problemas de la Asignatura II18 Bases de Datos. Ingeniería Informática Universitat Jaume I

Boletín de Problemas de la Asignatura II18 Bases de Datos. Ingeniería Informática Universitat Jaume I Boletín de Problemas de la Asignatura II18 Bases de Datos Ingeniería Informática Universitat Jaume I Ingeniería Informática. Universitat Jaume I II18 - Bases de Datos. Práctica 1 Práctica 1 Objetivos de

Más detalles

Como manejador de base de datos elegimos utilizar Absolute Database, que es un

Como manejador de base de datos elegimos utilizar Absolute Database, que es un APÉNDICE E Manejador de base de datos ABSOLUTE DATABASE Como manejador de base de datos elegimos utilizar Absolute Database, que es un componente de Delphi para manejar base de datos, muy poderoso y fácil

Más detalles

2. ESTUDIO DE INDICES

2. ESTUDIO DE INDICES Asignatura de Administración de Bases de Datos Curso 2011/2012 Pág. 1 PRÁCTICA DE ADMINISTRACIÓN DE BASES DE DATOS Una compañía de salud gestiona datos relativos a las consultas médicas a pacientes por

Más detalles

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

Base de datos I Facultad de Ingeniería. Escuela de computación. Base de datos I Facultad de Ingeniería. Escuela de computación. Introducción Este manual ha sido elaborado para orientar al estudiante de Bases de datos I en el desarrollo de sus prácticas de laboratorios,

Más detalles

CURSOS Y DESCRIPCIÓN 16-0071 / 29-0942 ADMINISTRACIÓN DE BASE DE DATOS

CURSOS Y DESCRIPCIÓN 16-0071 / 29-0942 ADMINISTRACIÓN DE BASE DE DATOS 16-0071 / 29-0942 ADMINISTRACIÓN DE BASE DE DATOS Descripción General: El participante podrá conocer el modelaje conceptual de los datos: con respecto a la definición del modelo, clasificación de los modelos

Más detalles

Bases de Datos - 2006. SQL - Ejemplos

Bases de Datos - 2006. SQL - Ejemplos Bases de Datos - 2006 SQL - Ejemplos Consideramos la siguiente base de datos relacional: persona(dni,primer-nombre,apellido) biblioteca(nombre-biblioteca,calle,número) libro(título,isbn,editorial,edición)

Más detalles

Trabajo con Subconsultas

Trabajo con Subconsultas Trabajo con Subconsultas Contenido Contenido Introducción 1 Introducción a las subconsultas 2 Uso de una subconsulta como una tabla derivada 4 Uso de una subconsulta como una expresión 5 Uso de una subconsulta

Más detalles

T12 Vistas y tablas temporales

T12 Vistas y tablas temporales 1 de 9 17/05/2013 14:01 Lecciones SQL > T12 Vistas y tablas temporales En esta sesión vamos a mostrar dos tipos de objetos de uso habitual en cualquier SGBD: las vistas y las tablas temporales. Mientras

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

Objetos de la Base de Datos

Objetos de la Base de Datos Objetos de la Base de Datos Todos los datos de una base de datos de Microsoft SQL Server 2005/8 están contenidos en objetos llamados tablas. Cada tabla representa algún tipo de objeto con significado para

Más detalles

Instalación de Casandra Para instalar cassandra se recomienda tener la última versión de JAVA instalada.

Instalación de Casandra Para instalar cassandra se recomienda tener la última versión de JAVA instalada. Bases de Datos Avanzadas GUIA PARA CASSANDRA En esta guía se explicara como instalar cassandra, como agregar datos a cassandra usando spoon, y como corregir algunos problemas que puede aparecer. Para esta

Más detalles

Visualización de Datos a partir de Varias Tablas. Copyright Oracle Corporation, All rights reserved.

Visualización de Datos a partir de Varias Tablas. Copyright Oracle Corporation, All rights reserved. 4 Visualización de Datos a partir de Varias Tablas Copyright Oracle Corporation, 1998. All rights reserved. Objetivos Al completar esta lección, debería ser capaz de hacer lo siguiente: Escribir sentencias

Más detalles

Tema: Auditoria de Base de datos. Objetivo Especifico

Tema: Auditoria de Base de datos. Objetivo Especifico Facultad: Ingeniería Escuela: Computación Asignatura: Base de Datos II Tema: Auditoria de Base de datos. Objetivo Especifico Que el estudiante: Aprenda a utilizar los diferentes mecanismos disponibles

Más detalles

INSTITUTO TECNOLÓGICO SUPERIOR DE ESCÁRCEGA INGENIERÍA EN SISTEMAS COMPUTACIONALES MATERIA: TALLER DE BASE DE DATOS TRABAJO: PROFESOR:

INSTITUTO TECNOLÓGICO SUPERIOR DE ESCÁRCEGA INGENIERÍA EN SISTEMAS COMPUTACIONALES MATERIA: TALLER DE BASE DE DATOS TRABAJO: PROFESOR: INSTITUTO TECNOLÓGICO SUPERIOR DE ESCÁRCEGA INGENIERÍA EN SISTEMAS COMPUTACIONALES MATERIA: TALLER DE BASE DE DATOS TRABAJO: SENTENCIA GENERICA DE CREATE PROFESOR: FRANCISCO SALVADOR BALLINA SANCHEZ ALUMNO:

Más detalles

Iniciando con Oracle. Índice de contenido. Ingresando a Oracle. Cambiando Su Contraseña. Ingresando un Comando SQL en SQL*Plus

Iniciando con Oracle. Índice de contenido. Ingresando a Oracle. Cambiando Su Contraseña. Ingresando un Comando SQL en SQL*Plus Iniciando con Oracle Índice de contenido Ingresando a Oracle...1 Cambiando Su Contraseña...1 Ingresando un Comando SQL en SQL*Plus...2 Saliendo de SQL*Plus...2 Consiguiendo Ayuda...2 Creación de una Tabla...3

Más detalles

Precedencia de la Clásula de Storage

Precedencia de la Clásula de Storage Tipos de Segmentos Precedencia de la Clásula de Storage Oracle default Tablespace Segment Tipos de Segmentos Table Table partition Cluster Index Tipos de Segmentos Index-organized table Index partition

Más detalles

Instituto Profesional DuocUC Escuela de Ingeniería Control File

Instituto Profesional DuocUC Escuela de Ingeniería Control File Control File Jaime Amigo P. 2006, Santiago - Chile Objetivos Después de completar esta lección, usted deberá saber lo siguiente: Explicar el uso del archivo de control Listar los contenidos del archivo

Más detalles

CURSORES EN SQL SERVER

CURSORES EN SQL SERVER Año del Centenario de Machu Picchu para el mundo CURSORES EN SQL SERVER Curso: IMPLEMENTACION DE BASE DE DATOS VII Ciclo Integrantes: Vásquez Paredes, Pablo Bustamante Auccasi, Janett Córdova Farfán, Carlos

Más detalles

Un nombre de usuario de 30 caracteres o menos, sin caracteres especiales y que inicie con una letra.

Un nombre de usuario de 30 caracteres o menos, sin caracteres especiales y que inicie con una letra. Unidad IV: Seguridad 4.1 Tipos de usuario El objetivo de la creación de usuarios es establecer una cuenta segura y útil, que tenga los privilegios adecuados y los valores por defecto apropiados Para acceder

Más detalles

TEMA 3 PROFESOR: M.C. ALEJANDRO GUTIÉRREZ DÍAZ 2 3. PROCESAMIENTO DE CONSULTAS DISTRIBUIDAS

TEMA 3 PROFESOR: M.C. ALEJANDRO GUTIÉRREZ DÍAZ 2 3. PROCESAMIENTO DE CONSULTAS DISTRIBUIDAS 1 1 BASES DE DATOS DISTRIBUIDAS TEMA 3 PROFESOR: M.C. ALEJANDRO GUTIÉRREZ DÍAZ 2 3. PROCESAMIENTO DE CONSULTAS DISTRIBUIDAS 3.1 Metodología del procesamiento de consultas distribuidas 3.2 Estrategias de

Más detalles

CONSULTAS MULTITABLAS SQL SERVER 2005. Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE

CONSULTAS MULTITABLAS SQL SERVER 2005. Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE CONSULTAS MULTITABLAS SQL SERVER 2005 Manual de Referencia para usuarios Salomón Ccance CCANCE WEBSITE CONSULTAS MULTITABLAS Hasta ahora hemos visto consultas que obtienen los datos de una sola tabla,

Más detalles

Bases de Datos Relacionales

Bases de Datos Relacionales Bases de Datos Relacionales PROCEDIMIENTOS ALMACENADOS Preparó: Ismael Castañeda Fuentes Fuentes: Manuales Sybase Manuales SQL Server Manuales Oracle Procedimientos almacenados Un procedimiento almacenado

Más detalles

Práctica 3. Consultas SQL

Práctica 3. Consultas SQL Práctica 3. Consultas SQL 1. Enunciado En este ejercicio se realizarán consultas SQL que respondan a las preguntas que se plantearán sin utilizar QBE. Dada una base de datos denominada Empresa y definida

Más detalles