04/20/23 Bases de Datos II 1
Bases de Datos 2Bases de Datos 2Bases de Datos 2Bases de Datos 2Francisco MorenoFrancisco Moreno
Universidad Nacional Universidad Nacional
MedellínMedellín
04/20/23 Bases de Datos 2
OBJETIVO GENERAL
• Presentar y aplicar un lenguaje procedimental de bases de datos, las bases de datos objeto relacionales y los aspectos esenciales de la optimización de consultas
04/20/23 Bases de Datos 3
OBJETIVOS ESPECÍFICOS (1/2)
1. Ampliar los conocimientos del curso de Bases de Datos 1 mediante la creación de ProcedimientosProcedimientos, FuncionesFunciones, Disparadoresisparadores ((triggerstriggers) ) y otros elementos en un SGBD*
2. Presentar y aplicar los conceptos conceptos Objeto Objeto RelacionalesRelacionales en un SGBD y comparar con los conceptos relacionales
*SGBD: Sistema de Gestión de Bases de Datos
04/20/23 Bases de Datos 4
OBJETIVOS ESPECÍFICOS (2/2)
3. Presentar los fundamentos de la optimización de consultasoptimización de consultas y aplicarlos en un SGBD
04/20/23 Bases de Datos 5
CONTENIDO (1/3)
• Estructura de un programa
• Tipos de datos y definición de variables
• Estructuras de control:
- condicionales - iterativas
• Cursores• Manejo de errores
(excepciones)• Subprogramas: - Procedimientos - Funciones• Disparadores (triggers) • Paquetes• XML en Oracle
(posiblemente se usará en el primer trabajo)
1. Lenguaje procedimental
04/20/23 Bases de Datos 6
CONTENIDO (2/3)
• Tipos de datos primitivosprimitivos del modelo objeto relacional
• Tipos de Datos definidos por el Usuario (UDTs)
• La adición de comportamiento a los tipos de datos: Encapsulamiento
• Polimorfismo y sobrecarga
• Herencia• Aplicación del modelo
objeto relacional en un SGBD
• Ventajas y desventajas del modelo objeto relacional
2. Bases de datos objeto relacionales
04/20/23 Bases de Datos 7
CONTENIDO (3/3)
• Introducción a la optimización de consultas
• La operación de reunión (join): algoritmos nested, sort-merge, hash.
• Optimización de expresiones algebraicas• Optimización en un SGBD específico:
– Herramientas de ayuda: Explain Plan, TKPROF
– Sugerencias al optimizador (hints), índices y otros aspectos relacionados
3. Optimización de consultas
04/20/23 Bases de Datos 8
METODOLOGÍA• Clases: Miércoles M8-201
Viernes M7 Piso 5 sala del fondo• Clases en la sala de cómputo • Asesorías extra clase• Desarrollo de ejercicios en clase • Desarrollo de trabajos en grupo
04/20/23 Bases de Datos 9
BIBLIOGRAFÍA (1/3)
• Oracle Corp., “Oracle 11G: Application Developer’s Guide: Object Relational Features”, Oracle, 2009.*
• Oracle Corp., “Oracle 11G: PL/SQL User’s Guide and Reference”, Oracle, 2009.*
• Oracle Corp., “Oracle 11G: Database Performance Tuning Guide”, Oracle, 2009.** Disponible en la página del curso menú Recursos
04/20/23 Bases de Datos 10
• Burleson D. “Oracle Tuning: The Definitive Reference”, Rampant TechPress, 2014.
• Rosenzweig B., Rakhimov E. “Oracle PL/SQL by Example”, Prentice Hall, 2009.
• Paulley, G. “SQL:2008 now an approved ISO International Standard”.
BIBLIOGRAFÍA (2/3)
04/20/23 Bases de Datos 11
• Revista Oracle Magazine:http://
www.oracle.com/technetwork/oramag/magazine/home/index.html *
• Stonebreaker M., Moore D. “Object-Relational DBMSs, The Next Great Wave”, Morgan Kaufman, 1996.
• Zemke F.,“What’s New in SQL:2011”, SIGMOD Record, 41(1), 2012.
BIBLIOGRAFÍA (3/3)
* Posiblemente se indicará un artículo para leer (evaluable) de esta revista.
04/20/23 Bases de Datos 12
EVALUACIÓN (1/2)
Sobre lenguaje procedimental:1 examen (20%) y trabajo (13%)
Sobre BD Objeto-relacionales: 1 examen (20%) y trabajo (14%)
Sobre optimización: 1 examen (20%) y trabajo (13%)
Supletorios solo con excusa válida según el reglamento estudiantil
EVALUACIÓN (2/2)
• Si un examen se programa para un viernes, este se hace en la sala de cómputo del M7, si se programa para un miércoles se hace en el M8-201.
• Algunos viernes al final de la clase se plantean ejercicios para ser resueltos allí mismo, de esta forma se pueden ganar bonificaciones para los exámenes.
04/20/23 Bases de Datos 13
No se considera ningún otro tipo de evaluación «para subir nota»
04/20/23 Bases de Datos 14
INFORMACIÓN GENERAL
• Francisco J. Moreno– Of. M8 Anexo - 312, Tel: 425 5376– Celular: no tengo– Email: [email protected]– Horario de Atención:
• Página del Curso: http://www.medellin.unal.edu.co/~fjmoreno/bd2
W 4 – 6 pm
04/20/23 Bases de Datos 15
Instalación de Oracle (1/4)
• El instalador Oracle Express 11g para Windows (32 bits):
https://drive.google.com/a/unal.edu.co/file/d/0B5PdnzThRnQyUlhHQWpJYm9FeGM/view?usp=sharing
Si su computador es de 64 bits, el instalador de 32 bits puede generar problemas, puede usar el procedimiento sugerido acá:
http://www.hanmiaojuan.com/2013/03/install-oracle-xe-11g-for-windows7-64bits.html
O descargar el instalador de 64 bits de la página de Oracle (también hay versión para Linux)
Instalación de Oracle (2/4)
• Para crear un usuario. Ingresar con system: SQL> conn system
Y la contraseña (elegida durante la instalación) y ejecutar:CREATE USER nom_usu IDENTIFIED BY mi_contraseña;
04/20/23 Bases de Datos 16
Elegir un nombre de usuario
04/20/23 Bases de Datos 17
Instalación de Oracle (3/4)
• Conceder estos permisos:GRANT CONNECT, RESOURCE TO nom_usu;GRANT CREATE ANY TABLE TO nom_usu;GRANT CREATE ANY PROCEDURE TO nom_usu;
04/20/23 Bases de Datos 18
Instalación de Oracle (4/4)
• Para editar, compilar y ejecutar los programas en PL/SQL (lenguaje procedimental de Oracle) se puede usar el editor que trae el Oracle Express (SQL*Plus) u otro como el PLSQL Developer (disponible en la página del curso Menú Recursos)
04/20/23 Bases de Datos 19
Notas (1/2)
• El curso puede demandar una parte considerable de tiempo. Si su tiempo es limitado, quizás no sea el momento apropiado para ver el curso.
• Cuando la clase sea en la sala de cómputo, si desea usar los equipos para actividades como: ver vídeos, jugar, interactuar en redes sociales, realizar trabajos de otras materias, etc. POR FAVOR ABSTÉNGASE DE ASISTIR A LA CLASE.
Notas (2/2)
• En el curso se espera que usted conciba y desarrolle la solución por sí mismo a los trabajos planteados.
• Requisitos: dominio de SQL, objetos, programación y leer mucho.
• Si para resolver los problemas su intención es buscar la solución en internet o a acudir a personas externas a su grupo de trabajo, le recomiendo altamente NO tomar el curso.
04/20/23 Bases de Datos 20
Top Related