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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Í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

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

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

Í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

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

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

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

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

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

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

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

SINTAXIS DE SQL-92. ::= CREATE SCHEMA [ ... ]

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

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

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

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

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

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

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

Clase 2: Estructuras Lógicas y Físicas(I)

Clase 2: Estructuras Lógicas y Físicas(I) Clase 2: Estructuras Lógicas y Físicas(I) Introducción a Segmentos, Extents y bloques de datos Bloque de datos Inittrans, Maxtrans Extents Segmentos Cláusula Storage Introducción tablespaces, datafiles

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

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

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

Introducción a Evaluación y Optimización de Consultas

Introducción a Evaluación y Optimización de Consultas Introducción a Evaluación y Optimización de Consultas Adaptado de Database Management Systems 3ed, Ch.12, R. Ramakrishnan and J. Gehrke 1 Cuál es el propósito?! Obtener un buen plan de ejecución (Minimizar

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

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

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

ADMINISTRACION DE BASES DE DATOS EN ORACLE

ADMINISTRACION DE BASES DE DATOS EN ORACLE SQL LENGUAJE ESTRUCTURADO DE CONSULTA El nacimiento del lenguaje SQL data de 1970 cuando E. F. Codd publica su libro: "Un modelo de datos relacional para grandes bancos de datos compartidos". Ese libro

Más detalles

Sistema Gestor de Bases de Datos Relacionales (SGBDR), que maneja distintos tipos de datos:

Sistema Gestor de Bases de Datos Relacionales (SGBDR), que maneja distintos tipos de datos: Bases de Datos Introducción a ORACLE Sistema Gestor de Bases de Datos Relacionales (SGBDR), que maneja distintos tipos de datos: o Tradicionales como INTEGER, VARCHAR2, DATE,..., etc. o Nuevos y complejos:

Más detalles

CURSO DE SQL SERVER 2005

CURSO DE SQL SERVER 2005 CURSO DE SQL SERVER 2005 Una vez finalizado el curso, el alumno estará preparado para: Instalar y configurar SQL Server 2005. Comprender los conceptos más importantes del diseño de bases de datos. Crear

Más detalles

Se considera a Oracle como uno de los sistemas de bases de datos más completos, destacando su:

Se considera a Oracle como uno de los sistemas de bases de datos más completos, destacando su: CURSO DE ORACLE DESCRIPCIÓN Oracle es un sistema de gestión de base de datos relacional (o RDBMS por el acrónimo en inglés de Relational Data Base Management System), desarrollado por Oracle Corporation.

Más detalles

Sistemas de Datos. Rendimiento de la Base de datos. Procesamiento de consultas y administración del rendimiento

Sistemas de Datos. Rendimiento de la Base de datos. Procesamiento de consultas y administración del rendimiento Rendimiento de la Base de datos. Procesamiento de consultas y administración del rendimiento Esquema de la clase 1. Procesamiento de consultas 2. El optimizador del DBMS 3. Los Ajustes del Rendimiento

Más detalles

Movimiento ONLINE de Archivos de Datos en Oracle 12c

Movimiento ONLINE de Archivos de Datos en Oracle 12c Newsletter Noviembre 2013 Contenido Movimiento ONLINE de Archivos de Datos en Oracle 12c Página: 1 Movimiento ONLINE de Archivos de Datos en Oracle Por Ing. Manuel Carrillo mcarrillo@datum.com.gt 12c En

Más detalles

Máxima Performance Postgresql. Disertante: Emanuel Calvo Franco. Año: 2009

Máxima Performance Postgresql. Disertante: Emanuel Calvo Franco. Año: 2009 Máxima Performance Postgresql Disertante: Emanuel Calvo Franco. Año: 2009 Nuevo temario Entendiendo el EXPLAIN. Actualizar Recolectar estadísticas. Indices. Performance Tips. Explain es tu amigo Permite

Más detalles

UNIVERSIDAD REGIONAL AUTÓNOMA DE LOS ANDES

UNIVERSIDAD REGIONAL AUTÓNOMA DE LOS ANDES UNIVERSIDAD REGIONAL AUTÓNOMA DE LOS ANDES UNIANDES Facultad de Sistemas Mercantiles Carrera de Sistemas de Informática Tema: ORACLE 9i. Autor: Muñoz Vivero Álvaro Andrés Ibarra 2010 Introducción La arquitectura

Más detalles

Introducción a SQL sobre Oracle

Introducción a SQL sobre Oracle Laboratorio de Bases de Datos Introducción a SQL sobre Oracle Luis A. González Ares Contenido Lenguaje SQL sobre Oracle. Descripción de las características y elementos fundamentales del lenguaje. Ejercicios

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

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

LENGUAJE DE MANIPULACIÓN DE DATOS (DML) CONSULTA DE DATOS

LENGUAJE DE MANIPULACIÓN DE DATOS (DML) CONSULTA DE DATOS PREVIO 5 LENGUAJE DE MANIPULACIÓN DE DATOS (DML) CONSULTA DE DATOS INTRODUCCIÓN SQL permite realizar consultas con condiciones de búsqueda, de tal forma que los resultados son precisamente aquellos que

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

m047a Curso Programando una Base de Datos SQL Server 2008, 36 h Creación B.D. y Constraints

m047a Curso Programando una Base de Datos SQL Server 2008, 36 h Creación B.D. y Constraints Crear Una Base De Datos (L12) A TRAVÉS DE LA CONSOLA DE ADMINISTRACIÓN A TRAVÉS DEL ASISTENTE DE BASES DE DATOS (DATABASE WIZARD) A TRAVÉS DE COMANDOS SQL (CREATE DATABASE, CREATE TABLE) Crear Un Grupo

Más detalles

LABORATORIO 8. Optimización de Consultas SQL a través de herramientas del SMBD Oracle

LABORATORIO 8. Optimización de Consultas SQL a través de herramientas del SMBD Oracle LABORATORIO 8. Optimización de Consultas SQL a través de herramientas del SMBD Oracle GUÍA DE LABORATORIO Nº 8 Actividad de Proyecto No. 10: desarrollar mantenimiento preventivo, correctivo o proactivo

Más detalles

SQL Server 2000. FEMEPA SQL Server 2000

SQL Server 2000. FEMEPA SQL Server 2000 FEMEPA Partes del SQL El lenguaje SQL está compuesto de varios sub-lenguajes, entre los cuales destacan los tres siguientes: DML. Lenguaje de definición de datos. Todas las sentencias de manipulación de

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

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

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

Más detalles

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

PROGRAMANDO BASES DE DATOS PostgreSQL INTRODUCCIÓN INTRODUCCIÓN A LAS BASES DE DATOS (L1)

PROGRAMANDO BASES DE DATOS PostgreSQL INTRODUCCIÓN INTRODUCCIÓN A LAS BASES DE DATOS (L1) A LAS BASES DE DATOS (L1) VENTAJAS TECNOLOGÍA BASE DE DATOS DISPONIBILIDAD Y VISIBILIDAD ALMACENAMIENTO CONSULTAS INFORMACIÓN RESPALDOS Y RESTAURACIÓN CONCEPTOS DE INTEGRIDAD DE LOS DATOS ELIMINACIÓN REDUNDANCIA

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

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

ÍNDICE PRIMERA PARTE... 17

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

Más detalles

ADMINISTRACIÓN DE BASES DE DATOS PREGUNTAS TEST SON SOLUCIÓN

ADMINISTRACIÓN DE BASES DE DATOS PREGUNTAS TEST SON SOLUCIÓN ADMINISTRACIÓN DE BASES DE DATOS PREGUNTAS TEST SON SOLUCIÓN 1. En el SGBD Oracle. Cuál de las siguientes afirmaciones es correcta? a) Los usuarios con el rol de administrador de la base de datos son SYS,

Más detalles

Procedimientos, Funciones, Trigger y Cursores en ORACLE

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

Más detalles

Restricción y Clasificación de los Datos. Copyright Oracle Corporation, All rights reserved.

Restricción y Clasificación de los Datos. Copyright Oracle Corporation, All rights reserved. 2 Restricción y Clasificación de los Datos Copyright Oracle Corporation, 1998. All rights reserved. Objetivos Al completar esta lección, debería a ser capaz de hacer lo siguiente: Limitar los registros

Más detalles

Temario. Índices simples Árboles B Hashing

Temario. Índices simples Árboles B Hashing Temario Introducción y fundamentos Introducción a SQL Modelo Entidad / Relación Modelo relacional Diseño relacional: formas normales Consultas Cálculo relacional Álgebra relacional Implementación de bases

Más detalles

Clase 1: Estructuras, Procesos y Diccionario de Datos

Clase 1: Estructuras, Procesos y Diccionario de Datos Clase 1: Estructuras, Procesos y Diccionario de Datos Estructura de la memoria System Global Area Buffer Cache Redo Log Buffer Share Pool Dictionary Cache Large Pool Process Global Area Private SQL Area

Más detalles

Administración Básica de Oracle10g

Administración Básica de Oracle10g PRACTICAS TEMA 2. Administración Básica de Oracle10g ARRANQUE Y PARADA DE LA BASE DE DATOS. 2.1. Fichero init.ora. Arranque y parada de la BD. Localizar el fichero init.ora (y spfile si existe) de nuestra

Más detalles

Funciones y TriggersIntroducción, Ejemplos

Funciones y TriggersIntroducción, Ejemplos Funciones y Triggers Introducción, Ejemplos 13 de noviembre de 2004 Contenidos Funciones: para qué? Lenguajes Tipos de funciones Creación de funciones tradicionales SRFs Funciones para triggers Indices

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

Diseño y Admón. de Bases de Datos. Ingeniería Informática curso 2010/11

Diseño y Admón. de Bases de Datos. Ingeniería Informática curso 2010/11 Laboratorio 06. Objetivos: Representación interna de un BD. Tablas, índices e índices full-text. Sesiones: 1 (24 de noviembre de 2010) Ejercicio: 1. Representación interna: 1.1. Copiar al repositorio de

Más detalles

Tema 33. El lenguaje SQL

Tema 33. El lenguaje SQL Tema 33. El lenguaje SQL Introducción... 1 Modos de uso... 2 Ejecución de las sentencias SQL... 2 Instrucciones DDL Data Definition Language-... 3 Instrucciones DML Data Manipulation Language-... 4 Instrucciones

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

INDICE Programación Introducción Capitulo 21 BASIC Capitulo 22. COBOL Capitulo 23 DELPHI Capitulo 24. FORTRAN Capitulo 25.

INDICE Programación Introducción Capitulo 21 BASIC Capitulo 22. COBOL Capitulo 23 DELPHI Capitulo 24. FORTRAN Capitulo 25. INDICE Programación Introducción 706 Capitulo 21 BASIC 711 Introducción 711 Sintaxis 713 Procedimientos y control de flujo 713 Tipos de datos 714 Disponibilidad y variantes del dialecto 714 Capitulo 22.

Más detalles

RUEDA TORRES DULCE CAROLINA 3CM2. MySQL CON NET BEANS PRÁCTICA 8

RUEDA TORRES DULCE CAROLINA 3CM2. MySQL CON NET BEANS PRÁCTICA 8 3CM2 MySQL CON NET BEANS PRÁCTICA 8 27 DE MARZO DE 2012 DESAROLLO I. Configurar las propiedades del Servidor MySQL. 1. Se asume que se encuentra instalado MySQL. 2. Abrir el IDE NetBeans. En el repositorio

Más detalles

INDICE Primera Parte. Panorámica general de SQL 2. Rápido repaso de SQL 3. SQL en Perspectiva

INDICE Primera Parte. Panorámica general de SQL 2. Rápido repaso de SQL 3. SQL en Perspectiva INDICE Prólogo XXIII Por qué este libro es para usted XXVII Primera Parte. Panorámica general de SQL 1 1. Introducción 3 El lenguaje SQL 3 El papel de SQL 6 Características y beneficios de SQL 7 Independencia

Más detalles

Bases de datos: Sistemas de bases de datos:

Bases de datos: Sistemas de bases de datos: Bases de datos: Sistemas de bases de datos: Un sistema de bases de datos es básicamente un sistema para archivar en computador, es decir, es un sistema computarizado cuyo propósito general es mantener

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

EL ENTORNO DE TRABAJO SQL ORACLE

EL ENTORNO DE TRABAJO SQL ORACLE PREVIO 2 EL ENTORNO DE TRABAJO SQL ORACLE Y LENGUAJE DE DEFINICIÓN DE DATOS DDL) INTRODUCCIÓN A ORACLE Oracle10g es de las últimas versiones de esté manejador de base de datos, incorpora la tecnología

Más detalles

Administración de Bases de Datos

Administración de Bases de Datos Administración de Bases de Datos Teoría adaptada al SGBD Oracle 10G 4.1.- Diseño Físico 4.2.- Fundamentos/Introducción 4.3.- Seguridad y Confidencialidad 4.4.- Recuperación ante fallos 4.5.- Optimización

Más detalles

Grupo Kybele, http://www.kybele.es/ Pág. 1

Grupo Kybele, http://www.kybele.es/ Pág. 1 Bases de Datos APUNTES PARA EL MANEJO DE SQL*Plus Para cualquier consulta a la sintaxis de las órdenes SQL o SQL*PLUS puede consultarse cualquier libro de ORACLE, o los manuales gratuitos en pdf o en línea

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

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