Oracle 11g PL/SQL Curso práctico de formación
Antolín Muñoz Chaparro
Oracle 11g PL/SQL. Curso práctico de formación Antolín Muñoz Chaparro ISBN: 978-84-939450-1-5 EAN: 9788493945015
Copyright © 2012 RC Libros © RC Libros es un sello y marca comercial registrados
Oracle 11g PL/SQL. Curso práctico de formación. Reservados todos los derechos. Ninguna parte de este libro incluida la cubierta puede ser reproducida, su contenido está protegido por la Ley vigente que establece penas de prisión y/o multas a quienes intencionadamente reprodujeren o plagiaren, en todo o en parte, una obra literaria, artística o científica, o su transformación, interpretación o ejecución en cualquier tipo de soporte existente o de próxima invención, sin autorización previa y por escrito de los titulares de los derechos de la propiedad intelectual. RC Libros, el Autor, y cualquier persona o empresa participante en la redacción, edición o producción de este libro, en ningún caso serán responsables de los resultados del uso de su contenido, ni de cualquier violación de patentes o derechos de terceras partes. El objetivo de la obra es proporcionar al lector conocimientos precisos y acreditados sobre el tema tratado pero su venta no supone ninguna forma de asistencia legal, administrativa ni de ningún otro tipo, si se precisase ayuda adicional o experta deberán buscarse los servicios de profesionales competentes. Productos y marcas citados en su contenido estén o no registrados, pertenecen a sus respectivos propietarios.
RC Libros Calle Mar Mediterráneo, 2. Nave 6 28830 SAN FERNANDO DE HENARES, Madrid Teléfono: +34 91 677 57 22 Fax: +34 91 677 57 22 Correo electrónico:
[email protected] Internet: www.rclibros.es
Diseño de colección, cubierta y pre-impresión: Grupo RC Impresión y encuadernación: Service Point Depósito Legal: M-5313-2012 Impreso en España 16 15 14 13 12 (1 2 3 4 5 6 7 8 9 10 11 12)
ÍNDICE
Prólogo .......................................................................................................
XXI
Capítulo 1. Fundamentos del lenguaje PL/SQL.............................................
1
Introducción .................................................................................................... El bloque .................................................................................................. Tipos de bloque ....................................................................................... Manejo de errores y excepciones ............................................................ Creación de procedimientos y funciones ................................................ Definición de variables y tipos ................................................................. Estructuras de bucle ................................................................................ Cursores ................................................................................................... Objetos .................................................................................................... Salida por pantalla de los resultados de una ejecución ........................... Unidades léxicas .............................................................................................. Identificadores ......................................................................................... Palabras reservadas ................................................................................. Delimitadores .......................................................................................... Literales ................................................................................................... Comentarios ............................................................................................ Tipos de datos ................................................................................................. Tipos escalares .........................................................................................
1 2 4 5 5 5 5 5 6 6 7 7 9 10 10 11 11 11
Oracle 11g PL/SQL. Curso práctico de formación
Tipos compuestos .................................................................................... Tipos punteros ......................................................................................... Tipos LOB ................................................................................................. Declaración de variables ................................................................................. Asignación de valores a variables ............................................................ Tipos utilizados con variables .................................................................. Subtipos ................................................................................................... Petición de valores por pantalla .............................................................. SUPUESTO PRÁCTICO 0 ................................................................................... SUPUESTO PRÁCTICO 1 ...................................................................................
14 14 14 15 15 16 16 17 17 18
Capítulo 2. Estructuras de control ...............................................................
19
Introducción .................................................................................................... IF…THEN…ELSE…END IF ................................................................................... Ejemplo .................................................................................................... Case ................................................................................................................. Ejemplo (Uso de la opción ELSE del CASE) ............................................... Ejemplo (Uso del CASE sin ELSE y control errores) .................................. Loop … End loop .............................................................................................. Ejemplo .................................................................................................... While … loop … end loop ................................................................................. Ejemplo .................................................................................................... For … loop … end loop ..................................................................................... Ejemplo .................................................................................................... Goto ................................................................................................................ Ejemplo .................................................................................................... Null .................................................................................................................. Ejemplo ....................................................................................................
19 20 20 21 21 22 22 22 23 23 23 24 24 24 24 24
Capítulo 3. Control de transacciones ...........................................................
25
Introducción .................................................................................................... Commit ............................................................................................................ ¿Cómo se realiza el proceso de validación (COMMIT)? ........................... Rollback ........................................................................................................... ¿Cómo se realiza el proceso de rechazo (ROLLBACK)? ............................ Savepoint ........................................................................................................ Rollback to ....................................................................................................... Ejemplo de uso del control de transacciones .......................................... SUPUESTO PRÁCTICO 2 ...................................................................................
25 25 26 29 29 33 33 34 34
VI
© RC Libros
ÍNDICE
Capítulo 4. Creación de tipos ......................................................................
37
Introducción .................................................................................................... Creación de un tipo RECORD (registro) ........................................................... Asignación de valores a un registro de forma directa ............................. Asignación de valores a un registro desde una consulta ......................... %Rowtype ................................................................................................ Actualización de una tabla a partir de un tipo RECORD ........................... Creación de un tipo TABLE (pila de elementos) .............................................. Asignación de valores a un tipo TABLE .................................................... Atributos de un tipo TABLE ...................................................................... Ejemplo .................................................................................................... VARRAYS ......................................................................................................... Inicialización de un VARRAY .................................................................... Ejemplo .................................................................................................... SUPUESTO PRÁCTICO 3 ...................................................................................
37 37 38 38 39 39 40 41 42 43 45 46 47 48
Capítulo 5. SQL vs PL/SQL ...........................................................................
51
Introducción .................................................................................................... Órdenes SQL .................................................................................................... Lenguaje DML .......................................................................................... Lenguaje DDL ........................................................................................... Órdenes para el control de transacciones ............................................... Órdenes para el control de la sesión ....................................................... Órdenes para el control del sistema ........................................................ Utilización de SQL en PL/SQL .......................................................................... SQL dinámico ................................................................................................... Uso de parámetros en el SQL dinámico ...................................................
51 51 51 52 52 53 53 53 57 59
Capítulo 6. Cursores ...................................................................................
61
¿Qué es un cursor? .......................................................................................... Cursores explícitos .......................................................................................... Declaración de un cursor ......................................................................... Apertura de un cursor ............................................................................. Extracción de los datos del cursor ........................................................... Cierre de un cursor .................................................................................. Atributos de los cursores ......................................................................... Cursores parametrizados ......................................................................... Cursores implícitos .......................................................................................... Cursores SQL dinámico ....................................................................................
61 62 62 62 63 64 64 65 66 67
© RC Libros
VII
Oracle 11g PL/SQL. Curso práctico de formación
SUPUESTO PRÁCTICO 4 ................................................................................... SUPUESTO PRÁCTICO 5 ...................................................................................
68 70
Capítulo 7. Subprogramas ..........................................................................
73
Introducción .................................................................................................... Procedimientos ............................................................................................... Creación de un procedimiento ................................................................ Tipos de parámetros en subprogramas ................................................... Diferencia entre IS y AS ........................................................................... Cuerpo del procedimiento ....................................................................... Llamada a un procedimiento dentro de un bloque ................................. Llamada a un procedimiento desde SQL*PLUS ....................................... Restricciones sobre los parámetros ......................................................... Alteración y borrado de procedimientos ................................................. Notación posicional y nominal de los parámetros ................................... SUPUESTO PRÁCTICO 6 ................................................................................... Funciones ........................................................................................................ La orden RETURN ..................................................................................... Eliminación y alteración de funciones ..................................................... Llamada a una función dentro de un bloque PL/SQL ............................... Llamada a una función en una instrucción SELECT .................................. Tablas del sistema asociadas ................................................................... Situaciones que provocan al estado INVALID .......................................... Llamada a una función desde SQL*PLUS ................................................. SUPUESTO PRÁCTICO 7 ...................................................................................
73 74 74 74 76 77 78 78 79 80 80 81 82 83 83 84 84 85 88 88 88
Capítulo 8. Paquetes ..................................................................................
89
Introducción .................................................................................................... Especificación o cabecera del paquete ............................................................ Cuerpo del paquete ......................................................................................... Referenciando a los paquetes ......................................................................... Inicialización de un paquete ............................................................................ Sobrecarga de paquetes .................................................................................. Restricciones de la sobercarga ................................................................ Dependencias .................................................................................................. Repercusión del estado de los objetos con un paquete .......................... SUPUESTO PRÁCTICO 8 ................................................................................... SUPUESTO PRÁCTICO 9 ...................................................................................
89 90 91 92 92 93 94 95 95 97 98
VIII
© RC Libros
ÍNDICE
Capítulo 9. Paquetes predeterminados .......................................................
99
Introducción .................................................................................................... Lista de paquetes predeterminados ................................................................ DBMS_DB_VERSION ........................................................................................ Constantes ............................................................................................... DBMS_FILE_TRANSFER .................................................................................... Procedimiento COPY_FILE ....................................................................... Procedimiento GET_FILE .......................................................................... Procedimiento PUT_FILE ......................................................................... DBMS_OUTPUT ............................................................................................... Errores de la sección EXCEPTION ............................................................. Procedimiento DISABLE ........................................................................... Procedimiento ENABLE ............................................................................ Procedimiento GET_LINE ......................................................................... Procedimiento GET_LINES ....................................................................... Procedimiento NEW_LINE ....................................................................... Procedimiento PUT .................................................................................. Procedimiento PUT_LINE ......................................................................... Reglas y límites ........................................................................................ DBMS_RANDOM ............................................................................................. Procedimiento INITIALIZE ........................................................................ Función NORMAL .................................................................................... Procedimiento RANDOM ......................................................................... Procedimiento SEED ................................................................................ Función STRING ....................................................................................... Procedimiento TERMINATE ..................................................................... Función VALUE ........................................................................................ UTL_FILE .......................................................................................................... Errores de la sección EXCEPTION ............................................................. Procedimiento FCLOSE ............................................................................ Procedimiento FCLOSE_ALL ..................................................................... Procedimiento FCOPY .............................................................................. Procedimiento FFLUSH ............................................................................ Procedimiento FGETATTR ........................................................................ Función FGETPOS .................................................................................... Función FOPEN ........................................................................................ Función FOPEN_NCHAR ........................................................................... Procedimiento FREMOVE ........................................................................ Procedimiento FRENAME ........................................................................ Procedimiento FSEEK ...............................................................................
99 99 115 115 116 116 119 120 121 122 122 123 124 124 125 125 126 126 127 127 128 128 129 129 130 131 132 134 136 136 137 138 139 140 140 142 143 144 145
© RC Libros
IX
Oracle 11g PL/SQL. Curso práctico de formación
Procedimiento GET_LINE ......................................................................... Procedimiento GET_LINE_NCHAR ........................................................... Procedimiento GET_RAW ........................................................................ Función IS_OPEN ..................................................................................... Procedimiento NEW_LINE ....................................................................... Procedimiento PUT .................................................................................. Procedimiento PUT_LINE ......................................................................... Procedimiento PUT_LINE_NCHAR ........................................................... Procedimiento PUT_NCHAR .................................................................... Procedimiento PUTF ................................................................................ Procedimiento PUTF_NCHAR .................................................................. Procedimiento PUT_RAW ........................................................................ UTL_MAIL ........................................................................................................ Procedimiento SEND ................................................................................ Procedimiento SEND_ATTACH_RAW ....................................................... Procedimiento SEND_ATTACH_VARCHAR2 ............................................. UTL_HTTP ........................................................................................................ Errores de la sección EXCEPTION ............................................................. Tipo REQ .................................................................................................. Tipo REQUEST_CONTEXT_TYPE ............................................................... Tipo RESP ................................................................................................. Tipos COOKIE y COOKIE_TABLE ............................................................... Tipo CONNECTION ................................................................................... Procedimiento ADD_COOKIES ................................................................. Función BEGIN_REQUEST ........................................................................ Procedimiento CLEAR_COOKIES .............................................................. Procedimiento CLOSE_PERSISTENT_CONN ............................................. Procedimiento CLOSE_PERSISTENT_CONNS ............................................ Función CREATE_REQUEST_CONTEXT ..................................................... Procedimiento DESTROY_REQUEST_CONTEXT ........................................ Procedimiento END_REQUEST ................................................................. Procedimiento END_RESPONSE ............................................................... Procedimiento GET_AUTHENTICATION ................................................... Procedimiento GET_BODY_CHARSET ...................................................... Función GET_COOKIE_COUNT ................................................................. Procedimiento GET_COOKIE_SUPPORT ................................................... Función GET_COOKIES ............................................................................. Procedimiento GET_DETAILED_EXCP_SUPPORT ..................................... Función GET_DETAILED_SQLCODE .......................................................... Función GET_DETAILED_SQLERRM .......................................................... Procedimiento GET_FOLLOW_REDIRECT ................................................. X
146 147 148 148 149 150 150 151 152 152 154 155 156 157 158 161 163 171 173 173 174 174 176 177 178 179 180 180 182 183 184 185 185 186 186 187 188 189 189 189 190 © RC Libros
ÍNDICE
Procedimiento GET_HEADER ................................................................... Procedimiento GET_HEADER_BY_NAME ................................................. Función GET_HEADER_COUNT ................................................................ Procedimiento GET_PERSISTENT_CONN_SUPPORT ................................ Procedimiento GET_PERSISTENT_CONNS ............................................... Función GET_PERSISTENT_CONN_COUNT .............................................. Procedimiento GET_PROXY ..................................................................... Función GET_RESPONSE .......................................................................... Procedimiento GET_RESPONSE_ERROR_CHECK ...................................... Procedimiento GET_TRANSFER_TIMEOUT .............................................. Procedimiento READ_LINE ...................................................................... Procedimiento READ_RAW ...................................................................... Procedimiento READ_TEXT ...................................................................... Función REQUEST .................................................................................... Función REQUEST_PIECES ........................................................................ Procedimiento SET_AUTHENTICATION .................................................... Procedimiento SET_AUTHENTICATION_FROM_WALLET ......................... Procedimiento SET_BODY_CHARSET ....................................................... Procedimiento SET_COOKIE_SUPPORT ................................................... Procedimiento SET_DETAILED_EXCP_SUPPORT ...................................... Procedimiento SET_FOLLOW_REDIRECT ................................................. Procedimiento SET_HEADER ................................................................... Procedimiento SET_PERSISTENT_CONN_SUPPORT ................................. Procedimiento SET_PROXY ...................................................................... Procedimiento SET_RESPONSE_ERROR_CHECK ...................................... Procedimiento SET_TRANSFER_TIMEOUT ............................................... Procedimiento SET_WALLET .................................................................... Procedimiento WRITE_LINE ..................................................................... Procedimiento WRITE_RAW .................................................................... Procedimiento WRITE_TEXT ....................................................................
190 191 192 192 193 194 194 195 195 196 196 197 198 199 201 202 203 204 205 206 207 208 208 209 210 210 211 212 213 213
Capítulo 10. Disparadores o triggers ...........................................................
215
Introducción .................................................................................................... Utilidad de los triggers .................................................................................... Sintaxis ..................................................................................................... Integridad referencial ...................................................................................... On delete restrict ..................................................................................... On update restrict ................................................................................... On delete cascade ................................................................................... On update cascade ..................................................................................
215 216 216 216 217 218 218 219
© RC Libros
XI
Oracle 11g PL/SQL. Curso práctico de formación
Espacio de nombres del disparador ................................................................ Ejemplo .................................................................................................... Momento del disparo ...................................................................................... Suceso del disparo ........................................................................................... Nivel de disparo ............................................................................................... Condición de disparo ....................................................................................... Ejemplo .................................................................................................... Sentencias de borrado y alteración de triggers ............................................... Borrado de un trigger .............................................................................. Alteración de un trigger ........................................................................... Uso de los predicados :OLD y :NEW ................................................................ Uso de los predicados booleanos .................................................................... Ejemplo .................................................................................................... Tablas mutantes .............................................................................................. Tablas de restricción ................................................................................ Restricciones en triggers con nivel de fila ................................................ SUPUESTO PRÁCTICO 10 ................................................................................. SUPUESTO PRÁCTICO 11 ................................................................................. SUPUESTO PRÁCTICO 12 .................................................................................
220 220 220 221 221 221 221 222 222 222 223 223 224 224 224 225 227 231 232
Capítulo 11. Tratamiento de errores ...........................................................
235
Introducción .................................................................................................... Declaración de excepciones ............................................................................ Excepciones definidas por el usuario .............................................................. Excepciones predefinidas ......................................................................... Provocar excepciones ...................................................................................... Ejemplo .................................................................................................... Sintaxis de la sección EXCEPTION .................................................................... Ejemplo .................................................................................................... Uso de SQLCODE y SQLERRM .......................................................................... Ejemplo .................................................................................................... Utilización de RAISE_APPLICATION_ERROR .................................................... Ejemplo .................................................................................................... Utilización de EXCEPTION_INIT ....................................................................... Ejemplo .................................................................................................... Propagación de excepciones ........................................................................... Tratamiento de errores en la sección ejecutable .................................... Tratamiento de errores en la sección declarativa ................................... Tratamiento de errores en la sección de excepciones ............................. Ámbito de las excepciones ......................................................................
235 236 236 236 238 239 239 240 240 240 241 241 241 242 242 242 244 245 246
XII
© RC Libros
ÍNDICE
SUPUESTO PRÁCTICO 13 ................................................................................. SUPUESTO PRÁCTICO 14 .................................................................................
246 247
Capítulo 12. Cursores avanzados ................................................................
249
Bucles de extracción ........................................................................................ Bucles simples (LOOP…END LOOP) ................................................................. Bucles WHILE ................................................................................................... Bucles FOR ....................................................................................................... Cursores SELECT FOR UPDATE ......................................................................... For update ............................................................................................... Where current of ..................................................................................... SUPUESTO PRÁCTICO 15 .................................................................................
249 249 250 250 251 252 253 254
Capítulo 13. Objetos ...................................................................................
255
Introducción .................................................................................................... Bases de la programación orientada a objetos ............................................... Objetos e instancias de los objetos ................................................................. Bases de datos objeto-relacionales ................................................................. Definición de los tipos de objetos ................................................................... Especificación de un objeto ..................................................................... Declaración, inicialización y asignación de valores a un objeto ............... Especificación de métodos ...................................................................... Cuerpo de un objeto ................................................................................ Llamada a un método ..................................................................................... Borrar un objeto .............................................................................................. Modificar un objeto ........................................................................................ Creación de tablas de objetos ......................................................................... Inserción de valores en una tabla de objetos ..................................................
255 255 257 258 258 259 260 261 261 262 262 263 263 263
Capítulo 14. Entornos de ejecución PL/SQL .................................................
265
Introducción .................................................................................................... SQL*PLUS / iSQL*PLUS / SQL*WORKSHEET .................................................... Ejecución de código SQL .................................................................................. Ejecución de código PL/SQL ............................................................................ Definición de variables globales ...................................................................... Uso de variables globales ................................................................................ Cómo se puede llamar a un procedimiento almacenado ................................ Cómo se puede llamar a una función almacenada .......................................... Envío de resultados a un archivo ....................................................................
265 265 266 266 267 267 268 268 269
© RC Libros
XIII
Oracle 11g PL/SQL. Curso práctico de formación
Ejecución de scripts (archivos) de comandos .................................................. Mostrar errores de compilación ...................................................................... Herramientas de diseño .................................................................................. Oracle Developer Suite 10g ..................................................................... Oracle JDeveloper .................................................................................... Oracle Forms ........................................................................................... Oracle Reports ......................................................................................... Oracle Designer ....................................................................................... Oracle Business Intelligence Beans .......................................................... Oracle Developer Tools for Visual Studio ................................................ Oracle SQL Developer ......................................................................................
270 270 271 272 272 272 273 273 273 274 274
Capítulo 15. Certificaciones de Oracle .........................................................
279
Introducción .................................................................................................... Certificaciones de Oracle disponibles .............................................................. Certificaciones de base de datos ............................................................. Información sobre el proceso .......................................................................... Identificar el camino correcto para la certificación deseada ................... Prepararse para el examen ...................................................................... Programar y completar el examen .......................................................... Completar los requerimientos de tu certificación ................................... Preguntas tipo examen de certificación SQL ................................................... Cuestión 1 ................................................................................................ Cuestión 2 ................................................................................................ Cuestión 3 ................................................................................................ Cuestión 4 ................................................................................................ Cuestión 5 ................................................................................................ Cuestión 6 ................................................................................................ Cuestión 7 ................................................................................................ Cuestión 8 ................................................................................................ Cuestión 9 ................................................................................................ Cuestión 10 .............................................................................................. Cuestión 11 .............................................................................................. Cuestión 12 .............................................................................................. Cuestión 13 .............................................................................................. Cuestión 14 .............................................................................................. Cuestión 15 .............................................................................................. Cuestión 16 .............................................................................................. Cuestión 17 .............................................................................................. Cuestión 18 ..............................................................................................
279 279 280 282 282 282 283 283 283 284 284 285 285 286 286 287 287 288 289 290 290 291 291 292 292 293 293
XIV
© RC Libros
ÍNDICE
Cuestión 19 .............................................................................................. Cuestión 20 .............................................................................................. Cuestión 21 .............................................................................................. Cuestión 22 .............................................................................................. Cuestión 23 .............................................................................................. Cuestión 24 .............................................................................................. Cuestión 25 .............................................................................................. Cuestión 26 .............................................................................................. Cuestión 27 .............................................................................................. Cuestión 28 .............................................................................................. Cuestión 29 .............................................................................................. Cuestión 30 .............................................................................................. Cuestión 31 .............................................................................................. Cuestión 32 .............................................................................................. Cuestión 33 .............................................................................................. Cuestión 34 .............................................................................................. Cuestión 35 .............................................................................................. Cuestión 36 .............................................................................................. Cuestión 37 .............................................................................................. Cuestión 38 .............................................................................................. Cuestión 39 .............................................................................................. Cuestión 40 .............................................................................................. Cuestión 41 .............................................................................................. Cuestión 42 .............................................................................................. Cuestión 43 .............................................................................................. Cuestión 44 .............................................................................................. Cuestión 45 .............................................................................................. Cuestión 46 .............................................................................................. Cuestión 47 .............................................................................................. Cuestión 48 .............................................................................................. Cuestión 49 .............................................................................................. Cuestión 50 .............................................................................................. Cuestión 51 .............................................................................................. Cuestión 52 .............................................................................................. Cuestión 53 .............................................................................................. Cuestión 54 .............................................................................................. Cuestión 55 ..............................................................................................
294 294 295 295 295 296 296 297 297 298 298 298 299 300 300 300 301 301 302 302 302 303 303 303 304 304 304 305 305 305 306 306 306 307 307 307 307
Anexo I. Resolución de supuestos prácticos.................................................
309
Supuesto práctico 0 ......................................................................................... Resolución del supuesto ..........................................................................
309 310 XV
© RC Libros
Oracle 11g PL/SQL. Curso práctico de formación
Supuesto práctico 1 ......................................................................................... Resolución del supuesto .......................................................................... Supuesto práctico 2 ......................................................................................... Resolución del supuesto .......................................................................... Supuesto práctico 3 ......................................................................................... Resolución del supuesto (punto 1) .......................................................... Resolución del supuesto (punto 2) .......................................................... Supuesto práctico 4 ......................................................................................... Resolución del supuesto .......................................................................... Supuesto práctico 5 ......................................................................................... Resolución del supuesto .......................................................................... Supuesto práctico 6 ......................................................................................... Resolución del supuesto (punto 1) .......................................................... Resolución del supuesto (punto 2) .......................................................... Supuesto práctico 7 ......................................................................................... Resolución del supuesto (punto 1) .......................................................... Resolución del supuesto (punto 2a) ........................................................ Resolución del supuesto (punto 2b) ........................................................ Resolución del supuesto (punto 2c) ........................................................ Supuesto práctico 8 ......................................................................................... Resolución del supuesto .......................................................................... Supuesto práctico 9 ......................................................................................... Resolución del supuesto .......................................................................... Supuesto práctico 10 ....................................................................................... Supuesto práctico 11 ....................................................................................... Supuesto práctico 12 ....................................................................................... Resolución del supuesto .......................................................................... Supuesto práctico 13 ....................................................................................... Resolución del supuesto (punto 1) .......................................................... Resolución del supuesto (punto 2a) ........................................................ Resolución del supuesto (punto 2b) ........................................................ Resolución del supuesto (punto 2c) ........................................................ Resolución del supuesto (punto 2d) ........................................................ Supuesto práctico 14 ....................................................................................... Resolución del supuesto (punto 1) .......................................................... Resolución del supuesto (punto 2a) ........................................................ Resolución del supuesto (punto 2b) ........................................................ Resolución del supuesto (punto 2c) ........................................................ Supuesto práctico 15 ....................................................................................... Resolución del supuesto (punto 1) .......................................................... Resolución del supuesto (punto 2) .......................................................... XVI
311 311 312 313 314 315 316 317 319 322 323 326 327 328 329 329 330 330 330 331 332 332 333 334 338 340 341 342 343 344 344 344 345 345 345 346 346 346 347 347 348 © RC Libros
ÍNDICE
Resolución del supuesto (punto 3) .......................................................... Resolución del supuesto (punto 4) ..........................................................
349 349
Anexo II. Resolución de cuestiones de certificación .....................................
351
Cuestión 1 ....................................................................................................... Cuestión 2 ....................................................................................................... Cuestión 3 ....................................................................................................... Cuestión 4 ....................................................................................................... Cuestión 5 ....................................................................................................... Cuestión 6 ....................................................................................................... Cuestión 7 ....................................................................................................... Cuestión 8 ....................................................................................................... Cuestión 9 ....................................................................................................... Cuestión 10 ..................................................................................................... Cuestión 11 ..................................................................................................... Cuestión 12 ..................................................................................................... Cuestión 13 ..................................................................................................... Cuestión 14 ..................................................................................................... Cuestión 15 ..................................................................................................... Cuestión 16 ..................................................................................................... Cuestión 17 ..................................................................................................... Cuestión 18 ..................................................................................................... Cuestión 19 ..................................................................................................... Cuestión 20 ..................................................................................................... Cuestión 21 ..................................................................................................... Cuestión 22 ..................................................................................................... Cuestión 23 ..................................................................................................... Cuestión 24 ..................................................................................................... Cuestión 25 ..................................................................................................... Cuestión 26 ..................................................................................................... Cuestión 27 ..................................................................................................... Cuestión 28 ..................................................................................................... Cuestión 29 ..................................................................................................... Cuestión 30 ..................................................................................................... Cuestión 31 ..................................................................................................... Cuestión 32 ..................................................................................................... Cuestión 33 ..................................................................................................... Cuestión 34 ..................................................................................................... Cuestión 35 ..................................................................................................... Cuestión 36 .....................................................................................................
351 352 352 353 353 354 354 355 356 357 357 358 358 358 359 360 360 361 361 361 362 362 363 363 364 364 365 365 365 366 366 367 368 368 368 369
© RC Libros
XVII
Oracle 11g PL/SQL. Curso práctico de formación
Cuestión 37 Cuestión 38 Cuestión 39 Cuestión 40 Cuestión 41 Cuestión 42 Cuestión 43 Cuestión 44 Cuestión 45 Cuestión 46 Cuestión 47 Cuestión 48 Cuestión 49 Cuestión 50 Cuestión 51 Cuestión 52 Cuestión 53 Cuestión 54 Cuestión 55
..................................................................................................... ..................................................................................................... ..................................................................................................... ..................................................................................................... ..................................................................................................... ..................................................................................................... ..................................................................................................... ..................................................................................................... ..................................................................................................... ..................................................................................................... ..................................................................................................... ..................................................................................................... ..................................................................................................... ..................................................................................................... ..................................................................................................... ..................................................................................................... ..................................................................................................... ..................................................................................................... .....................................................................................................
370 370 370 371 371 371 372 372 372 373 373 373 374 374 374 374 375 375 375
Anexo III. Fichero SCRIPT_BDHOSPITAL .......................................................
377
Introducción .................................................................................................... Diagrama entidad/relación del esquema del hospital ..................................... Modelo relacional del esquema del hospital .................................................. Contenido del fichero con comentarios .......................................................... Creación del usuario propietario de los objetos ...................................... Conexión a la base de datos con el nuevo usuario .................................. Creación de las tablas del esquema hospital ........................................... Alteración de tablas del esquema hospital y creación de índices secundarios ........................................................................................... Creación de una secuencia para manejo del código de inscripción en un hospital ........................................................................................ Inserción de datos en las tablas del esquema .........................................
377 378 379 379 379 380 380
382 382
Anexo IV. Referencias y material anexo en Internet ....................................
403
Referencias utilizadas para el curso ................................................................ Enlaces a Oracle .............................................................................................. Página oficial de Oracle Internacional ..................................................... Página oficial de Oracle España ...............................................................
403 403 404 404
XVIII
382
© RC Libros
ÍNDICE
Red tecnológica de Oracle ....................................................................... Programa de certificación en productos de Oracle ................................. Universidad de Oracle ............................................................................. Documentación oficial de Oracle de la versión 11g Rel.2 ........................ Web del autor ................................................................................................. Web de la editorial ...........................................................................................
404 404 404 405 405 405
Anexo V. Guía de instalación de Oracle 11g XE ............................................
407
Introducción .................................................................................................... Requerimientos mínimos ................................................................................ Tutorial de instalación ..................................................................................... Paso 1: Descarga del producto ................................................................ Paso 2: Configuración del equipo para la instalación .............................. Paso 3: Ejecute la instalación ................................................................... Paso 4: Comienza el proceso de instalación ............................................ Paso 5: Pantalla de bienvenida ................................................................ Paso 6: Términos de la licencia ................................................................ Paso 7: Ubicación para la instalación ....................................................... Paso 8: Contraseña para los usarios SYS y SYSTEM ................................. Paso 9: Resumen previo a la instalación .................................................. Paso 10: Progreso de la instalación ......................................................... Paso 11: Finalización de la instalación ..................................................... Paso 12: Familiarizándose con los elementos instalados ........................
407 407 408 408 408 408 409 409 410 410 411 411 412 413 413
Índice alfabético..........................................................................................
415
© RC Libros
XIX