Manual Pl SQL

259
PL/SQL Developer 9.0 Guía del usuario Agosto 2011

Transcript of Manual Pl SQL

Page 1: Manual Pl SQL

PL/SQL Developer 9.0 Guía del usuario

Agosto 2011

Page 2: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 2

Contenido 1. INTRODUCCIÓN. ............................................................................................................................ 7

2. INSTALACIÓN. .............................................................................................................................. 11

2.1 REQUISITOS DEL SISTEMA. ....................................................................................................... 112.2 INSTALAR PL/SQL DEVELOPER EN UNA ESTACIÓN DE TRABAJO. ........................................ 112.3 INSTALAR PL/SQL DEVELOPER EN UN SERVIDOR. ................................................................ 112.4 INSTALACIÓN DESATENDIDA. .................................................................................................. 112.5 DESINSTALAR PL/SQL DEVELOPER. ...................................................................................... 12

3. INICIO DE SESIÓN CONTRA UNA BASE DE DATOS ORACLE. .................................... 13

4. ESCRIBIR PROGRAMAS ............................................................................................................ 15

4.1 CREAR UN PROGRAMA ............................................................................................................. 154.2 GUARDAR UN PROGRAMA. ....................................................................................................... 164.3 MODIFICAR UN PROGRAMA. .................................................................................................... 174.4 COMPILAR UN PROGRAMA. ...................................................................................................... 174.5 OPCIONES DEL COMPILADOR. .................................................................................................. 18

5. PROBAR PROGRAMAS. .............................................................................................................. 19

5.1 CREAR UN ARCHIVO DE PRUEBA. ............................................................................................. 195.2 EJECUTAR UN ARCHIVO DE PRUEBA. ....................................................................................... 205.3 TIPOS DE VARIABLES. ............................................................................................................... 215.4 GUARDAR ARCHIVOS DE PRUEBA. ........................................................................................... 225.5 CAPTURAR ERRORES EN TIEMPO DE EJECUCIÓN. .................................................................... 225.6 ESTADO DE LOS PAQUETES Y DE LAS SESIONES JAVA. ........................................................... 235.7 VER UN CONJUNTO DE RESULTADOS. ...................................................................................... 235.8 VER LA SALIDA GENERADA POR EL PAQUETE DBMS_OUTPUT. .............................................. 235.9 VER LA SALIDA HTP. ............................................................................................................... 245.10 DEPURAR. .................................................................................................................................. 245.11 TRAZAR LA EJECUCIÓN. ........................................................................................................... 275.12 PRUEBAS DE REGRESIÓN. ......................................................................................................... 28

6. OPTIMIZACIÓN. ........................................................................................................................... 29

6.1 UTILIZAR LA VENTANA DEL PLAN DE EJECUCIÓN. ................................................................. 296.2 ESTADÍSTICAS AUTOMÁTICAS. ................................................................................................ 306.3 EL PERFILADOR DE PL/SQL. ................................................................................................... 316.4 TRAZAR INSTRUCCIONES SQL. ................................................................................................ 32

7. TRABAJAR CON SQL. ................................................................................................................. 34

7.1 UTILIZAR LA VENTANA DE CONSULTA SQL. .......................................................................... 347.2 MODIFICAR LOS RESULTADOS EN LA REJILLA DE RESULTADOS. ........................................... 367.3 FILTRAR RESULTADOS DE LA CONSULTA. ............................................................................... 407.4 CONSULTAS VINCULADAS. ....................................................................................................... 417.5 VARIABLES DE SUSTITUCIÓN. .................................................................................................. 417.6 ACTUALIZAR LA BASE DE DATOS. ........................................................................................... 427.7 VER Y EDITAR COLUMNAS DE TIPO XMLTYPE. .................................................................... 447.8 EXPORTAR CONSULTAS. ........................................................................................................... 447.9 GUARDAR ARCHIVOS SQL. ...................................................................................................... 447.10 CREAR CONSULTAS ESTÁNDAR. .............................................................................................. 45

Page 3: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 3

8. LA VENTANA DE COMANDOS. ............................................................................................... 46

8.1 INTRODUCIR COMANDOS E INSTRUCCIONES SQL. ................................................................. 468.2 DESARROLLAR ARCHIVOS DE COMANDOS. ............................................................................. 468.3 COMANDOS SOPORTADOS. ....................................................................................................... 48

9. CREAR Y MODIFICAR OBJETOS. .......................................................................................... 51

9.1 EL EDITOR DE TABLAS. ............................................................................................................. 519.2 EL EDITOR DE SECUENCIAS. ..................................................................................................... 629.3 EL EDITOR DE SINÓNIMOS. ....................................................................................................... 639.4 EL EDITOR DE LIBRERÍAS. ........................................................................................................ 639.5 EL EDITOR DE DIRECTORIOS. ................................................................................................... 649.6 EL EDITOR DE TRABAJOS DE LA BASE DE DATOS. ................................................................... 649.7 EL EDITOR DE LISTAS. .............................................................................................................. 649.8 EL EDITOR DE TABLAS DE LISTAS AVANZADAS. ..................................................................... 659.9 EL EDITOR DE USUARIOS. ......................................................................................................... 669.10 EL EDITOR DE ROLES. ............................................................................................................... 689.11 EL EDITOR DE PERFILES. ........................................................................................................... 699.12 EL EDITOR DE VÍNCULOS DE BASES DE DATOS. ...................................................................... 70

10. PLANIFICADOR DE TAREAS. .................................................................................................. 71

10.1 CREAR OBJETOS. ....................................................................................................................... 7510.2 EDITAR OBJETOS. ...................................................................................................................... 7610.3 BORRAR OBJETOS. .................................................................................................................... 7610.4 VER INFORMACIÓN SOBRE LOS TRABAJOS FINALIZADOS. ...................................................... 7610.5 VER INFORMACIÓN SOBRE LOS TRABAJOS EN EJECUCIÓN. .................................................... 78

11. DIAGRAMAS. ................................................................................................................................. 79

11.1 CREAR UN DIAGRAMA. ............................................................................................................. 7911.2 ZOOM. ....................................................................................................................................... 8311.3 GUARDAR Y ABRIR UN DIAGRAMA. ......................................................................................... 8311.4 ACTUALIZAR UN DIAGRAMA. ................................................................................................... 8311.5 IMPRIMIR UN DIAGRAMA. ......................................................................................................... 8311.6 EXPORTAR UN DIAGRAMA. ...................................................................................................... 83

12. INFORMES. ..................................................................................................................................... 84

12.1 INFORMES ESTÁNDAR. .............................................................................................................. 8412.2 INFORMES PERSONALIZADOS. .................................................................................................. 8512.3 VARIABLES. .............................................................................................................................. 8512.4 DEFINIR EL DISEÑO DE LOS INFORMES. ................................................................................... 9112.5 LA LIBRERÍA DE ESTILOS. ......................................................................................................... 9712.6 OPCIONES. ................................................................................................................................. 9812.7 EL MENÚ INFORMES. ................................................................................................................ 99

13. GRÁFICOS. .................................................................................................................................... 101

14. PROYECTOS. ................................................................................................................................ 103

14.1 CREAR UN NUEVO PROYECTO. ............................................................................................... 10314.2 GUARDAR UN PROYECTO. ...................................................................................................... 10414.3 AÑADIR ARCHIVOS A UN PROYECTO. .................................................................................... 10414.4 AÑADIR OBJETOS DE LA BASE DE DATOS A UN PROYECTO. ................................................. 10414.5 TRABAJAR CON LOS ELEMENTOS DEL PROYECTO. ................................................................ 104

Page 4: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 4

14.6 COMPILAR UN PROYECTO. ..................................................................................................... 105

15. ELEMENTOS PENDIENTES. ................................................................................................... 107

15.1 CREAR UN ELEMENTO PENDIENTE. ........................................................................................ 10815.2 EDITAR UN ELEMENTO PENDIENTE. ....................................................................................... 10815.3 CERRAR UN ELEMENTO PENDIENTE. ...................................................................................... 10915.4 BORRAR UN ELEMENTO PENDIENTE. ..................................................................................... 109

16. LA LISTA DE CONEXIONES. .................................................................................................. 110

16.1 USAR LA LISTA DE CONEXIONES. ........................................................................................... 11016.2 DEFINIR CARPETAS Y CONEXIONES. ...................................................................................... 112

17. CONEXIONES, VENTANAS, SESIONES Y TRANSACCIONES. ..................................... 115

17.1 LA CONEXIÓN PRINCIPAL ....................................................................................................... 11517.2 CONEXIONES DE LAS VENTANAS ........................................................................................... 11517.3 MODO DE LA SESIÓN. ............................................................................................................. 11617.4 EJECUTAR PL/SQL DEVELOPER EN MODO MULTISESIÓN O MODO DUAL. ......................... 116

18. EXPLORAR OBJETOS DE LA BASE DE DATOS. .............................................................. 117

18.1 UTILIZAR EL EXPLORADOR DE OBJETOS. ............................................................................. 11718.2 CONFIGURAR LOS FILTROS DEL EXPLORADOR DE OBJETOS. ............................................... 12318.3 CONFIGURAR LAS CARPETAS DEL EXPLORADOR DE OBJETOS. ........................................... 124

19. EXPLORADOR ARCHIVOS. .................................................................................................... 127

19.1 CONFIGURAR EL EXPLORADOR DE ARCHIVOS. .................................................................... 12719.2 UTILIZAR EL EXPLORADOR DE ARCHIVOS. ........................................................................... 128

20. PREFERENCIAS. ......................................................................................................................... 131

20.1 ORACLE - CONEXIÓN .............................................................................................................. 13120.2 ORACLE - OPCIONES ............................................................................................................... 13320.3 ORACLE - COMPILADOR. ........................................................................................................ 13420.4 ORACLE - DEPURADOR. ......................................................................................................... 13520.5 ORACLE - SALIDA. .................................................................................................................. 13720.6 ORACLE - TRAZADOR. ............................................................................................................ 13720.7 ORACLE - PERFILADOR. ......................................................................................................... 13820.8 ORACLE - HISTORIAL DE CONEXIONES. ................................................................................ 13820.9 ORACLE - SUGERENCIAS. ....................................................................................................... 14120.10 INTERFACE DE USUARIO - OPCIONES. .................................................................................... 14220.11 INTERFAZ DE USUARIO - BARRA DE HERRAMIENTAS. .......................................................... 14420.12 INTERFAZ DE USUARIO - EXPLORADOR DE OBJETOS. .......................................................... 14420.13 INTERFAZ DE USUARIO - EDITOR. .......................................................................................... 14520.14 INTERFAZ DE USUARIO - FUENTES ......................................................................................... 14820.15 INTERFAZ DE USUARIO - ASISTENTE DE CÓDIGO. ................................................................. 15020.16 INTERFAZ DE USUARIO - CONFIGURACIÓN DEL TECLADO. .................................................. 15120.17 INTERFAZ DE USUARIO - APARIENCIA. .................................................................................. 15120.18 INTERFAZ DE USUARIO - NLS. ............................................................................................... 15320.19 TIPOS DE VENTANAS - VENTANA DE PROGRAMA ................................................................ 15420.20 TIPOS DE VENTANAS - VENTANA DE CONSULTA SQL. ......................................................... 15520.21 TIPOS DE VENTANA - VENTANA DE PRUEBA. ........................................................................ 15820.22 TIPOS DE VENTANAS - PLAN DE EJECUCIÓN. ......................................................................... 15820.23 HERRAMIENTAS - COMPARACIÓN. ........................................................................................ 158

Page 5: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 5

20.24 HERRAMIENTAS - GENERADOR DE DATOS. ........................................................................... 15920.25 HERRAMIENTAS - LISTA DE ELEMENTOS PENDIENTES. ........................................................ 16020.26 HERRAMIENTAS - LISTA DE INSTRUCCIONES EJECUTADAS .................................................. 16020.27 ARCHIVOS - DIRECTORIOS ..................................................................................................... 16020.28 ARCHIVOS - EXTENSIONES. .................................................................................................... 16220.29 ARCHIVOS - FORMATOS. ........................................................................................................ 16220.30 ARCHIVOS - COPIA DE SEGURIDAD. ....................................................................................... 16320.31 ARCHIVOS - HTML/XML. ..................................................................................................... 16420.32 OTROS - IMPRIMIR. ................................................................................................................. 16420.33 OTROS - ACTUALIZACIONES Y NOTICIAS. ............................................................................. 16520.34 ESTABLECER LAS PREFERENCIAS. ......................................................................................... 166

21. HERRAMIENTAS. ....................................................................................................................... 169

21.1 EXPLORADOR DE OBJETOS. ................................................................................................... 16921.2 BUSCAR OBJETOS DE LA BASE DE DATOS. ............................................................................. 16921.3 COMPILAR OBJETOS NO VALIDOS. ......................................................................................... 17021.4 EXPORTAR TABLAS. ................................................................................................................ 17121.5 IMPORTAR TABLAS. ................................................................................................................ 17321.6 EXPORTAR OBJETOS. .............................................................................................................. 17621.7 IMPORTAR TEXTO. .................................................................................................................. 17721.8 IMPORTAR ODBC. .................................................................................................................. 18121.9 GENERADOR DE DATOS. ......................................................................................................... 18321.10 COMPARAR OBJETOS. ............................................................................................................. 18721.11 COMPARAR DATOS ENTRE TABLAS. ...................................................................................... 19021.12 MONITOR DE EVENTOS. .......................................................................................................... 19221.13 MONITOR DE SESIONES. ......................................................................................................... 19321.14 HERRAMIENTAS DEFINIDAS POR EL USUARIO. ...................................................................... 19621.15 ORGANIZADOR DE CASOS DE PRUEBA. .................................................................................. 200

22. EL EDITOR. .................................................................................................................................. 205

22.1 FUNCIONES DE SELECCIÓN. .................................................................................................... 20522.2 SELECCIÓN DE COLUMNAS. .................................................................................................... 20522.3 ASISTENTE DE CÓDIGO. .......................................................................................................... 20522.4 HISTORIAL DE INSTRUCCIONES. ............................................................................................. 20722.5 FORMATO ESPECIAL. .............................................................................................................. 20722.6 AYUDA SENSIBLE AL CONTEXTO. .......................................................................................... 20922.7 MENÚ CONTEXTUAL DE LOS OBJETOS DE LA BASE DE DATOS. ............................................ 20922.8 PLAN DE EJECUCIÓN. .............................................................................................................. 20922.9 MACROS. ................................................................................................................................. 20922.10 MARCADORES. ........................................................................................................................ 21022.11 MARCADOR DE COLOR. .......................................................................................................... 21122.12 CONTENIDO DEL CÓDIGO. ...................................................................................................... 21122.13 JERARQUÍA DEL CÓDIGO. ....................................................................................................... 21222.14 MOSTRAR / OCULTAR CÓDIGO. ............................................................................................. 21322.15 DIVISIÓN DEL EDITOR DE CÓDIGO. ........................................................................................ 21422.16 NAVEGACIÓN MEDIANTE VÍNCULOS. .................................................................................... 21422.17 BOTONES DE NAVEGACIÓN. ................................................................................................... 21522.18 REFACTORIZACIÓN. ................................................................................................................ 21522.19 BARRA DE BÚSQUEDA. ........................................................................................................... 216

23. EL EDITOR DE DATOS. ............................................................................................................ 218

23.1 EDITAR ARCHIVOS DE TEXTO. ................................................................................................ 219

Page 6: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 6

23.2 EDITAR DATOS EN FORMATO RTF. ........................................................................................ 21923.3 EDITAR DATOS EN FORMATO XML. ...................................................................................... 21923.4 EDITAR HTML ....................................................................................................................... 22023.5 EDITAR IMÁGENES. ................................................................................................................. 22123.6 EDITAR DATOS EN FORMATO HEXADECIMAL. ...................................................................... 22123.7 CARGAR UN VISOR O UN EDITOR EXTERNO. .......................................................................... 222

24. CONSTRUCTOR DE CONSULTAS. ........................................................................................ 224

24.1 CREAR UNA NUEVA CONSULTA DE SELECCIÓN. ................................................................... 22424.2 MODIFICAR UNA CONSULTA DE SELECCIÓN EXISTENTE. ..................................................... 22724.3 MANIPULAR LA DEFINICIÓN DE LA CONSULTA. .................................................................... 22724.4 OPCIONES DEL CONSTRUCTOR DE CONSULTAS. .................................................................... 22824.5 COMPLEMENTOS DEL CONSTRUCTOR DE CONSULTAS. ....................................................... 229

25. PL/SQL BEAUTIFIER. ................................................................................................................ 231

25.1 CONFIGURAR PL/SQL BEAUTIFIER. ...................................................................................... 23125.2 DEFINIR LAS REGLAS DE PL/SQL BEAUTIFIER. .................................................................... 23125.3 UTILIZANDO PL/SQL BEAUTIFIER. ....................................................................................... 23325.4 ELIMINANDO EL FORMATO APLICADO POR PL/SQL BEAUTIFIER. ...................................... 233

26. PLANTILLAS. ............................................................................................................................... 234

26.1 LA VENTANA DE PLANTILLAS. ............................................................................................... 23426.2 UTILIZAR LAS PLANTILLAS. ................................................................................................... 23526.3 CREAR Y MODIFICAR PLANTILLAS. ........................................................................................ 236

27. LISTA DE VENTANAS. .............................................................................................................. 240

28. BARRAS DE HERRAMIENTAS. .............................................................................................. 241

29. AUTORIZACIONES. ................................................................................................................... 243

29.1 HABILITAR EL SISTEMA DE AUTORIZACIONES. ..................................................................... 24329.2 DEFINIR AUTORIZACIONES. .................................................................................................... 24329.3 DESHABILITAR EL SISTEMA DE AUTORIZACIONES. ............................................................... 245

30. SISTEMA DE ARCHIVOS DE ORACLE. ............................................................................... 246

30.1 ORGANIZADOR OFS. .............................................................................................................. 24630.2 UTILIZAR OFS. ....................................................................................................................... 248

31. SISTEMA DE AYUDA. ................................................................................................................ 250

31.1 ARCHIVOS DE AYUDA MS HELP. ........................................................................................... 25031.2 MANUALES HTML. ................................................................................................................ 250

32. PERSONALIZAR PL/SQL DEVELOPER. .............................................................................. 254

32.1 PREFERENCIAS. ....................................................................................................................... 25432.2 DISPOSICIÓN DE LAS VENTANAS. ........................................................................................... 25432.3 DOCUMENTACIÓN EN LÍNEA. ................................................................................................. 25432.4 PARÁMETROS DE LA LÍNEA DE COMANDOS. ......................................................................... 25632.5 SQL, PL/SQL Y PALABRAS RESERVADAS Y COMANDOS. .................................................... 25932.6 COMPLEMENTOS. .................................................................................................................... 259

Page 7: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 7

1. Introducción. PL/SQL Developer es un entorno integrado de desarrollo (IDE) que le permite desarrollar unidades de programa almacenadas en un servidor de bases de datos Oracle. Utilizando PL/SQL Developer puede crear la parte servidor de sus aplicaciones cliente/servidor. En el mejor de los casos, hasta ahora, ha trabajado de esta forma: • Utilizando un editor de texto para escribir las unidades de programa (procedimientos, funciones,

disparadores, etc.). • Utilizando Oracle SQL*Plus para compilar su código fuente. • En caso de producirse un error durante el proceso de compilación, tiene que localizar en que parte

del código fuente se ha producido el error, corregirlo y volver a SQL*Plus para compilar el código de nuevo. Teniendo que seguir todos estos pasos únicamente para corregir un error y repetir el proceso por cada nuevo error que se encuentre durante el proceso de compilación.

• Utilizar SQL*Plus o la parte cliente de su aplicación para probar las unidades de programa. • En caso de que se produzca un error en tiempo de ejecución, tiene que localizar la causa del

problema y corregirlo. • Utilizando la herramienta Explain Plan o tkprof para optimizar sus instrucciones SQL. • Para ver o modificar otros objetos y datos en su base de datos, utiliza SQL*Plus u otra

herramienta. Estas tareas – editar, compilar, corregir, probar, depurar, optimizar y consultar – pueden realizarse sin abandonar el entorno de desarrollo de PL/SQL Developer. Además, PL/SQL Developer le proporciona otras herramientas que le pueden resultar útiles durante su trabajo diario.

Page 8: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 8

Edición. PL/SQL Developer, al igual que otros entornos de desarrollo, asume que almacena su código fuente en una unidad de disco. Otras herramientas de desarrollo solo le permiten editar el código directamente de su base de datos, sin permitir la utilización de ningún sistema de control de versiones. El código fuente generado puede ejecutarse mediante la herramienta SQL*Plus de Oracle, con lo que puede ejecutarlo en otra plataforma sin necesidad de emplear PL/SQL Developer. Puede editar todos los archivos que quiera gracias a la interfaz MDI (Multiple Document Interface) de PL/SQL Developer. El editor le ofrece un amplio abanico de ayuda al programador. Existe ayuda sensible al contexto para las instrucciones de SQL y PL/SQL. A todos nos ha ocurrido alguna vez: empieza a teclear substr, pero ha olvidado el significado exacto de los parámetros. Simplemente con pulsar la F1, aparecerá el tema exacto del manual SQL Reference de Oracle. Las tablas, vistas y unidades de programa pueden describirse mediante una ventana desplegable desde el editor. El asistente de código integrado en el editor, le muestra automáticamente la información de los objetos de la base de datos a medida que va tecleando sus nombres, permitiéndole explorar y seleccionar los elementos desde su descripción. Si dispone de paquetes de código y tipos muy grandes, el editor de programas le proporciona un árbol de navegación donde se muestra el contenido del código para una navegación más rápida, permitiéndole el uso de botones para moverse hacia delante y hacia atrás, mostrar u ocultar código y la navegación mediante vínculos. El constructor de consultas le permite crear consultas de selección de forma grafica. Las plantillas extensibles de PL/SQL Developer le permiten insertar código SQL y PL/SQL en sus programas. Todos los editores resaltan de forma apropiada la sintaxis del código SQL, PL/SQL y SQL*Plus, para hacer la lectura del código más legible.

Compilar y corregir errores. Desde el editor puede compilar un archivo de código. En caso de que se produzca un error de compilación el programa le llevará automáticamente a la línea de código adecuada. Todos los errores de compilación se muestran en una lista situada en la parte inferior del editor. Esta lista puede incluir sugerencias para la codificación de código PL/SQL que pueden ayudarle a localizar errores comunes de programación o violaciones en la nomenclatura empleada. Puede compilar un archivo sin guardarlo, con lo que puede explorar formas alternativas de resolver un problema. El editor mantiene el control sobre todos los cambios que ha realizado en el archivo sin guardarlo o compilarlo.

Probar unidades de programa. Para probar sus unidades de programa, puede escribir archivos de prueba. El cuerpo del archivo de prueba contiene bloques de código PL/SQL en los cuales puede programar el código que desea probar. Cualquier variable que quiera utilizar en el boque puede ser declarada, asignada a un valor de entrada y vista después de la ejecución. Cuando ejecute un archivo de prueba, puede ocurrir que se produzca un error en tiempo de ejecución. En este caso, PL/SQL Developer le permite ver el contenido de la pila errores. Cada línea de código de la pila de errores que este relacionada con un error en tiempo de ejecución se resaltará, con lo que puede volver fácilmente al error causante del problema. Si utiliza la versión 7.3.4 de Oracle o una versión posterior puede utilizar el depurador integrado de PL/SQL Developer. Puede ejecutar paso a paso el código, establecer puntos de interrupción, ver/establecer variables, ver la pila de llamadas, etc. En la versión 8i de Oracle (y superiores) puede utilizar de forma adicional el paquete dbms_trace para controlar los eventos seleccionados de una ejecución de un programa. Esto le ayudará a analizar el flujo del programa y las excepciones. Los resultados de las llamadas a los paquetes dbms_output y PL/SQL Web Toolkit se muestran de forma automática en la correspondiente pestaña de la ventana de pruebas.

Page 9: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 9

Para realizar pruebas de regresión puede utilizar el Organizador de casos de pruebas para ejecutar y verificar rápidamente un conjunto de archivos de prueba.

Optimizar el código. Para optimizar las instrucciones de código SQL en sus unidades de programa, la herramienta Explain Plan de Oracle puede serle de gran ayuda. Además se encuentra integrada en PL/SQL Developer. Simplemente con seleccionar la instrucción deseada y presionar F5, PL/SQL Developer le presenta el plan de ejecución de la consulta en una ventana separada Explain Plan. Puede modificar la instrucción para optimizar su plan de ejecución y copiarlo nuevamente. También puede ver las estadísticas sobre las instrucciones SQL y las unidades de programa PL/SQL. Esas estadísticas pueden incluir el tiempo transcurrido, tiempo de procesador consumido, número de lecturas lógicas, número de lecturas físicas, número físico de escrituras, etc. Oracle8i introduce un perfilador de código PL/SQL que le permite optimizar la cantidad de recursos que consume su código PL/SQL. Por cada línea de código PL/SQL ejecutada puede determinar el tiempo de ejecución y cuantas veces se ha ejecutado dicha línea.

Consultar datos. Para consultar los datos en la base de datos, puede utilizar la ventana de consulta SQL para ejecutar cualquier instrucción SQL. El historial de todas las instrucciones ejecutadas se mantienen en memoria. Los resultados de cualquier consulta se muestran de forma conveniente en una rejilla separada en la que acto seguido podrá insertar, actualizar o borrar registros. La rejilla de resultados puede ser utilizada adicionalmente para filtrar consultas, con lo que puede filtrar fácilmente la información que necesite. Para consultar los objetos de la base de datos puede utilizar el Explorador de Objetos. Todas las propiedades relevantes de los objetos de la base de datos como tablas, vistas, secuencias, procedimientos, funciones, paquetes, tipos, triggers y dependencias entre objetos. El Explorador de Objetos utiliza una vista en modo árbol, similar a la utilizada en el explorador de Windows, para una exploración más sencilla.

Ejecutar archivos SQL. PL/SQL Developer incluye una ventana de comandos que puede ser utilizada para ejecutar archivos SQL o ejecutar instrucciones. Adicionalmente puede ejecutar comandos similares a los comandos empleados en la herramienta SQL*Plus de Oracle.

Crear y modificar la definición de las tablas. Puede crear y modificar fácilmente la definición de las tablas sin utilizar ninguna instrucción SQL. Simplemente rellenando la información de definición en un cuadro de diálogo puede modificar columnas, restricciones, índices, privilegios, información sobre almacenamiento, comentarios, etc. Puede aplicar esta definición en la base de datos o ver, modificar y guardar la instrucción SQL resultante.

Diagramas. Para visualizar los objetos de la base de datos de su aplicación o proyecto y sus relaciones, puede crear diagramas. Un diagrama puede utilizarse con el propósito de documentar, pero también como un espacio de trabajo para utilizar con objetos relacionados entre sí.

Informes. PL/SQL Developer viene con conjunto predefinido de informes estándar, basados en el estándar HTML. Puede ver, imprimir o guardar esos informes como archivos HTML desde el propio PL/SQL Developer.

Page 10: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 10

También puede crear sus propios informes y acceder a ellos fácilmente desde el menú informes de la ventana principal de PL/SQL Developer.

Gráficos. La Ventana de Gráficos puede ejecutarse desde una Ventana de Consulta o desde una Ventana de Informes para obtener una representación grafica de los datos consultados.

Proyectos. Para organizar su trabajo puede utilizar el administrador de proyectos de PL/SQL Developer. Un proyecto consiste en un conjunto de archivos y objetos de base de datos. Puede acceder fácilmente a esos objetos a través de la ventana de elementos del proyecto y compilarlos mediante un simple clic.

Herramientas. PL/SQL Developer le proporciona diversas herramientas que pueden resultarle útiles durante el proceso de desarrollo. Entre ellas se incluyen por ejemplo, herramientas para la búsqueda de objetos dentro la base de datos, permitiéndole buscar un texto concreto dentro del código de los objetos de la base de datos. PL/SQL Developer también le proporciona herramientas para compilar objetos que han sido marcados como no validos durante el proceso de desarrollo, así como herramientas para importar, exportar y generar datos, que le permitirán crear conjuntos de datos para utilizar en futuras pruebas. También contiene herramientas para comparar las definiciones de los objetos de dos usuarios, un monitor de sesiones, un monitor de eventos y un planificador de tareas DBMS que le permitirá gestionar los distintos trabajos y objetos del planificador de Oracle. De forma adicional a estas herramientas, PL/SQL Developer le permite definir sus propias herramientas e incluirlas en el menú herramientas de PL/SQL Developer.

Page 11: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 11

2. Instalación. Existen dos formas de instalar PL/SQL Developer: • Instalación en modo cliente. En este caso usted instala el software localmente en cada una de las

estaciones de trabajo en las que va a utilizar el programa. • Instalación en modo servidor. En este caso usted instala el software en el servidor, en un directorio

que sea accesible a cada estación de trabajo en la que se utilizará el programa. Los dos tipos de instalación se explican en este capítulo:

2.1 Requisitos del sistema. PL/SQL Developer es una aplicación diseñada para ejecutarse sobre la plataforma Windows, a partir de Windows 2000 o una versión superior, y es compatible con Oracle Server 7.0 o una versión superior. Para poder conectar con una base de datos Oracle, PL/SQL Developer requiere la versión de 32-bits de Oracle Client 7.0. Si usted utiliza la versión de 64-bits de Oracle Client u Oracle Server, necesitará instalar adicionalmente la versión de 32-bits de Oracle Client.

2.2 Instalar PL/SQL Developer en una estación de trabajo. Para instalar PL/SQL Developer localmente en una estación de trabajo, ejecute el programa de instalación desde el soporte entregado. Tras hacerlo, aparecerá el siguiente cuadro de diálogo;

Puede seleccionar el directorio de destino para los archivos de programa, la carpeta de inicio, la situación del acceso directo de PL/SQL Developer. Después de presionar el botón Finalizar en la última página del asistente de instalación, se copiarán los archivos de programa y se crearán los accesos directos.

2.3 Instalar PL/SQL Developer en un servidor. Para una licencia multiusuario puede crear un sólo archivo de instalación de PL/SQL Developer en el servidor y permitir el acceso a todos los usuarios con licencia. Para hacer esto debe ejecutar el programa en el servidor de la misma forma descrita en la sección anterior. Debe seleccionar un directorio compartido con todos los usuarios que utilizarán el software. Cuando PL/SQL Developer se ejecuta por primera vez en una estación de trabajo, este tipo de instalación se detecta automáticamente, y la instalación local se completa por si misma sin que el usuario reciba ningún tipo de notificación: PL/SQL Developer puede instalarse en un directorio donde los usuarios sólo tengan permisos de lectura.

2.4 Instalación desatendida. De forma adicional al proceso de instalación descrito anteriormente, puede crear un archivo para realizar una instalación desatendida. Lea el archivo install.txt para obtener información más detallada sobre este proceso.

Page 12: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 12

2.5 Desinstalar PL/SQL Developer. Si por cualquier motivo desea desinstalar PL/SQL Developer, puede hacerlo directamente desde el módulo Añadir/Quitar Programas del Panel de control.

Page 13: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 13

3. Inicio de sesión contra una base de datos Oracle. Después de iniciar PL/SQL Developer por primera vez, se le pedirá que inicie una sesión contra una base de datos Oracle:

Si cancela este cuadro de diálogo de inicio de sesión podrá continuar sin establecer una conexión contra una base de datos de Oracle. Al hacer esto se desactivarán todas las funciones de PL/SQL Developer que requieran una conexión contra una base de datos, tales como las funciones de compilación o las de consulta de datos, etc. Posteriormente, podrá conectar el entorno de desarrollo de PL/SQL Developer para poder utilizar estas funciones. Después de introducir su nombre de usuario, su contraseña y la base de datos a la que desea conectar haca clic en el botón Aceptar o pulse la tecla <Intro>, se conectará a la base de datos y se mostrará el entorno de desarrollo de PL/SQL Developer. Desde este momento, podrá escribir programas en lenguaje PL/SQL, realizar diferentes pruebas de estos programas, realizar consultas contra la base de datos, etc... tal y como se describe en capítulos posteriores. Si tiene múltiples bases de datos o varias cuentas en sus bases de datos, puede crear conexiones adicionales si utiliza el elemento de menú Inicio de sesión desde el menú Sesiones, o mediante el botón de Inicio de sesión que se encuentra la barra de herramientas principal de PL/SQL Developer. Cada conexión adicional se añadirá a la lista de conexiones (ver capítulo 16), para que posteriormente, pueda para ver y administrar todas sus conexiones. La próxima vez que inicie PL/SQL Developer puede iniciar la sesión seleccionando la conexión desde la lista de conexiones.

Posibles problemas durante la utilización del cuadro de diálogo de inicio de sesión El cuadro de diálogo de inicio de sesión puede fallar por las siguientes razones: 1. Por no tener el software cliente de Oracle instalado. Este es un requisito necesario para que

PL/SQL Developer funcione correctamente. Por favor, instale el software cliente de Oracle y vuelva a intentar la conexión contra sus bases de datos.

2. Es probable que tenga más de una instalación del software cliente de Oracle. En este caso, es probable que PL/SQL Developer haya elegido un cliente de Oracle que no sea apropiado. Cierre el cuadro de diálogo de inicio de sesión y diríjase al menú Herramientas y seleccione el elemento del menú Preferencias, una vez que se encuentre en la ventana de Preferencias diríjase a la sección Oracle/Conexión, seleccione el archivo correcto de inicio de Oracle en la lista de selección, reinicie PL/SQL Developer y vuelva a intentar la conexión contra sus bases de datos.

3. Es probable que utilice un cliente de Oracle Instant, pero que no haya establecido todas las variables de entorno necesarias: • PATH - Esta variable debe incluir el directorio del de Oracle Instant (el directorio donde se encuentra el archivo oci.dll). • TNS_ADMIN - Esta variable debe apuntar obligatoriamente al directorio donde se encuentra el archivo tnsnames.ora.

Page 14: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 14

• NLS_LANG - Esta variable define el idioma, ubicación y conjunto de caracteres para el cliente.

Page 15: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 15

4. Escribir programas En una base de datos de Oracle, puede distinguir 5 tipos distintos de unidades de programa almacenadas, funciones, procedimientos, paquetes, tipos y disparadores. El editor de programas le permite crear y modificar estos cinco tipos de unidades de programa de una manera uniforme.

4.1 Crear un programa Para crear un nuevo programa, presione el botón Nuevo situado en la barra de herramientas y seleccione el elemento Ventana de programa y, por ejemplo, el sub elemento Function. Acto seguido se nos preguntará por distintas variables que son importantes para este tipo de programa. En nuestro caso, estamos creando una función, y necesita introducir el nombre de la misma, sus parámetros y el tipo de datos que devuelve:

Como indica el título del cuadro de diálogo, esta información proviene de una plantilla. PL/SQL Developer proporciona diversas plantillas estándar, que puede modificar para adaptarlas a sus necesidades. También puede definir nuevas plantillas. Podrá encontrar información importante sobre la definición de plantillas en el capítulo 26. Después de introducir las variables necesarias y presionar el botón Aceptar la ventana del editor de programas aparecerá con la plantilla de la función en ella. Cada programa que cree en el editor de programas, debe comenzar con la ya familiar sintaxis del lenguaje SQL ‘create or replace’. En este caso estamos creando la función ‘even’ y el código fuente podría parecerse al que se muestra a continuación:

En la parte izquierda de la pantalla puede ver la herramienta de contenido del código, que muestra la estructura de la unidad de programa. Este sistema resulta de utilidad, cuando navega por grandes unidades de programa como el cuerpo de un paquete o el cuerpo de los distintos tipos. Esta característica se describe con más detalle en el capítulo 22.12. En la parte superior del editor puede ver la jerarquía del código, que muestra la jerarquía desde la posición del cursor. En este caso le informa de que se encuentra situado en una Instrucción dentro de la Secuencia de instrucciones de la Función. Para programas complejos, esto puede resultarle de utilidad

Page 16: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 16

para ver exactamente, donde se encuentra situado, y puede ayudarle a seleccionar ciertas porciones de código PL/SQL. Esta característica se describe con más detalle en el capítulo 22.13. Un programa puede contener más de una unidad de programa. Si hace clic con el botón derecho del ratón sobre la ventana del editor de programas, aparecerá un menú contextual, que le permite añadir o eliminar una unidad de programa. Puede cambiar entre las unidades de programa seleccionando la pestaña apropiada en la parte superior de la ventana. De esta forma puede mantener juntas las unidades de programa en un sólo archivo de código. Las especificaciones y cuerpos de los paquetes de la base de datos son un buen ejemplo de esta característica. Una unidad de programa debería colocarse después de cualquier otra unidad de programa en el archivo de código a la que haga referencia. Si crea una función llamada ‘odd’ que hace referencia a una función creada con anterioridad llamada ‘even’, el editor de programa debería parecerse a:

4.2 Guardar un programa. Puede guardar un programa si presiona el botón Guardar situado en la barra de herramientas. Aparecerá un cuadro de diálogo donde podrá ver las extensiones estándar para los programas.

Tipo de programa Extensión Función. .fnc Procedimiento. .prc Especificación y cuerpo de un paquete. .pck Especificación de un paquete. .spc Cuerpo de un paquete. .bdy Especificación y cuerpo de un tipo. .typ Especificación de un tipo. .tps Cuerpo de un tipo. .tpb Disparador. .trg Código fuente Java. .jsp

Puede cambiar estas extensiones a través de las opciones que se describen en el capítulo 20.28. Si sólo existe una función, procedimiento, paquete, tipo, disparador o fuente java en el programa, el nombre del archivo se hereda automáticamente del nombre y tipo de la unidad de programa. Después de guardar el archivo, su nombre se mostrará en la ventana de título. El programa almacenado tiene un formato compatible con Oracle SQL*Plus. Como ejemplo, el archivo de código que contiene las funciones ‘odd’ y ’even’ debe parecerse al siguiente:

Page 17: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 17

create or replace function Even(Value in integer) return boolean is Result boolean; begin

-- Check if there is a remainder after dividing by 2 Result := (Value mod 2 = 0);

return(Result); end Even; / create or replace function Odd(Value in integer) return boolean is Result boolean; begin Result := not Even(Value); return(Result); end Odd; /

Cuando ejecute este archivo mediante la herramienta SQL*Plus de Oracle, se crearán ambas funciones.

4.3 Modificar un programa. Puede abrir un archivo guardado previamente si presiona el botón Abrir situado en la barra de herramientas y presionando posteriormente el elemento Programa. Si el archivo se ha utilizado recientemente, puede abrirlo si selecciona el elemento Archivos recientes desde el menú Archivo o si hace clic con el botón izquierdo del ratón en la flecha cercana al botón Abrir situado en la barra de herramientas. Cuando comience a editar el documento, se activará un indicador de color azul en la parte inferior de la ventana. Esto indica que el archivo se ha modificado, pero que no se ha guardado todavía. Si el indicador es de color amarillo, indica que el archivo se ha modificado pero todavía no se ha realizado el proceso de compilación.

4.4 Compilar un programa. Puede compilar un programa si presiona el botón Ejecutar situado en la barra de herramientas. Todas las unidades del programa se compilan, empezando por la primera, independientemente de la unidad de programa que se encuentra actualmente seleccionada. Cuando ocurre un error de compilación finaliza el proceso y el editor se posiciona en la línea de código que ha provocado el error:

Si hay más de un error y desea corregirlos, puede hacer clic en el siguiente mensaje de error en la parte inferior del editor de programas para ir a la posición del error. Si ha configurado PL/SQL Developer para utilizar los manuales HTML descritos en el capítulo 31.2, puede hacer doble clic sobre un error de compilación para mostrar el párrafo correspondiente del manual Oracle Error Messages. La lista de errores de compilación puede contener sugerencias del compilador. Las sugerencias del compilador no provocan que el proceso de compilación falle, pero indican un problema que podría causar un error en tiempo de ejecución (como el realizar una comparación con un valor nulo, una

Page 18: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 18

función que no devuelva ningún valor o un parámetro sin utilizar). Para más información acerca de las sugerencias del compilador, vea el capítulo 20.19. Si se muestra un mensaje de error en una ventana emergente después del proceso de compilación, significa que la instrucción ha fallado sin compilar el código. El mensaje de error debería explicar la causa del mismo. Sí por ejemplo, obtiene un error de sintaxis en una instrucción de tipo “create o replace”, se mostrará el siguiente mensaje "ORA-00900: Invalid SQL statement". Nota: Si está utilizando Oracle 7.2 o una versión anterior, los errores de compilación en los disparadores de la base de datos (triggers) siempre se mostrarán en un mensaje emergente. Sólo a partir de la versión 7.3 de Oracle, los errores de compilación en los disparadores de la base de datos (triggers) se notifican de la misma forma que los procedimientos, funciones, paquetes y tipos.

4.5 Opciones del compilador. Para establecer las diferentes opciones del compilador puede presionar el botón Opciones del compilador, situado en la barra de estado de PL/SQL Developer. Al presionar dicho botón PL/SQL Developer abrirá la ventana de Opciones del compilador, donde podrá establecer las diferentes opción que PL/SQL Developer le ofrece (vea el capítulo 20.3).

Page 19: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 19

5. Probar programas. Después de compilar correctamente un programa, necesitará probarlo. Para hacer esto puede utilizar los archivos de prueba de PL/SQL Developer. Un archivo de prueba le permite ejecutar una o más unidades de programa, definir variables de tipo IN, OUT o IN OUT así como ver y asignar valores a las variables. Si ocurre un error durante la ejecución de un archivo de prueba, puede ver el código de las unidades de programa que están involucradas en el error. Si utiliza Oracle 7.3.4 o una versión posterior puede utilizar el depurador de PL/SQL Developer. Puede recorrer el código, crear puntos de interrupción, ver y establecer variables, ver la pila de llamadas, etc.

5.1 Crear un archivo de prueba. Existen dos formas de crear un archivo de prueba. Puede hacer clic con el botón derecho del ratón sobre una unidad de programa (una función de la base de datos, un procedimiento, una función empaquetada o un procedimiento) en el Explorador de Objetos y seleccionar el elemento Probar. Esto creará un nuevo archivo de prueba con variables para los parámetros y para el resultado. Para el objetivo de este manual, vamos a crear un archivo de prueba de forma manual desde el principio. Para crear un nuevo archivo de prueba, presione el botón Nuevo situado en la barra de herramientas y seleccione el elemento Ventana de prueba. Ahora puede teclear un bloque de código PL/SQL con el texto declare…begin… end en el cuerpo del archivo de prueba. Como ejemplo vamos a probar el paquete employee, en el que crearemos algunas funciones de las tablas de demostración employee/departament. La función deptname devuelve el nombre del departamento de un empleado, y puede probarse utilizando el siguiente bloque de código PL/SQL:

El bloque de código PL/SQL contiene una sencilla llamada a la función que queremos probar, y utiliza las variables deptname y empno. Vamos a asignar un valor a la variable empno, y después de la ejecución, comprobar el valor de la variable deptname, para comprobar si la función devuelve el valor correcto. Si coloca dos puntos como prefijo de las variables, pueden declararse en la parte inferior de la ventana de prueba:

Page 20: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 20

El botón Escanear variables en el código situado en la parte superior izquierda de la lista de variables puede utilizarse para copiar rápidamente las variables desde el código. Después de esto, el tipo de datos integer y el valor 7369 se asigna a la variable empno. Ahora esta preparado para ejecutar el archivo. Puede declarar las variables localmente en la parte declarativa de un bloque PL/SQL, pero no podrá modificar o ver los valores de esas variables. Una ventaja de las variables locales es que puede utilizar tipos de registros, tablas PL/SQL, tipos, etc.

5.2 Ejecutar un archivo de prueba. Para ejecutar un archivo de prueba, presione el botón Ejecutar situado en la barra de herramientas. Después de la ejecución, se actualizan los valores de las variables. Cualquier variable cuyo valor haya cambiado se muestra con el color de fondo de la celda en amarillo:

El resultado de la ejecución es ‘RESEARCH’, con lo que es evidente que la función devuelve el resultado correcto. En la parte inferior de la ventana, se muestra el tiempo de ejecución. Esta información puede utilizarse para optimizar el rendimiento de su código. Con el objetivo de optimizar su código puede utilizar las estadísticas de ejecución del bloque de código PL/SQL seleccionando la pestaña estadísticas. Puede crear un informe del perfilador por cada línea de código PL/SQL ejecutado si presiona el botón Crear informe del perfilador antes de ejecutar el archivo. Después de la ejecución puede cambiar a la pestaña Perfilador para ver el resultado del informe. Las estadísticas y los informes del perfilador se explican en los capítulos 6.2 y 6.3 respectivamente. Puede detener la ejecución de un archivo de prueba si presiona el botón Cancelar, acción que resulta especialmente útil cuando un programa entra en un bucle infinito, o la ejecución del archivo de prueba consume más tiempo de lo esperado. Observe que el hecho de presionar el botón Cancelar no siempre será efectivo. Si por ejemplo, un programa se encuentra esperando por un registro o tabla bloqueada, no responderá a la señal del botón Cancelar.

Page 21: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 21

Después de ejecutar un archivo de prueba, alguna de las unidades de programa ejecutadas podría haber iniciado una transacción. Los botones Commit y Rollback situados en la barra de herramientas se encontrarán habilitados si este es el caso. Para más información acerca de las transacciones, vea el capítulo 17.

5.3 Tipos de variables. La lista de tipos en la sección de variables de la ventana de prueba contiene todos los tipos que pueden utilizarse. Las características de cada uno de esos tipos se explican en este capítulo.

Tipo de dato Descripción

Integer Puede utilizarse para almacenar valores numéricos comprendidos entre -2^32 y 2^32 - 1.

Flota Puede utilizarse para almacenar otros valores numéricos.

String Equivale a un tipo de datos varchar2 en una tabla. Puede contener 2000 caracteres (Oracle7) o 4000 caracteres (Oracle8). El valor de la celda de este tipo de datos, posee un botón situado dentro de la misma, que llama al editor de datos de forma que pueda ver y modificar cadenas de texto multi-línea fácilmente.

Date Tipo de datos para almacenar fechas y horas.

Long Este tipo de datos no representan ningún valor en la rejilla, simplemente muestra el texto <Long>.Presione el botón situado dentro de la celda para llamar al editor de texto.

Long Raw Si presiona el botón situado dentro de la celda de un valor Long Raw llamará a la herramienta de importación/exportación de datos, permitiéndole cargar o guardar los contenidos de esta variable.

Cursor Ese tipo de datos puede utilizarse cuando necesite una variable de tipo cursor en código PL/SQL. Después de ejecutar un archivo de prueba, puede presionar el botón situado dentro de la celda para ver el conjunto de resultados en una ventana de consulta SQL.

CLOB, BLOB & BFile

Este tipo de variables deben inicializarse en el servidor antes de que pueda ver sus datos. El tipo de datos CLOB llamará al editor de texto, y los tipos de dato BLOB y BFILE llamarán a la herramienta de importación/exportación.

PL/SQL String Utilice este tipo de datos para valores varchar2 de hasta 32000 caracteres.

Char Cadena de longitud fija (Se rellena con espacios en blanco).

Substitution Las variables de sustitución pueden utilizarse sin la restricción de las variables de acoplamiento. El nombre de la variable en el bloque de código PL/SQL se sustituye por su valor en el texto del código antes de que sea enviado al servidor.

Temporary CLOB & BLOB

Pueden contener datos antes de que se pasen a través de un archivo de prueba.

Variables de tipo Boolean. Cuando seleccione un tipo de datos en la lista de tipos, verá que falta el tipo de datos Boolean. Esto se debe a que SQL*Net no soporta este tipo de datos. Para utilizar una variable de tipo Boolean, puede declararla como integer y utilizar las funciones sys.diutil.bool_to_int y sys.diutil.int_to_bool que le

Page 22: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 22

proporciona Oracle. Estas funciones convierten null/true/false y null/0/1. Si usa la función Probar en el Explorador de Objetos, esta conversión se generará de forma automática.

5.4 Guardar archivos de prueba. Para guardar un archivo de prueba, presione el botón Guardar situado en la barra de herramientas. El cuadro de diálogo utiliza la extensión .tst como extensión por defecto para los archivos de prueba, aunque puede cambiar la extensión por defecto mediante una opción que se describe en el capítulo 20.28. El bloque de código PL/SQL, todas las variables (nombre, tipo y valor), así como inspecciones de depuración se guardarán (vea el capítulo 5.10). Si guarda un archivo de prueba, podrá volver a probar fácilmente una unidad de programa si la modifica posteriormente. Puede abrir un archivo de prueba guardado con anterioridad si presiona el botón Abrir situado en la barra de herramientas y selecciona el elemento Archivo de prueba, creándose de esta forma una nueva ventana de prueba. De forma alternativa puede hacer clic con el botón derecho del ratón sobre una ventana de prueba creada anteriormente y seleccionar el elemento Cargar, abriéndose un archivo de prueba en la ventana existente.

Guardar como archivo de SQL*Plus. De forma alternativa puede guardar un archivo de prueba en un formato compatible con SQL*Plus. Esto le permitirá ejecutar el archivo en un entorno donde PL/SQL Developer no se encuentre disponible (ejemplo Servidor Unix). Para hacer esto, seleccione Archivo SQL*Plus (*.SQL) como tipo de archivo en el cuadro de diálogo. El siguiente código fuente generado en el capítulo previo se guardará de la siguiente forma:

Nota: No puede volver a abrir un archivo SQL*Plus como archivo de prueba. Si quiere utilizarlo de nuevo en una ventana de pruebas asegúrese de guardarlo como un archivo de prueba.

5.5 Capturar errores en tiempo de ejecución. Cuando una unidad de programa causa un error en tiempo de ejecución, PL/SQL Developer le preguntará si desea ver la pila de errores. De esta forma puede encontrar rápidamente la causa del

rem PL/SQL Developer Test Script set feedback off set autoprint off rem Declare variables variable result varchar2(2000) variable p_empno number rem Set variables begin :result := null; :p_empno := 7369; end; / rem Execute PL/SQL Block begin :result := employee.deptname(:p_empno); end; / rem Print variables print result print p_empno

Page 23: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 23

mismo. Si hubiese un error en nuestra función deptname, la ventana de la pila de errores se mostraría de la siguiente forma:

En la parte superior puede ver una pestaña por cada unidad de programa involucrada en un error en tiempo de ejecución. Las unidades de programa se han llamado siguiendo un orden de derecha a izquierda. Puede buscar a través de las pestañas para encontrar fácilmente el flujo de programa que ha llevado al error. En este caso se muestra que el archivo de prueba ha realizado una llamada a la función employee.deptname. Es obvio que puede ser más complicado, incluso a través de disparadores. Nota: Si está utilizando Oracle Server 7.2 o una versión inferior, el código del disparador no se mostrará en la ventana de la pila de errores. La pila de errores resalta cada línea que se encuentra involucrada en un error en color rojo. Para la última unidad de programa en la pila esta es la línea que ha causado el error. Para todas las demás unidades de programa esta línea es la línea desde donde se realizó la llamada a la siguiente unidad de programa.

5.6 Estado de los paquetes y de las sesiones Java. Cuando está editando, compilando y probando paquetes, el estado de los paquetes será descartado por Oracle después de cada proceso de compilación. Todas las variables globales en un paquete serán reseteadas y el bloque de inicio se ejecutará otra vez. Esto puede llevar a errores inesperados. Cuando PL/SQL Developer detecta esta situación, un mensaje de error aparece en la barra de estado de la ventana de prueba: "Warning: ORA-04068: Existing state of packages has been discarded". De forma idéntica, si edita o compila un código fuente Java, cualquier estado de sesión se borrará. PL/SQL Developer también detectará esta situación y mostrará un mensaje en la barra de estado: “Warning: ORA-29549: class <class name> has changed, Java session state cleared”.

5.7 Ver un conjunto de resultados. En un archivo de prueba usted no se encuentra limitado solamente a bloques PL/SQL. Puede ejecutar instrucciones SQL, incluyendo consultas de selección. Si ejecuta una consulta se mostrará una pestaña adicional llamada Resultados, que le mostrará todos los resultados seleccionados.

5.8 Ver la salida generada por el paquete dbms_output. Durante el proceso de depuración puede ser necesario mostrar cierta información en la pantalla desde una unidad de programa. Con este fin Oracle creo el paquete dbms_output. Si llama al procedimiento dbms_output.put_line, la información se coloca en el buffer de salida. Después de la ejecución de un archivo de prueba puede seleccionar la pestaña Output en la parte superior de la ventana de prueba para ver el contenido del buffer de salida. En esta pestaña puede establecer el tamaño del buffer (0 para un

Page 24: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 24

tamaño ilimitado), habilitarlo y deshabilitarlo. Las opciones de configuración por defecto de la pestaña Output se controlan en las preferencias del programa, descritas en el capítulo 20.5.

5.9 Ver la salida HTP. Si quiere probar una unidad de programa que haga uso de PL/SQL Web Toolkit, la pestaña Salida HTP se mostrará si se ha generado una salida HTP:

Si no existe ninguna salida HTP, esta pestaña no será visible.

5.10 Depurar. Para aquellos errores de programación que son realmente difíciles de seguir, la ventana de prueba contiene un depurador integrado. En la parte superior de la ventana encontrará una barra de herramientas con las funciones relacionadas con el depurador. Para iniciar una sesión de depuración presione el botón Iniciar en la parte izquierda de la barra de depuración en lugar del botón Ejecutar situado en la barra de herramientas principal. Los otros botones de la barra de depuración se habilitarán y podrá comenzar a depurar su código.

Controlar la ejecución. Después de iniciar el depurador, la ejecución se detendrá en la primera instrucción del archivo de prueba. Tras esto, puede controlar la ejecución mediante los botones de la barra de herramientas: • Ejecuta el archivo hasta que finalice la ejecución. • Entra en un procedimiento, función o llamada en la siguiente línea. Si la siguiente línea contiene

una instrucción insert, delete o update provocará que se active el disparador (trigger), en este caso puede entrar en el código del disparador (trigger).

• Salta a la siguiente línea. Se ejecutará pero no entrará en el código. • Sale de la unidad de programa actual. • Ejecuta el programa hasta que ocurra una excepción. La ejecución se detendrá en la línea que

cause esa excepción. Después del siguiente paso se disparará la misma. Cada vez que entra en una unidad de programa, su código se cargará de forma automática en la ventana de prueba. En la parte inferior del editor aparecerá una pestaña por cada unidad de programa con lo que podrá cambiar entre ellas para ver el código, establecer o quitar un punto de interrupción, etc. Si hace clic con el botón derecho del ratón en el editor puede eliminar la unidad de programa de la ventana de prueba si ya no se encuentra interesado en ella:

Page 25: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 25

Ver y establecer los valores de las variables. Para ver el valor de una variable durante una sesión de depuración simplemente mueva el cursor del ratón sobre la variable en el código. Después de ½ segundo, su valor se mostrará a modo de sugerencia. Las variables de un bloque de código PL/SQL de un archivo de prueba no pueden mostrarse. Las variables complejas como registros y tipos de objetos todavía no pueden mostrarse aunque puede ver campos individuales. En futuras versiones, Oracle podría resolver esas limitaciones. Para establecer el valor de una variable, haga clic con el botón derecho del ratón encima de su nombre en el código de programa y seleccione el elemento Establecer variable desde el menú contextual. Aparecerá un cuadro de texto con el valor de la variable donde podrá introducir un nuevo valor y presionar el botón Enter para aplicar los cambios o Esc para cancelar la operación:

Desde el mismo menú contextual puede añadir una variable a la lista de inspecciones, lo que significa que después de cada paso de depuración el valor de la variable se mostrará y actualizará de forma automática en la lista de inspecciones en la parte inferior izquierda de la ventana de prueba. Si una variable es una colección (tabla PL/SQL, varray, tablas anidadas) de tipos de datos escalares, puede ver la colección completa si hace clic con el botón derecho del ratón en ella y selecciona el elemento Ver colección de variables desde el menú contextual. Nota: Todos los valores de las variables pueden verse si las unidades de programa se compilan con la información sobre depuración. Existe una opción que causará que cada vez que se compile se incluya la información de depuración, pudiendo añadir de forma manual la información de depuración si hace clic con el botón derecho sobre una unidad de programa en el Explorador de Objetos y selecciona el elemento del menú contextual Añadir información de depuración.

Page 26: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 26

Utilizar puntos de interrupción. Los puntos de interrupción pueden utilizarse para detener la ejecución de un programa en una línea de código PL/SQL determinada. Cuando la ejecución se detiene, puede ver y establecer variables, ejecutar el código paso a paso, etc. Puede definir una condición para un punto de interrupción, en cuyo caso la ejecución del programa sólo se detendrá si se cumple esa condición. Por cada punto de interrupción que defina, aparecerá un mensaje en la pestaña de salida cuando se encuentre un punto de interrupción.

Establecer puntos de interrupción. Existen dos formas de establecer puntos de interrupción: en una ventana de programa o en una ventana de prueba. En ambos casos simplemente necesita hacer clic con el botón izquierdo del ratón en la línea de código apropiada en el margen del editor. Una marca aparecerá, indicando que existe un punto de interrupción en esa línea. Cuando ejecute una ventana de prueba en modo de depuración la ejecución se detendrá si se encuentra uno de esos puntos de interrupción. Si establece un punto de interrupción en una ventana de programa, puede que ese programa en particular, no se haya compilado todavía en la base de datos. Además, dicho punto de interrupción todavía no puede ser aplicado a la base de datos. En este caso la marca del punto de interrupción tendrá una apariencia distinta. Cuando compile la unidad de programa, el punto de interrupción podrá aplicarse y la correspondiente marca reflejará este cambio. Mientras la unidad de programa no se haya compilado ninguno de los puntos de interrupción establecidos en esta unidad de programa serán efectivos. No puede establecer puntos de interrupción en un bloque de código PL/SQL de un archivo de prueba. Para borrar un punto de interrupción, simplemente haga clic sobre el icono del punto de interrupción.

Condiciones de los puntos de interrupción. Algunas veces puede definir un punto de interrupción en una línea que se ejecuta a menudo, aunque sólo le interese el estado del programa bajo ciertas circunstancias. En este caso puede definir una condición para el punto de interrupción. La ejecución sólo se detendrá si se cumple la condición. Para definir una condición para un punto de interrupción, haga clic con el botón derecho del ratón sobre la marca y seleccione el elemento Modificar punto de interrupción en el menú contextual. Aparecerá el siguiente cuadro de diálogo:

En este cuadro de diálogo puede ver todas las unidades de diálogo que tienen puntos de interrupción, con sus puntos de interrupción listados en la parte inferior. Cada punto de interrupción tiene una casilla de comprobación que le permite habilitarlos o deshabilitarlos. La sección inferior muestra los siguientes campos:

Page 27: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 27

• Utilizar condición - La casilla de comprobación habilita o deshabilita la condición. La propia condición debe ser una expresión de tipo boolean. Cuando se alcanza un punto de interrupción, la ejecución sólo se detendrá si la condición se evalúa como verdadera (true/false). Puede utilizar cualquier expresión SQL en la condición, y puede utilizar cualquier variable que se conozca hasta la localización del punto de interrupción. Son las mismas variables que puede ver o establecer durante un proceso de depuración. Las variables deben precederse del carácter dos puntos “:”. Por ejemplo upper(:ename)=`SMITH’ es una condición valida si la variable ename es valida en la localización del punto de interrupción

• Utilizar mensaje – La casilla de comprobación habilita o deshabilita el mensaje. Cuando se alcanza un punto de interrupción, y se cumplen todas las condiciones, se mostrará un mensaje en la pestaña de salida.

• No detener la ejecución – Esta opción es útil si se ha definido un mensaje. Cuando se encuentra marcada, la ejecución del programa no se detiene en el punto de interrupción de la línea. De esta forma puede definir puntos de interrupción que simplemente generen mensajes en la pestaña de salida.

• Utilizar contador – Esta casilla de comprobación habilita o deshabilita el contador de pasadas, él que define cuantas veces se debe pasar por la línea que contiene el punto de interrupción antes de que se pare la ejecución. Si, por ejemplo, define un contador de pasadas de 10, la ejecución se detendrá la décima vez que se alcance el punto de interrupción.

Ver la pila de llamadas. Puede ver la pila de llamadas en la parte inferior derecha de la ventana de prueba. La pila de llamadas se actualiza automáticamente después de cada paso de depuración.

Preferencias del depurador. En el elemento Preferencias en el menú Herramientas puede encontrar un grupo de opciones relacionadas con el depurador. Estas preferencias se describen con más detalle en el capítulo 20.4.

5.11 Trazar la ejecución. Si utiliza Oracle8i o una versión superior, puede utilizar la herramienta de trazado en la Ventana de Prueba, para trazar la ejecución de su código PL/SQL. Puede configurar que eventos desea trazar: Llamadas a instrucciones, excepciones, SQL o código PL/SQL. Presione el botón Select Trace Levels cercano al botón Create Trace Report para mostrar la siguiente pantalla de configuración:

Page 28: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 28

Puede controlar si desea trazar eventos específicos en cada unidad de programa (All), sólo en las unidades de programa que son compiladas con información de depuración (Enabled), o nunca (None). Para crear un informe de trazado, presione simplemente el botón Create Trace Report en la barra de herramientas de la ventana de prueba y ejecute el archivo de prueba. Después de la ejecución puede cambiar a la pestaña Trazado para ver el informe, y para ver informes anteriores de trazado.

En este sencillo informe puede ver una consulta en la línea 15 de la function employee.depname que ha lanzado la excepción 1403 (No data found), que se ha tratado en la línea 28 de la misma unidad de programa. Por cada evento trazado, puede incluir información en el informe como la descripción del evento, duración, unidad de programa, número de línea, excepción, etc. Para configurar esto, presione el botón Preferencias en la parte superior izquierda de la barra de herramientas de trazado. Esto le mostrará las preferencias del trazado como se describe en el capítulo 20.6. Para ver los informes antiguos de trazado, seleccione una ejecución de la lista de selección. Presione el botón Delete para borrar la ejecución seleccionada. Para más información sobre la utilidad de trazado de Oracle, vea el capítulo DBMS_TRACE del manual Oracle Supplied Packages Reference.

5.12 Pruebas de regresión. Puede utilizar los archivos de prueba para realizar pruebas de regresión, utilizando la herramienta Organizador de Casos de Prueba (vea el capítulo 21.15) para definir y ejecutar conjuntos de pruebas basados en archivos de prueba.

Page 29: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 29

6. Optimización. Para optimizar las instrucciones SQL de sus unidades de programa, la utilidad Explain plan puede serle de gran utilidad mostrándole el plan de ejecución de una instrucción. Además dicha herramienta se encuentra integrada dentro del entorno de desarrollo de PL/SQL Developer. Para ver el consumo de recursos de una instrucción SQL o de una unidad de programa PL/SQL, PL/SQL Developer puede mostrarle las estadísticas acerca de su ejecución. Puede configurar que estadísticas desea visualizar, incluir el tiempo transcurrido, el tiempo de procesador, el número de lecturas lógicas, el número de lecturas físicas, el número de escrituras físicas, etc. Finalmente puede utilizar la herramienta tkprof de Oracle para obtener información sobre los recursos consumidos por todas las instrucciones ejecutadas en una unidad de programa si habilita el trazado de las instrucciones SQL.

6.1 Utilizar la ventana del plan de ejecución. Para utilizar la utilidad de Oracle Explain Plan, presione el botón Nuevo situado en la barra de herramientas y seleccione el elemento Explain Plan. Aparecerá una ventana vacía que le permitirá visualizar el plan de ejecución. En la mitad superior de la ventana, puede escribir la consulta que desea analizar. Después presione el botón Ejecutar situado en la barra de herramientas. El plan de ejecución se mostrará en la mitad inferior de la ventana:

Una vez mostrado el plan de ejecución puede cambiar la consulta SQL y pulsar sobre el botón Ejecutar para ver el impacto de los cambios. Para más información sobre los planes de ejecución, puede leer el manual Oracle Server Tuning. Para ver el efecto de utilizar distintos objetivos del optimizador en el plan de la consulta, seleccione la correspondiente entrada de la lista Objetivos del optimizador. El plan de ejecución se actualizará de forma inmediata para reflejar los cambios. Utilice los botones Primera operación, Operación anterior, Operación siguiente y Última operación para navegar a través del plan de ejecución siguiendo el orden de las operaciones. Después de que se haya determinado el plan de ejecución, PL/SQL Developer resaltará la primera operación. La herramienta Explain Plan utiliza una tabla llamada plan table para almacenar los planes de ejecución. Si dicha tabla no se encuentra disponible para el usuario conectado a la base de datos, PL/SQL Developer le preguntará si desea crearla en el esquema de dicho usuario. Para definir que columnas de la tabla plan table desea ver, y en que orden, presione el botón Preferencias. Esto le mostrará la página de preferencias correspondiente (vea el capítulo 20.22). Nota: Si esta utilizando el servidor Oracle 7.2 o una versión anterior, el coste y la cardinalidad no están disponibles en la tabla. Si se encuentra utilizando la versión 7.3 o una versión posterior y el coste o la cardinalidad no se encuentran disponibles, probablemente necesite actualizar la tabla. Si hace clic con el botón derecho del ratón sobre la columna Object name, aparecerá el menú contextual para el objeto seleccionado.

Page 30: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 30

Analizar las instrucciones SQL en una unidad de programa. La mayoría de las veces, las consultas SQL que desea analizar se encuentran almacenadas en el código de una unidad de programa. Para analizar las instrucciones SQL de una unidad de programa seleccione la consulta en el editor de programas, haga clic con el botón derecho del ratón sobre el texto seleccionado y presione el elemento Explain Plan del menú contextual (o presione la tecla F5). Aparecerá una nueva ventana de tipo Explain Plan con la consulta seleccionada y todas las variables PL/SQL son reemplazadas por variables de sustitución. Cuando una consulta contiene variables propias del lenguaje PL/SQL y ejecuta la ventana del plan de ejecución, recibirá un mensaje de error “ORA-00904:Invalid column name”. Por error la herramienta Explain Plan asume que todas las variables son columnas. Cada variable debe prefijarse con el carácter “:”. Si queremos analizar la consulta en la función employee.deptname, la variables result y p_empno deben modificarse de la siguiente forma:

Ahora la utilidad Explain Plan conoce que identificador es una columna, y que identificador es una variable de código PL/SQL.

6.2 Estadísticas automáticas. Cada vez que ejecute una instrucción en una ventana de consulta SQL o en una ventana de prueba, PL/SQL Developer generará automáticamente un informe con las estadísticas de la ejecución de la consulta. Una condición que necesita cumplirse es que tenga privilegios de selección en las tablas de rendimiento dinámico v$session, v$statname, v$sesstat (desde el rol estándar plustrace). Puede ver el informe de estadísticas si cambia a la pestaña Estadísticas situada en la parte superior de la ventana de consulta SQL o de la ventana de prueba. Las estadísticas para la ejecución de la función employee.deptname, podrían parecerse a las siguientes:

Para cada estadística del informe puede ver el valor de la última ejecución y el valor total para la sesión actual. Puede configurar si se muestran las estadísticas si establece una las opciones en la ventana de preferencias, como se explica en el capítulo 20.2. El conjunto de estadísticas es importante para el ajuste del código SQL y PL/SQL, como se describe aquí:

Page 31: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 31

Estadística Significado CPU used by this session Procesador utilizado en centésimas de segundo.

Physical reads Número de bloques leídos desde el disco. Physical writes Número de bloques escritos en el disco.

Session logical reads Número de bloques leídos desde la memoria o desde el disco.

sorts (disk) Número de ordenaciones realizadas en un segmento temporal. sorts (memory) Número de ordenaciones realizadas en memoria. sorts (rows) Número de filas que se han ordenado. table fetch by rowid Número de filas localizadas mediante rowid, acceso por índices.

table scan blocks gotten El número de bloques leídos mediante full table scans. table scan rows gotten El número de filas leídas mediante full table scans. table scans (long tables) Número de full table scans sobre tablas grandes.

table scans (short tables) Número de full table scans sobre tablas pequeñas. El número de estadísticas que puede incluir en el informe depende de la versión del servidor de Oracle y no se describen en este manual. Si desea obtener información de las mismas, existen una gran cantidad de libros disponibles que cubren este tema. El libro Oracle Server Referente describe brevemente esas estadísticas. Las estadísticas puede exportase a un archivo CSV (Valores separados por comas), que puede abrirse en una hoja de cálculo posteriormente. Haga clic con el botón derecho del ratón en las estadísticas y seleccione el elemento Exportar y elija Archivo CSV. De forma alternativa puede elegir otro formato como TSV, XML o HTML, o copiar las estadistas al portapapeles.

6.3 El perfilador de PL/SQL. El perfilador de código PL/SQL es una potente herramienta que le ayuda a optimizar su código PL/SQL. Por cada línea de código ejecutada, muestra el tiempo total, el tiempo máximo, el tiempo mínimo, la media y el número de veces que se ha ejecutado dicha línea. Puede acceder fácilmente al perfilador desde la ventana de prueba. Antes de ejecutar un archivo de prueba, presione el botón Crear informe del perfilador situado en la barra de herramientas de la ventana de prueba. Si ejecuta el archivo puede cambiar a la pestaña de Perfilador para ver el informe.

Page 32: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 32

El siguiente informe de ejemplo muestra que en la function employee.deptname, la consulta de selección ha tardado 94 milisegundos, y que las 3 llamadas al paquete dbms_output han tardado 29 milisegundos:

Por defecto la solapa Perfilador mostrará el informe de la última ejecución. Puede seleccionar informes anteriores si los selecciona de la lista Ejecuciones. La lista Unidades le permite centrarse en la ejecución de una unidad de programa específica dentro del informe. La columna Tiempo total muestra la representación grafica del tiempo transcurrido de una línea de código, comparado con la línea que más tiempo ha consumido al ejecutarse. Esto le permite identificar cuales son las líneas de código que consumen más tiempo. Puede ordenar el informe si presiona los botones de ordenación situados en la cabecera de las columnas. Si una línea de código se muestra en color rojo, significa que la unidad de programa se ha modificado desde que se creo el informe. Es posible que la línea mostrada difiera de la línea existente cuando se creó el informe. Puede cambiar varios aspectos del informe del perfilador si presiona el botón Preferencias situado en la barra de herramientas de la pestaña Perfilador. Esto le mostrará la página de preferencias correspondiente, como se describe en el capítulo 20.7. Para más información acerca del perfilador vea el capítulo dbms_profiler en la guía “Oracle8i Supplied Packages Reference”.

6.4 Trazar instrucciones SQL. Puede habilitar el trazado de instrucciones SQL presionando el botón SQL Trace situado en la barra de herramientas. Después de esto, todo el proceso que se realice en el servidor mediante una ventana de consulta SQL o en una ventana de prueba será registrado en una archivo de trazado en el servidor de la base de datos. Para esto es necesario que el parámetro de la instancia de la base de datos timed statistics se establezca a true. Puede deshabilitar el trazador de SQL si presiona el botón de SQL trace otra vez. Puede ver la información del archivo de trazado si utiliza la utilidad de oracle tkprof en el servidor de la base de datos. Esto generará un informe acerca del tiempo consumido, tiempo de procesador, I/O, por cada instrucción de SQL. Además de darle un informe acerca de que instrucciones son las más costosas en una unidad de programa. Para aprender más acerca de la utilidad tkprof de Oracle lea el manual “Oracle 7 Server Tuning” . El informe generado por tkprof para la ejecución de la función employee.deptname podría parecerse al siguiente informe:

Page 33: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 33

TKPROF: Release 7.2.2.3.1 - Production on Fri Sep 26 14:59:08 1997 Copyright (c) Oracle Corporation 1979, 1994. All rights reserved. Trace file: ora07087.trc Sort options: default ******************************************************************************** count = number of times OCI procedure was executed cpu = cpu time in seconds executing elapsed = elapsed time in seconds executing disk = number of physical reads of buffers from disk query = number of buffers gotten for consistent read current = number of buffers gotten in current mode (usually for update) rows = number of rows processed by the fetch or execute call ******************************************************************************** begin :deptname := employee.deptname(:empno); end; call count cpu elapsed disk query current rows ------- ------ -------- ---------- ---------- ---------- ---------- ---------- Parse 1 0.00 0.00 0 0 0 0 Execute 1 0.01 0.01 0 0 0 1 Fetch 0 0.00 0.00 0 0 0 0 ------- ------ -------- ---------- ---------- ---------- ---------- ---------- total 2 0.01 0.01 0 0 0 1 Misses in library cache during parse: 0 Optimizer hint: CHOOSE Parsing user id: 16 ******************************************************************************** SELECT DEPT.DNAME FROM DEPT,EMP WHERE EMP.EMPNO = :b1 AND DEPT.DEPTNO = EMP.DEPTNO call count cpu elapsed disk query current rows ------- ------ -------- ---------- ---------- ---------- ---------- ---------- Parse 1 0.00 0.00 0 0 0 0 Execute 1 0.00 0.00 0 0 0 5 Fetch 1 0.06 0.06 4 4 0 1 ------- ------ -------- ---------- ---------- ---------- ---------- ---------- total 3 0.06 0.06 4 4 0 6 Misses in library cache during parse: 0 Optimizer hint: CHOOSE Parsing user id: 16 (recursive depth: 1) ********************************************************************************

Page 34: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 34

7. Trabajar con SQL. A menudo durante el desarrollo de un programa necesita ejecutar alguna instrucción SQL. Ya sea para probar una instrucción, para ver los datos de una tabla o para actualizar los datos. Puede realizar estas operaciones desde el propio PL/SQL Developer, utilizando la ventana de consulta SQL.

7.1 Utilizar la ventana de consulta SQL. Para crear una nueva ventana de consulta SQL, presione el botón Nuevo situado en la barra de herramientas y seleccione el elemento Ventana de consulta SQL. Aparecerá una ventana de consulta SQL vacía en la que puede escribir una instrucción SQL. Si ha escrito una consulta de selección la ventana se dividirá en dos partes y mostrará los resultados de la misma en una rejilla situada en la mitad inferior de la pantalla. Por ejemplo, si queremos ver todos los empleados de la tabla employee, la ventana de consulta SQL podría parecerse a la siguiente:

La instrucción SQL es ejecutada y recupera 10 filas. El resultado de la consulta es superior a 10 filas, lo que nos indica el hecho de que los botones de Siguiente página y Última página, situados en el centro de la barra de herramientas de resultados, están habilitados y también porque en la barra de estado se muestra el mensaje (more…). Inicialmente sólo se han recuperado 10 registros, debido a que es el número de registros que se pueden mostrar en la rejilla. Si presionamos el botón Página siguiente se recuperarán los 10 registros siguientes. Presionando el botón de Última página se recuperarán todos los registros. Si tiene varias instrucciones SQL en el editor y presiona el botón Ejecutar, se ejecutarán todas las instrucciones y se mostrarán los resultados en distintas pestañas:

Page 35: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 35

Las instrucciones SQL deben finalizarse con un punto y coma (;) o con una barra invertida (\), los bloques de código PL/SQL deben finalizarse con una barra invertida (\), de igual forma que en SQL*Plus. Si selecciona una pestaña de resultado, se resaltará el texto correspondiente en el editor. Si selecciona una parte del texto de una consulta en el Editor de SQL, sólo se ejecutará el texto seleccionado. De esta forma puede tener más de una instrucción en el editor y ejecutarlas de una en una. Si ejecuta un instrucción SQL que tarda mucho tiempo en finalizar puede presionar el botón Cancelar para pararla. Observe que el hecho de presionar el botón Cancelar no funcionará siempre. Si por ejemplo la consulta está esperando por un bloqueo, no responderá al mensaje de cancelar. Si ha presionado el botón Cancelar cuando la ventana de consulta SQL está recuperando filas, simplemente terminará y mostrará las filas que ya han sido recuperadas. Puede continuar recuperando registros con Página siguiente y Ultima página. Observe que las preferencias de la ventana de consulta SQL le permiten determinar el número de filas que se devuelven inicialmente por consulta. Esto se describe en el capítulo 20.20. En la parte derecha de la ventana puede ver dos botones que le permiten navegar a través de todas las instrucciones o consultas que ha introducido en la ventana de consulta SQL. De esta forma puede volver a ejecutar instrucciones introducidas previamente. Por motivos de optimización puede ver las estadísticas de ejecución de las consultas seleccionando la pestaña estadísticas. Las estadísticas se explican en el capítulo 6.2. Cuando imprima una ventana de consulta SQL, la instrucción SQL y la rejilla con los resultados se imprimirán. Si selecciona filas en la rejilla de resultados, puede limitar la cantidad de registros que se imprimirán. Por defecto los títulos de las pestañas se obtienen de las sentencias SQL ejecutadas. Para modificar este comportamiento puede utilizar un comentario que contenga la expresión tab = <title> antes de la sentencia SQL. Por ejemplo: -- tab=Department 10 select * from emp where deptno = 10; En este ejemplo, el título de la pestaña es Departamento 10, en lugar del nombre por defecto Select emp.

Page 36: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 36

7.2 Modificar los resultados en la rejilla de resultados. La rejilla de resultados de la ventana de consulta de SQL puede modificarse de varias formas. Algunos tipos de celdas tienen un comportamiento especial, se pueden seleccionar e imprimir filas, columnas y rangos de celdas, puede mover columnas, ordenar filas o cambiar al tipo de vista simple.

Alinear las celdas de la rejilla de resultados. Puede alinear rápidamente las celdas de la rejilla de resultados, utilizando el botón Alinear.

Si presiona este botón, el ancho de cada celda vendrá determinado por el ancho de la cabecera de la columna y su contenido. Si despliega el menú que se encuentra a continuación del botón Alinear, puede seleccionar los distintos tipos de alineaciones que le ofrece PL/SQL Developer en el menú desplegado. Desde aquí puede limitar el ancho de las celdas de la rejilla de resultados o a su contenido, desde aquí también podrá alinear las celdas en función de su altura. Puede utilizar una plantilla personalizada para alinear los datos de la rejilla de resultados.. Una vez haya establecido la configuración de las celdas puede seleccionar la opción Guardar como plantilla para guardas estos cambios en una plantilla. Si ejecuta la misma plantilla posteriormente, puede aplicar esta configuración si selecciona la opción Alinear desde plantilla o si habilita la opción Alinear automáticamente desde plantilla. Observe que la plantilla además de guardar el ancho de las celdas también guarda el orden de las columnas.

Reconocer valores nulos. Los valores nulos se muestran en una celda con el fondo amarillo claro, esto hace más fácil que pueda distinguirlos de un valor con todos los caracteres en blanco. Esto facilita el reconocer valores nulos de celdas que no muestran directamente ningún valor en la rejilla, como es el caso de tipos de datos LONG o LOB. Puede cambiar el color de fondo de la celda para los valores nulos mediante la opción correspondiente (vea el capítulo 20.20).

Ver grandes columnas de datos Los valores de las columnas de tipo Long, Long Raw, CLOB, BLOBL y BFILE no se muestran en la rejilla de resultados. En su lugar se muestra el texto <Long>, <Long Raw>, <CLOB>, <BLOB> y <BFILE>.

Cuando hace clic en el botón de una celda en una columna, se llama al editor de datos, que le permite ver o editar datos en varios formatos. Vea el capítulo 23 para más detalles. Puede hacer clic en el botón de una celda de una columna de caracteres para llamar al editor de datos. El botón de la celda sólo se muestra si el tamaño es mayor de 20 caracteres.

Page 37: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 37

Ver columnas de tipo fecha. Una columna de tipo fecha tiene un botón en la celda que muestra un calendario con la fecha almacenada resaltada. Si la fecha tiene además tiene hora, puede ver su valor en el calendario:

Viendo columnas de tipo timestamp. Las columnas de tipo Timestamp se muestran en el formato indicado en la configuración del registro NLS_TIMESTAMP_FORMAT y _NLS_TIMESTAMP_TZ_FORMAT de su Oracle Home.

Ver datos en formato XML. Existen varias formas de almacenar datos en formato XML en la base de datos: como CLOB’s (Oracle 8i), como XMLTYPE (Oracle 9i), como Varchar2 o como columnas de tipo Long. En cualquier caso, el editor de datos reconocerá el formato XML si este comienza por una cabecera estándar XML, y cambiara al formato XML. Para más detalles vea el capítulo 23.

Ver columnas de cursores anidados. Si incluye un cursor anidado en la lista de campos de una columna de selección, el valor de la columna se mostrará inicialmente como <Cursor>. Si presiona el botón situado dentro de la celda, abrirá una nueva ventana de consulta SQL con la rejilla mostrando el conjunto de resultados del cursor. Nota: Cada valor del cursor anidado implicar abrir un cursor, con lo cual puede superar fácilmente el valor del parámetro OPEN_CURSORS y obtener el error “ORA-01000: maximum open cursors exceeded”

Seleccionar columnas, filas y celdas. Para seleccionar filas o columnas en la rejilla de resultados, simplemente haga clic en la cabecera de la fila o de la columna y arrastre el puntero del ratón para resaltar la selección.

Puede mover una selección de columnas, seleccionando una de esas columnas y arrastrándola a una nueva ubicación.

Page 38: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 38

Para seleccionar un rango de celdas, mueva el puntero del ratón sobre el borde izquierdo de una celda hasta que la forma del puntero cambie, presione el botón izquierdo del ratón y arrastre para resaltar la selección:

Para seleccionar todas las filas y columnas, presione el botón que se encuentra en la parte superior izquierda de la rejilla, o haga clic con el botón derecho del ratón en la rejilla y seleccione el elemento Seleccionar Todos desde el menú contextual. Puede copiar o imprimir la selección como lo hace habitualmente.

Bloquear el desplazamiento Es muy probable que a veces, desee evitar que se desplacen los datos fuera de la pantalla. En el ejemplo anterior, es posible que desee evitar que la columna empno se desplace fuera de la pantalla cuando desplace el contenido de la rejilla de datos hacia la izquierda. Para ello, haga clic con el botón derecho del ratón sobre la columna empno y seleccione la opción Bloquear filas del menú emergente Bloquear desplazamiento. Para bloquear más de una columna bloquee la columna que se encuentre situada más a la derecha. Puede bloquear las filas de la rejilla de datos de forma similar: haga clic con el botón derecho del ratón sobre una fila y seleccione la opción Bloquear filas del menú emergente de Bloquear desplazamiento.

Ordenar las filas de la rejilla. Para ordenar las filas de la rejilla de resultados, presione el botón de la cabecera de la columna en la que quiera ordenar las filas.

Las filas se ordenarán en orden ascendente, como muestra el botón de la cabecera. Presionando el botón de la cabecera otra vez, ordenará las filas en orden descendente. Si lo presiona una tercera vez permanecerá sin ningún orden. Si presiona el botón de otra columna ordenará las filas por esta columna, pero también utilizará la columna previa como columna de orden secundario (indicado por el punto en el botón de la cabecera). En el ejemplo anterior, la columna Job es la columna primaria, y la columna hiredate es la secundaria. Por defecto PL/SQL Developer ordenará el conjunto de registros sin tener en cuenta si están en mayúsculas o minúsculas. Puede hacer clic con el botón derecho del ratón sobre Coincidir mayúsculas y minúsculas para cambiar el comportamiento del proceso de ordenación de los resultados Observe que el proceso de ordenación de los resultados se realiza de forma local, y sólo para las columnas que ya se han recuperado. Si obtiene información adicional después de ordenar los resultados, las nuevas filas se añadirán el final de la rejilla de resultados sin ningún orden. Para grandes conjuntos de registros el orden en modo local puede tardar mucho tiempo, en este caso podría ser mejor utilizar

Page 39: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 39

una cláusula order by en la consulta y dejar que sea Oracle Server el encargado de realizar el proceso de ordenación de los registros.

Vista sencilla. Si el conjunto de resultados contiene muchas columnas, podría ser un inconveniente que cada registro se muestre en una sola línea. Puede moverse hacia adelante o hacia atrás para ver las columnas relacionadas (aunque pueda mover las columnas), y no puede visualizar todas las columnas del registro de una vez. Si presiona el botón Vista sencilla en la barra de herramientas de la rejilla, puede ver sólo un registro de una vez:

Ahora cada fila se muestra en una columna con el nombre y el valor. Los botones Siguiente registro y Registro anterior en la barra de herramientas de la rejilla pueden utilizarse para navegar a través del conjunto de resultados. Para volver a la vista en modo multi registro, presione el botón Vista sencilla otra vez.

Exportar datos. Existen varias formas de exportar los datos de un conjunto de resultados de la rejilla de datos. Después de ejecutar una instrucción de tipo select, seleccione el rango de celdas que desee exportar tal y como se describió anteriormente, y haga clic con el botón derecho del ratón y seleccione el elemento de menú Exportar Resultados desde el menú contextual. Al hacer esto se mostrará un submenú desde donde podrá elegir exportar los datos en diferentes formatos CSV, TSV, HTML, XML o SQL. Si selecciona el formato SQL, PL/SQL Developer creará un archivo con todas las instrucciones insert necesarias para recrear los resultados de la consulta. Después de seleccionar el formato puede indicar el nombre y la ubicación del archivo generado. De forma alternativa. También puede copiar la selección al portapapeles presionando Ctrl-C, o haciendo clic en la selección y seleccionando Copiar o Copiar con cabecera desde el menú contextual. Pudiendo pegar posteriormente estos datos en otra aplicación. Para modificar rápidamente el conjunto de resultados generados en Microsoft Excel, seleccione el elemento Copiar a Excel. Esta acción exportará los datos seleccionados a un archivo temporal y lo

Page 40: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 40

abrirá con Microsoft Excel. Si el número de registros seleccionados es superior a 65535, PL/SQL Developer dividirá los registros en diferentes hojas de Excel. Si múltiples conjuntos de registros como resultado de la ejecución de múltiples consultas SQL, puede seleccionar el elemento Copiar todo a Excel, en lugar de Copiar a Excel. Esta opción creará una hoja de Excel por cada conjunto de registros.

7.3 Filtrar resultados de la consulta. Después de ejecutar una consulta, puede presionar el botón Filtrar resultados sobre la rejilla de resultados si desea buscar un registro concreto. Al presionar este botón PL/SQL Developer limpiará la rejilla de resultados, y dejará un registro vacío donde puede introducir los valores de la consulta. Si, por ejemplo, quiere buscar todos los empleados que comiencen con la letra A en el departamento 20, introduzca el valor A% en la columna ename y el valor 20 en la columna deptno:

Presionando otra vez el botón Filtrar consulta, o presionando el botón Ejecutar, ejecutará la consulta modificada y mostrará los resultados. Presione el botón Limpiar registro para limpiar los valores de la consulta. Los valores de la consulta no se encuentran restringidos a valores con caracteres comodines. Puede utilizar las expresiones siguientes (las expresiones alternativas entre corchetes):

• valor [= valor] • valor con comodín [like valor con comodín] • > valor • < valor • != valor [<> valor] • in (valor1, valor2, ...) • between valor1 and valor2 • null [is null] • not null [is not null] Observe que si emplea un valor literal, puede omitir las comillas para los valores de texto (ejemplo SMITH se convertirá automáticamente en ‘SMITH’ en el texto SQL). Para todas las demás expresiones debe proporcionar un valor literal que el servidor Oracle comprenda (ejemplo !=’SMITH’). Esto es así en el caso de números y fechas. Si utiliza una expresión, utilice un formato que pueda ser comprendido por Oracle.

Page 41: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 41

Existen diversas opciones que le permiten controlar el funcionamiento del filtrado de resultados. El capítulo 20.20 describe esas opciones.

7.4 Consultas vinculadas. Cuando esté viendo un conjunto de resultados, con frecuencia necesitará consultar una tabla relacionada. Por ejemplo cuando esté viendo la tabla dept, puede necesitar consultar todos los empleados de un departamento, o viceversa cuando se encuentre viendo la tabla emp, puede necesitar consultar el departamento de un empleado. La mayor parte de las veces tendrá una clave foránea entre las tablas padre y las tablas hijas, en cuyo caso la ventana de consulta SQL puede generar y ejecutar esas consultas por usted. Si se encuentra en un determinado registro en el conjunto de resultados, presione el botón Consulta vinculada en la barra de herramientas que se encuentra en la parte superior de la rejilla. Esto le mostrará un menú contextual con las tablas padre e hijas de la tabla del elemento seleccionado. Si por ejemplo se encuentra consultando la tabla emp, se le mostrará el siguiente menú desplegable:

La foto superior muestra las tablas padre (y los nombres de sus claves foráneas) y en la parte inferior muestra las tablas hijas. El elemento dept generará una consulta para el departamento de este empleado (30). El primer elemento emp (padre) generará una consulta para el manager de este empleado (7839). El segundo elemento de la tabla emp (hija), generará una consulta para todos los empleados que dirige este empleado. La consulta vinculada se ejecutará en la misma ventana de consulta SQL a menos que habilite la opción Linked query in new window (vea el capítulo 20.20). Si presiona la tecla Ctrl mientras presiona el botón consulta vinculada, ocurrirá lo contrario a esta opción.

7.5 Variables de sustitución.

Page 42: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 42

Puede utilizar variables de sustitución en el texto SQL para permitir que un usuario pueda introducir datos cuando la consulta se ejecute. La forma más simple de hacerlo es mediante el uso de una variable de sustitución:

Si especifica &depno en el texto SQL se le preguntará por el valor de esta variable. La variable a la que hace referencia en el texto SQL se sustituirá por su valor antes de la ejecución. Puede especificar más de una variable de sustitución y puede especificar cada variable más de una vez. Además puede definir el tipo de datos, el valor por defecto, listas de selección, lista de consultas, casillas de comprobación y otras opciones avanzadas. Esas características son empleadas en el visor de informes, y se describen con más detalle en el capítulo 12.

7.6 Actualizar la base de datos.

Page 43: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 43

Para actualizar, insertar o borrar registros en la base de datos, puede ejecutar las instrucciones apropiadas de tipo DML en una ventana de consulta SQL. Probablemente sea mucho más adecuado para hacer los resultados de la rejilla actualizables, el incluir el campo rowid en la lista de campos de la consulta o utilizar la instrucción select…for update:

Debe saber que la instrucción select…for update bloqueará todos los registros seleccionados, con lo que incluir el campo rowid será la mejor forma de hacer que los resultados de la consulta sean actualizables. Si la instrucción es una unión de varias tablas (join), sólo las columnas de la primera tabla pueden actualizarse. Todas las demás columnas serán sólo de lectura y tampoco podrá actualizar columnas con alias. Si el resultado es actualizable, puede presionar el botón Editar datos situado en la parte derecha de la rejilla y editar los registros. Puede insertar o borrar registros de la rejilla si presiona el botón Insertar Registro o Borrar registro. Si ha seleccionados varios registros, se borrarán. Cuando se encuentre modificando campos de tipo texto o de tipo numérico, PL/SQL Developer cambiará el color del texto introducido al rojo en caso de que los datos introducidos superen el tamaño, la precisión o la escala del tipo de datos definido. Después de editar el valor de una columna que aparece en la expresión de una columna virtual, el correspondiente valor de la columna virtual también será actualizado. El hecho de modificar los resultados de la rejilla no significa que se realice ningún cambio en la base de datos. Puede realizar un post de los datos actualizados, borrados o insertados en la base de datos si presiona el botón Post. Cualquier cambio realizado sobre el valor de una columna, que se lleve a cabo a través de la lógica del servidor (por ejemplo, antes de que se ejecuten los disparadores de inserción o actualización de datos, o se utilicen los valores de una instrucción de inserción de datos), se verán reflejados inmediatamente en la rejilla de datos. Una vez que ha realizado un post de los datos (y si tiene la opción AutoCommit SQL Window desmarcada) los botones Commit y Rollback de la barra de herramientas se habilitarán si se ha iniciado una transacción. Para más información sobre las transacciones, vea el capítulo 17.

Editar grandes columnas de datos. Como se explicó en capítulos anteriores, puede hacer clic en el botón situado dentro de la celda de una columna de tipo Long, Long Raw, CLOB, BLOB y BFILE para ver los valores en varios formatos.

Page 44: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 44

Cuando la rejilla de resultados es actualizable puede utilizar el editor de datos para cambiar el valor de una columna.

7.7 Ver y editar columnas de tipo XMLTYPE. La versión 9.0 y las versiones anteriores de Oracle Net no soportan directamente el tipo SYS.XMLTYPE, con lo que no podrá acceder directamente a los datos en formato XML que se encuentren almacenados en una columna. Si, por ejemplo, xml_test es una columna de tipo SYS.XMLTYPE, la siguiente consulta no devolverá el resultado esperado:

select id, xml_text from xml_table

Sólo la columna id se mostrará en el conjunto de resultados. Para ver los datos XML, utilice la función getclobval():

select id, t.xml_text.getclobval() from xml_table t

De esta forma la columna de tipo CLOB puede visualizarse en el editor de texto, y el resalte de la sintaxis se aplicará de forma automática. Para editar los datos XML, haga que los resultados sean actualizables de la forma habitual, incluyendo el campo rowid:

select id, t.xml_text.getclobval(), rowid from xml_table t

Ahora puede editar el tipo de datos CLOB y ejecutar una instrucción post sobre los mismos en la base de datos. Observe que las funciones Ver datos y Editar datos para tablas y vistas aplicarán esas reglas, con lo que la forma más fácil para ver o editar columnas de tipo XMLTYPE se consigue haciendo clic con el botón derecho del ratón sobre la tabla o vista y seleccionando los elementos correspondientes desde el menú contextual.

7.8 Exportar consultas. Para consultas que devuelven un gran número de resultados (diez millones de registros o más) podría ser problemático consultar primero los datos, mostrarlos en la rejilla y exportarlos posteriormente a un archivo. Esto podría consumir demasiados recursos de memoria. En este caso es más practico presionar el botón Exportar resultados de la consulta… situado en la barra de herramientas de resultados del editor de SQL, en lugar del botón Ejecutar situado en la barra de herramientas principal . Esto le mostrará un menú desplegable donde puede seleccionar el formato en el que exportar los datos, formato CSV (Comma Separated Values), formato TSV (Tab Separated Values), formato HTML, o formato XML. Después de seleccionar el formato, puede especificar el archivo al que desea exportar los datos, tras lo que se ejecutará la consulta. PL/SQL Developer no mostrará los resultados de la consulta, sólo escribirá el conjunto de resultados al archivo de exportación.

7.9 Guardar archivos SQL. Si ha creado una instrucción SQL que desee utilizar posteriormente, puede guardarla como un archivo SQL. Para ello, presione el botón Guardar situado en la barra de herramientas e introduzca el nombre apropiado en el cuadro de diálogo. La extensión por defecto para este tipo de archivos es .SQL, aunque puede cambiarla estableciendo o modificando una de las opciones descritas en el capítulo 20.28. Observe que sólo se guarda en el fichero la instrucción SQL, no todo el historial de instrucciones. Para incluir el historial en el archivo, haga clic con el botón derecho del ratón en la ventana de consulta SQL y seleccione el elemento Guardar Historial en el menú contextual. En este caso se guardarán todas las instrucciones con una barra inversa entre ellas.

Page 45: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 45

Puede abrir un archivo guardado previamente si presiona el botón Abrir situado en la barra de herramientas y selecciona el elemento Archivo SQL, lo que creará una nueva ventana de consulta SQL. Puede de forma alternativa hacer clic con el botón derecho del ratón en una ventana y seleccionar el elemento Cargar del menú contextual, lo que abrirá un archivo SQL.

7.10 Crear consultas estándar. Para la mayoría de las tablas y de las vistas, tendrá varias consultas estándar que ejecutará con mayor o menor frecuencia. Por ejemplo “Muestra todos los empleados que son managers”, o “Muestra la suma del sueldo de todos los empleados, ordenados por el número de departamento”. Puede guardar dichas consultas como “Consultas estándar”, a las que puede recurrir más tarde utilizando el menú contextual de la tabla o vista correspondiente. Este menú aparecerá cuando haga clic con el botón derecho del ratón sobre la tabla o vista en el Explorador de Objetos o en una ventana de edición de código PL/SQL o SQL. Después de crear una consulta estándar en la ventana de consulta de SQL, puede presionar el botón Guardar como consulta estándar en la barra de tareas de la rejilla. Aparecerá el siguiente cuadro de diálogo:

Puede introducir el nombre de la consulta, que se mostrará en el menú desplegable. Puede cambiar el propietario y el nombre de la tabla o vista, al que se le mostrará la consulta estándar. Presione el botón Preferencias… para cambiar el directorio donde se almacenarán las consultas estándar. La siguiente información se guardará con la consulta estándar: • El texto de la consulta SQL. • El tamaño de la ventana de consulta SQL. • El modo de la rejilla: Modo multi registro o Modo simple

Observe que puede utilizar variables de sustitución (vea capítulo 7.5) para hacer las consultas estándar más flexibles.

Page 46: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 46

8. La ventana de comandos. La ventana de comandos le permite ejecutar archivos SQL de una forma idéntica a la del programa SQL*Plus de Oracle. Para abrir la ventana de comandos presione el botón Nuevo situado en la barra de herramientas o seleccione el elemento Nuevo en el menú Archivo. Se abrirá una ventana de comandos en la que podrá escribir comandos de SQL y SQL*Plus de la misma forma que si estuviese ejecutando SQL*Plus, pero sin abandonar el entorno de desarrollo de PL/SQL Developer

8.1 Introducir comandos e instrucciones SQL. Al igual que en SQL*Plus, puede escribir instrucciones de SQL en múltiples líneas y finalizar la instrucción con punto y coma (;) o barra invertida (\). Puede utilizar las teclas de izquierda y derecha para editar la línea de comandos, y también las de arriba y abajo para volver a utilizar líneas introducidas anteriormente. Si introduce el comando edit, puede utilizar un editor de texto para editar todo el contenido del buffer. Después de editarlo, puede ejecutarlo introduciendo una barra invertida (\) en la línea de comandos. El editor almacena un histórico con todos los comandos ejecutados anteriormente, con lo podrá ejecutar rápidamente un comando modificado. La barra de estado de la ventana de comandos muestra el estado de las opciones Echo, Termout, Feedback, Verify, Autoprint, Heading y Timing. Puede cambiar su estado haciendo doble clic con el botón izquierdo del ratón sobre ellas.

8.2 Desarrollar archivos de comandos. Para escribir un archivo de comandos con múltiples declaraciones y comandos, a menudo necesita editar el archivo, ejecutarlo, editarlo otra vez, ejecutarlo otra vez, etc. Para hacer este proceso un poco

Page 47: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 47

más cómodo, la ventana de comandos posee un editor incorporado que resalta la sintaxis de SQL, PL/SQL y SQL*Plus.

Abrir, Ejecutar y Guardar un archivo de comandos. Para crear un archivo de comandos, sitúese en la pestaña Editor e introduzca los comandos. Para ejecutar los comandos en el editor, presione el botón Ejecutar o la tecla F8. La ventana de comandos volverá a la pestaña de Diálogo y ejecutará todos los comandos. Para editar un archivo de comandos existente, presione el botón Abrir situado en la barra de herramientas y seleccione el elemento Archivo de comando. Al hacerlo, cargará el archivo de comandos en el editor. De forma alternativa puede abrir un archivo de comandos haciendo clic con el botón derecho del ratón en el editor y seleccionando la opción Cargar del menú contextual. Para guardar un archivo de comandos modificado, presione el botón Guardar situado en la barra de herramientas.

Desplazarse a través del código. Si presiona el botón Pausar ejecución situado en la barra de estado, antes o durante la ejecución del archivo, podrá moverse por el archivo de comandos de una forma controlada. El siguiente comando se resaltará en el editor y será ejecutado cuando presione de nuevo el botón Ejecutar siguiente comando situado en la barra de estado. Si presiona de nuevo el botón Pausar ejecución, la ejecución continuará con normalidad. Puede simular el botón Pausar ejecución desde un archivo utilizando el comando SET EXECPAUSE.

Page 48: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 48

8.3 Comandos soportados. Aparte de soportar todas las declaraciones del lenguaje SQL, la ventana de comandos también soporta los siguientes comandos de SQL*Plus:

Comando Significado / Ejecuta las instrucciones SQL almacenadas en el buffer. ? [Keyword] Muestra la ayuda para la instrucción indicada. @[@] [Filename] [Parameter list] Ejecuta el archivo de comandos indicado, pasándole los

parámetros especificados. ACC[EPT] Variable [DEF[AULT] Value] [PROMPT Text | NOPR[OMPT]]

Permite al usuario introducir el valor de una variable de sustitución.

CL[EAR] [SCR[EEN]] Limpia la pantalla. CL[EAR] SQL Limpia el contenido del buffer. COL[UMN] [Column] [Format] [New Value variable]

Define el formato de una columna o muestra los formatos de todas las columnas.

CON[NECT] [username/password@database] Conecta a la base de datos con el usuario especificado. DEF[INE] [Variable] [ = Text] Define una variable de sustitución, muestra una o todas las

variables de sustitución. DESC[RIBE] Object Muestra una descripción del objeto indicado. DISC[CONNECT] Desconecta la sesión actual de la base de datos. EDIT Carga el editor de texto con las instrucciones SQL

almacenadas en el buffer. EXEC[UTE] Procedure Ejecuta el procedimiento indicado. EXIT [APPLICATION] Termina la ejecución de un archivo de comandos o cierra la

ventana de comandos. Si añade el parámetro Aplicación cerrará PL/SQL Developer.

GET [Filename] Carga un archivo de comandos en el editor. HOST [Command] Ejecuta un comando externo. HELP [Keyword] Muestra información sobre la palabra reservada. PAUSE [Message] Muestra un mensaje y detiene la ejecución hasta que el

usuario presione Ok o Cancel. PRI[NT] [Variable] Muestra el valor de una o todas las variables de

acoplamiento. PROMPT [Text] Muestra el texto indicado. QUIT [APPLICATION] Termina la ejecución de un archivo de comandos o cierra la

ventana de comandos. Si añade el parámetro Aplicación cerrará PL/SQL Developer.

R[UN] Ejecuta las instrucciones almacenadas en el buffer. REM[ARK] [Text] Comenta una línea. SET AUTOP[RINT] [ON | OFF] Determina si las variables se muestran automáticamente

después de ejecutar una sentencia SQL o un bloque de código PL/SQL.

SET COLSEP [Separator | OFF] Determina el separador de las columnas (por defecto =” ”) SET CON[CAT] [Character | ON | OFF] Determina el carácter que termina la referencia a una

variable de sustitución (por defecto =). SET DEF[INE] [Character | ON | OFF] Determina el carácter que inicia una referencia a una

variable de sustitución (por defecto =&). SET ECHO [ON | OFF] Determina si se muestran los comandos ejecutados en un

archivo de comandos SET ESC[APE] [Character | ON | OFF] Determina el carácter que evita el carácter de inicio de una

referencia a una variable de sustitución (por defecto = \) SET FEED[BACK] [ON | OFF] Determina si se muestra el número de columnas afectadas

por una instrucción SQL. SET HEA[DING] [ON | OFF] Determina si las cabeceras se muestran sobre las columnas

de un conjunto de resultados. SET LONG [Width] Determina el ancho máximo a mostrar para una columna de

Page 49: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 49

Comando Significado tipo long.

SET NUM[WIDTH] [Width] Determina el ancho máximo a mostrar para una columna de tipo long sin precisión.

SET PAGES[IZE] [Size] Determina el número de líneas que se muestran de un conjunto de resultados, antes de que se repitan los encabezados del mismo.

SET PROMPT [Prompt] Reemplaza al indicador (prompt) estándar SQL>. En vez de utilizar texto puede también utilizar las variables [user], [db] o [connection].Además puede incluir variables de acoplamiento (set prompt: bind_var_name).

SET SCAN [ON | OFF] Determina si las variables de sustitución deben escanearse. SET SERVEROUT[PUT] [ON | OFF] [SIZE n] Determina si se muestran los resultados de las llamadas a

dbms_output.put_line, y cual es el tamaño del buffer de salida. El valor “n” puede ser “UNLIMITED” para un tamaño de buffer ilimitado.

SET SPOOL*DIRECTORY [Directory] Determina en que directorio se almacenarán los archivos, si el usuario no especifica una ruta al ejecutar el comando SPOOL.

SET TERM[OUT] [ON | OFF] Determina si se muestran los resultados de las instrucciones SQL ejecutadas.

SET TIMI[NG] [ON | OFF] Determina si se muestra la duración de ejecución de las instrucciones SQL.

SET VER[IFY] [ON | OFF] Determina si se muestran las variables de sustitución cuando se usan en una instrucción SQL o en un bloque de código PL/SQL.

SHO[W] ERR[ORS] [Type Name] Muestra los errores previos de compilación o los errores de un objeto específico.

SHO[W] REL[EASE] Muestra la información de la versión de Oracle para la conexión actual.

SHO[W] SQLCODE Muestra el código SQL de la instrucción SQL ejecutada. SHO[W] USER Muestra el usuario conectado actualmente. SPO[OL] [Filename | APPEND | OFF | OUT] Inicia, detiene o imprime[OUT] el volcado de datos. Si el

valor Filename contiene la extensión .zip, los datos volcados a través de la salida de datos será comprimida en un archivo con dicha extensión.

STA[RT] [Filename] [Parameter list] Ejecuta el archivo de comandos especificado, pasándole los parámetros especificados.

STORE SET [Filename] Almacena los valores de todas las opciones en un archivo. Puede ejecutar ese archivo posteriormente para restablecer esas opciones.

UNDEF[INE] Variable Borra la variable de sustitución indicada. VAR[IABLE] [Variable] [Datatype] Define una variable de acoplamiento, muestra una o todas

las variables de acoplamiento. WHENEVER [OSERROR | SQLERROR] [Action] Especifica que acción se debe realizar siempre que se

produzca un error del sistema operativo o de SQL. Las acciones pueden ser EXIT o CONTINUE, seguidas opcionalmente de COMMIT o ROLLBACK.

Los comandos de la lista mostrados anteriormente son los mismos comandos soportados en SQL*Plus. La lista de comandos que se muestra a continuación es específica de PL/SQL Developer:

Comando Función BEAUT[IFY] Archivo | Objeto Formatea el objeto de base de datos o el archivo

especificado, empleando las reglas actuales o las reglas especificadas mediante el comando SET BEAUTIFIER.

BROWSE Objeto Selecciona el objeto en el Explorador de Objetos.

Page 50: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 50

EDIT Objeto Abre una ventana editable que le muestra la definición del objeto.

EDITD[ATA] Tabla | Vista Abre una ventana de consulta SQL para la tabla o vista especificada permitiéndole editar los resultados.

EXPORT[DATA] Tabla Abre la herramienta de exportación para la tabla especificada.

INFO Muestra la ventana de información de la conexión. PROP[ERTIES] Objeto Muestra la ventana de propiedades para el objeto

especificado. QUERY[DATA] Tabla | Vista Abre una ventana de consulta SQL para la tabla o vista

especificada mostrando los resultados de sólo lectura. REC[OMPILE] Objeto Vuelve a compilar el objeto especificado. RUNTEST[SET] TestSetFile [LogFile] Ejecuta el conjunto de pruebas especificado y guarda el

resultado del mismo en un archive de log. SET BEAUT[IFIERRULES] [Archivo] Utiliza de forma temporal las reglas del BEAUTIFIER.

Puede ser utilizado con el comando BEAUTY. SET COL[WIDTH] [Ancho] Determina el ancho máximo de una columna en un conjunto

de resultados. Si el valor es igual a = 0, el ancho de la columna es ilimitado. Por defecto el valor es 80.

SET EXEC[PAUSE] [ON | OFF] Pausa la ejecución en el siguiente comando (ON), o continúa la ejecución del siguiente comando (OFF).

SHOW CONN[ECTION] Muestra información sobre todas las conexiones de PL/SQL Developer.

SQLPLUS Abre SQL*Plus con el archivo actual. TEST Unidad de programa Abre una ventana de prueba con un archivo de prueba

estándar para la unidad de programa especificada. VIEW Objeto Abre una ventana de sólo lectura con la definición del

objeto. ZIP Archive [File | Directory] Añade el archivo o directorio al archivo comprimido. Si el

se omite el parámetro File o Directory, se mostrará el contenido del archivo comprimido.

Page 51: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 51

9. Crear y modificar objetos. Durante el proceso de desarrollo de código PL/SQL normalmente necesitará crear una tabla, modificar una restricción o un índice, reiniciar una secuencia, etc. PL/SQL Developer posee diversas funciones que le permiten crear y modificar tablas (y sus elementos relacionados), secuencias, sinónimos, librerías, directorios, usuarios y roles. Este capítulo no explica la funcionalidad de esos objetos, simplemente explica como crearlos, modificarlos y ver sus propiedades. Para más información acerca de la funcionalidad de cada objeto, vea la documentación de Oracle. Para crear un objeto, puede presionar el botón Nuevo situado en la barra de herramientas y seleccionar el tipo de objeto correspondiente, o seleccionar el elemento Nuevo en el menú Archivo. De forma alternativa también puede hacer clic con el botón derecho del ratón sobre la carpeta principal del tipo de objeto que desea crear y seleccionar el elemento Nuevo desde el menú contextual. Para modificar un objeto, selecciónelo en el Explorador de Objetos, haga clic con el botón derecho del ratón sobre él, y seleccione el elemento Editar desde el menú contextual. No puede cambiar el nombre de un objeto de esta forma, debe utilizar la función Renombrar desde el Explorador de Objetos siempre y cuando el tipo de objetos soporte esta función. Si quiere ver el objeto, seleccione el elemento Ver desde el menú contextual. De forma adicional puede duplicar un objeto si selecciona el elemento Duplicar desde el menú contextual del Explorador de Objetos. Aparecerá la ventana del editor de objetos con todas las propiedades rellenas, excepto la propiedad Owner (si es aplicable) y la propiedad Name. De esta forma puede crear rápidamente un objeto similar para realizar pruebas sobre el.

9.1 El editor de tablas. El editor de la definición de tablas tiene siete pestañas para varios aspectos de una tabla:

En la parte inferior del editor, puede ver los siguientes botones: • Aplicar – Aplicará todas las modificaciones que haya realizado en el editor a la base de datos.

Page 52: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 52

• Refrescar – Recupera la información de la base de datos, descartando cualquier cambio que haya realizado.

• Cerrar – Cierra la ventana del editor. • Ayuda – Muestra la ayuda en línea. • Consultar – Llama a la ventana de consulta SQL con una consulta que le permite ver y editar los

datos de la tabla. • Ver SQL – Muestra un editor de texto con las instrucciones SQL resultantes de los cambios

realizados en el editor. Si no ha realizado ningún cambio en el objeto, mostrará la sentencia SQL completa de creación de la tabla. Los siguientes capítulos describen las diferentes pestañas del editor de definición de la tabla.

Pestaña General. La pestaña General que se muestra en la imagen, contiene el propietario de la tabla y el nombre, información de almacenamiento, clúster y comentarios. Para una nueva tabla puede dejar todas las propiedades en blanco, excepto el nombre. El resto de las propiedades tendrán un valor por defecto. • Owner – El usuario conectado a la base de datos. • Tablespace – El tablespace por defecto del usuario actual. • %Free – 10 • %Used – 40 • Initial transaction entries – 1 • Maximum transaction entries – 255 Los valores por defecto de las propiedades de los segmentos (initial extent, next extent, %increase, minimum extents and maximum extents) dependen de los valores por defecto correspondientes del tablespace seleccionado. La información del clúster, de almacenamiento y las propiedades de duración de la tabla son mutuamente excluyentes, debido a que un clúster define de forma implícita las características de almacenamiento de una tabla, y las tablas temporales no pueden agruparse en modo clúster y también tienen implícitas las características de almacenamiento. Si selecciona External como forma de organización de la tabla. PL/SQL Developer deshabilitará las propiedades de almacenamiento y hará visible una nueva pestaña llamada External donde podrá definir el directorio externo y las propiedades de los archivos. Si introduce o selecciona el nombre de un clúster, las propiedades de almacenamiento y duración se volverán de sólo lectura y podrá introducir las columnas del clúster. Si borra el nombre del clúster obtendrá el efecto contrario. Si define una tabla como temporal, el clúster y la información de almacenamiento se volverán de sólo lectura y puede definir si las filas se guardan después de ejecutar una instrucción commit. Si define una tabla organizada mediante índices, debe definir una clave primaria. Para las tablas que no están organizadas mediante índices no es un requisito. Si esta modificando una tabla existente, no puede cambiar todas las propiedades. Los valores del tablespace, initial extent, minimum extents, clúster information, las propiedades de almacenamiento y de clúster no pueden modificarse para una tabla existente. Si desea cambiar cualquiera de esas propiedades debe marcar la opción Recreate table en la parte superior de la pestaña General. Todos los datos, disparadores y claves foráneas se borrarán con lo que debe tener cuidado cuando utilice esta opción.

Page 53: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 53

Pestaña Columnas. En la pestaña Columnas puede ver, añadir, borrar, mover y modificar las columnas de una tabla. Si está creando una tabla basada en un objeto, puede seleccionar el tipo de objeto en esta pestaña:

Para añadir una columna puede presionar el botón Insert columna, o puede comenzar a teclear la información de una nueva columna en la ultima fila (lo que creará una nueva fila vacía). La columna Tipo contiene una lista de sugerencias con los tipos de datos más comunes, pudiendo utilizar cualquier otro tipo de datos que no se encuentren en la lista. La columna Valor por defecto requiere que introduzca un valor en el formato apropiado, por ejemplo las cadenas de texto deben ir entre comas simples. Para borrar una columna, presione el botón Eliminar columna. Esto borrará la columna que tiene el foco de la aplicación o todas las columnas seleccionadas. Puede seleccionar todas las columnas si presiona en la cabecera de la fila. Si pulsa con el botón izquierdo del ratón y lo arrastra seleccionará un rango de filas. Si presiona la tecla Control mientras hace clic en la cabecera de una fila podrá seleccionar de forma individual múltiples columnas. Para mover una o más columnas, selecciónelas como se describe en el párrafo anterior. Ahora puede hacer clic con el botón izquierdo del ratón en una de las cabeceras de las filas y mover las filas seleccionadas a la posición deseada. Para una columna virtual (por ejemplo, la columna email en el ejemplo anterior) puede introducir la expresión en el campo Defecto/Expr. Para columnas reales este campo contiene el valor por defecto. No puede cambiar el nombre de las columnas de tablas existentes a no ser que se encuentre utilizando Oracle 9.2 o posterior. Tampoco puede borrar dicha columna a no ser que se encuentre utilizando Oracle 8i o una versión superior. Para superar estas limitaciones puede marcar la opción Recreate table situada en la pestaña General. Las consecuencias del uso de esta opción se describieron en el capítulo anterior. Observe que si cambia el nombre de una columna se propagarán los cambios a las restricciones de las columnas, índices y columnas de tipo clúster. Si selecciona el propietario del tipo y el nombre del tipo en la parte superior de la pestaña, creará una tabla basada en ese tipo de objeto. Los nombres de las columnas y sus tipos se encuentran definidos y restringidos a los atributos del tipo de objeto. Puede definir si una columna puede ser nula, su valor por

Page 54: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 54

defecto, sus propiedades de almacenamiento y sus comentarios. Si desea cambiar el tipo de objeto posteriormente, debe seleccionar la opción Recreate table en la pestaña General.

Pestaña Claves. En la pestaña Claves puede ver, añadir, borrar y modificar las claves primarias, únicas y foráneas de la tabla:

Puede manipular la rejilla de la misma forma que la rejilla de la pestaña Columnas. Puede añadir, borrar y modificar las restricciones comprobación (check constraints). Puede mover las restricciones pero no tendrá ningún efecto, ya que no están realmente ordenadas. Observe que la información de almacenamiento del índice subyacente utilizado para forzar que se cumpla una clave primaria o una clave única no está definida en esta pestaña. Si la restricción está habilitada, existirá el correspondiente índice en la pestaña Índices con el mismo nombre. Para este índice puede definir la información de almacenamiento. Deshabilitando o borrando una clave de tipo primario o único borrará de forma implícita el índice subyacente. La columna Tipo tiene una lista que le permite seleccionar el tipo de la clave Primary, Unique o Foreign key. De forma rápida puede seleccionar el tipo correcto si selecciona el primer carácter (P, U o F). Observe que sólo puede tener una clave primaria, y que el valor por defecto de esta columna (Primary o Unique) depende de esto. Si cambia el tipo de la clave afectará a las columnas Tabla referenciada, Columnas referenciadas y Borrado ya que sólo son validas para restricciones de tipo foráneo. Si cambia el tipo de la clave a Foreign, borrará de forma implícita el índice. Para definir las columnas que se aplican a la clave, teclee los nombres de las columnas en la celda apropiada (separando los valores mediante comas), o presione el botón que se encuentra dentro de la celda. Esto las cargará en la pantalla de selección de columnas donde puede fácilmente añadir, borrar o mover las columnas que formarán la clave:

Page 55: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 55

Para las claves foráneas puede teclear o seleccionar la tabla a la cual referencia seleccionando la columna Tabla referenciada. Automáticamente PL/SQL Developer seleccionará las columnas por defecto, basándose en las claves primaria o única de la tabla. La lista de selección para estas columnas muestra todos los conjuntos de columnas que forman las claves primaria o única para la tabla referenciada, y son además los únicos candidatos aquí. En la lista Borrado puede definir que acción debe realizarse para los registros de las tablas hijas cuando el registro padre se borra. La acción Set null esta soportada en Oracle8i y versiones posteriores. Si esta utilizando Oracle8 o una versión posterior, puede de forma adicional definir si la restricción es Diferible y su estado inicial. Esas dos opciones están obviamente relacionadas: no puede tener una restricción de tipo No diferible en una restricción que inicialmente es Diferible.

Page 56: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 56

Pestaña Comprobaciones. En la pestaña Comprobaciones puede ver, añadir, borrar y modificar las restricciones de la tabla:

Puede manipular la rejilla de la misma forma que la rejilla de la pestaña Columnas. Puede añadir, borrar y modificar las restricciones de comprobación (check constraints). La columna Condición debe contener una expresión de tipo boolean que debe establecerse a verdadero/falso para todas las filas de la tabla. No puede aplicar una restricción de comprobación si una o más filas de una tabla vulneran esta condición a no ser que desmarque la opción Habilitada. Puede habilitar la restricción de comprobación después de corregir las filas que vulneran dicha restricción. Si esta utilizando Oracle8 o una versión posterior, puede de forma adicional definir si la constante es Diferible y su estado inicial. Esas dos opciones están obviamente relacionadas: no puede tener una restricción de tipo No diferible en una restricción que inicialmente es Diferible.

Page 57: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 57

Pestaña índices. En la pestaña índices puede ver, añadir, borrar o modificar los índices de la tabla:

Puede manipular la rejilla de la misma forma que la rejilla de la pestaña Columnas. Puede añadir, borrar y modificar los índices. La propiedad Propietario del índice puede dejarse en blanco, el propietario por defecto será el usuario que se encuentre conectado a la base de datos. Si desea utilizar un propietario diferente para el índice, selecciónelo de la lista. El tipo de índice puede ser Normal, Unique, o Bitmap. Este último sólo se encuentra disponible en servidores Oracle7.3 o en versiones posteriores. Observe que sólo puede crear un índice único si las columnas de cada fila de la base de datos son únicas. Como este no es nuestro caso no podemos aplicar este índice a la base de datos. Para definir las columnas de la tabla que desea indexar, simplemente teclee los nombres de las columnas en la celda apropiada (separadas mediante comas), o presione el botón situado dentro de la celda. Esto llamará a una pantalla de selección de columnas donde podrá fácilmente añadir, borrar u ordenar las columnas del índice. Para los índices basados en funciones, puede especificar las funciones, separadas mediante comas. Para índices descendentes, coloque el texto DESC después del nombre de la columna. Adicionalmente puede habilitar la compresión para el índice, incluyendo el número de columnas prefijadas y definir el índice como índice inverso. Si el índice es para una clave primaria o única entonces el usuario, el tipo y las columnas no pueden modificarse. Esas propiedades derivan de la restricción. Si cambia el nombre de una clave cambiará automáticamente el nombre del índice correspondiente, si cambia las columnas de una restricción cambiará las columnas del índice correspondiente. El propietario del índice será el mismo propietario que el de la tabla y el tipo del índice siempre será único. Puede ver o modificar los parámetros de almacenamiento si presiona el botón situado dentro de la celda. Esto llamará al editor de almacenamiento:

Page 58: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 58

Para índices nuevos no necesita introducir ningún tipo de información, cada propiedad tiene su valor por defecto: • Tablespace – El tablespace por defecto del usuario actual. • %Free – 10 • Initial transaction entries – 2 • Maximum transaction entries – 255 Los valores por defecto de las propiedades de los segmentos (initial extent, next extent, %increase, minimum extents and maximum extents) dependen de los correspondientes valores por defecto del tablespace. La propiedad %Used no puede utilizarse con los índices. Observe que, si modifica las propiedades %free, initial extent, and minimum extents de un índice existente, implicará que el índice y las restricciones se borren y se vuelvan a crear para aplicar los cambios. Para índices largos este proceso puede emplear mucho tiempo.

Page 59: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 59

Pestaña Privilegios. En la pestaña Privilegios, puede asignar o revocar privilegios sobre una tabla a los usuarios y roles:

Puede manipular esta rejilla de la misma forma que la rejilla situada en la pestaña Columnas. Puede añadir, borrar o modificar un usuario o rol asignado. Borrar un usuario o rol equivale a revocar todos sus privilegios individuales. Usuario/Rol es el usuario o rol al que quiere asignar determinados privilegios. Observe que los privilegios asignados a un rol no serán suficientes para el desarrollo de unidades de programa almacenadas. Si a un usuario le asigna el privilegio de select sobre una tabla a través de un rol y existen referencias a esta tabla en unidades de programa almacenadas, la compilación fallará debido a que se desconoce la tabla. Debe asignarse el privilegio de select directamente si el objeto se utiliza en una unidad de programa que pertenezca al usuario. Las columnas de los privilegios pueden almacenar 3 valores: • (Blank) – El usuario o rol no tiene privilegios. • Yes – El usuario o rol tiene privilegios. • Grantable – El usuario tiene privilegios y puede asignarlo a otros roles.

Los privilegios Select, Insert, Update y Delete permiten realizar estas acciones en los registros de las tablas. El privilegio References permite crear claves foráneas a esta tabla. El privilegio Alter permite modificar la definición de la tabla mediante el comando alter table. El privilegio Index permite crear un índice en la tabla.

Page 60: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 60

Pestaña Particiones. La pestaña Particiones sólo es visible cuando crea una tabla o cuando edita una tabla particionada existente:

En la parte superior de la pestaña puede seleccionar el tipo de partición, Range, Hash o List así como las columnas de la partición. En la rejilla puede definir el nombre, los valores de la columna y las opciones de almacenamiento de cada partición. Si ha definido más de una columna, debe separar los valores mediante comas. Si selecciona el tipo de la partición como Range, PL/SQL Developer habilitará una nueva pestaña llamada Subpartition en la que podrá definir sub particiones de manera adicional.

Page 61: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 61

Pestaña Externa

Si el tipo de organización de la tabla ha sido definida como externa en la pestaña General, esta pestaña se volverá visible.

Desde aquí tiene acceso al tipo de driver utilizado y a los datos de las propiedades que definen esta tabla como externa

Page 62: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 62

Ver y modificar la definición de la tabla mediante SQL. Después de crear una tabla, o modificar una tabla existente, puede ver el texto SQL resultante si presiona el botón Ver SQL. Después de añadir un comentario a la tabla y modificar las columnas ename y job de opcionales a obligatorias, el texto de la instrucción SQL se parecerá al siguiente:

Puede guardar el texto SQL a un archivo, copiarlo al portapapeles o abrirlo en una nueva Ventana de Comando utilizando los botones situados en la parte derecha de la ventana. El botón Imprimir situado en la barra de herramientas le permitirá imprimir el texto SQL. Puede hacer cambios en el texto SQL y aplicarlos posteriormente. Después de aplicar esos cambios, la ventana volverá al modo formulario y refrescará la definición de la tabla. Los cambios realizados en el texto SQL se reflejarán inmediatamente en los formularios. Si presiona otra vez el botón Ver SQL, la ventana volverá al modo formulario, descartando los cambios sin aplicar que haya realizado al texto SQL. Si presiona la opción Ver en el Explorador de Objetos para ver la definición de la tabla, el botón Ver SQL mostrará el texto SQL de creación de la tabla sin mostrar el comando drop. De esta forma puede guardar el texto de definición de la tabla en un archivo o copiar su definición a otra base de datos o a otro usuario.

9.2 El editor de secuencias. El editor de secuencias le permite crear o modificar fácilmente una secuencia:

Page 63: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 63

La mayoría de las propiedades del editor de secuencias tienen un valor por defecto, con lo que necesitará introducir un nombre cuando cree una nueva secuencia: • Owner – El propietario conectado a la base de datos. • Minimum value – 1 • Maximum value – Unlimited • Initial value – 1 • Increment by – 1 • Cache size – 20 • Cycle – Off • Order – Off

9.3 El editor de sinónimos. El editor de sinónimos le permite crear y modificar fácilmente un sinónimo:

El valor por defecto del campo Owner será el usuario conectado a la base de datos. Marcando la opción Public se creará un sinónimo público y el estado de la propiedad Owner pasará a ser de sólo lectura. Los campos Object Owner y Object Name tienen una lista de sugerencias para seleccionar fácilmente una traducción para el objeto del sinónimo. Si el campo Object owner está vacío, la lista del campo Object name mostrará todos los objetos.

9.4 El editor de librerías. El editor de librerías le permite fácilmente crear o modificar una librería:

El valor por defecto para la propiedad Owner será el usuario conectado a la base de datos, pudiendo utilizar la lista de sugerencias para crear una librería con un propietario diferente. La propiedad Filespec almacena la ruta completa de la librería 3GL que desee utilizar. Si se encuentra desarrollando en el servidor de la base de datos, entonces puede utilizar el botón Select DLL file para seleccionar la librería de vínculos dinámicos. De otra forma, tiene que teclear la ruta completa y el nombre de la DLL (Windows) o del objeto compartido (Unix). PL/SQL Developer no comprueba la validez de la propiedad Filespec.

Page 64: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 64

9.5 El editor de directorios. El editor de directorios le permite crear o modificar un directorio fácilmente, que podrá ser utilizado para almacenar archivos de tipo BFILE:

Si se encuentra desarrollando en el servidor, puede utilizar el botón Select directory para seleccionar la ruta del directorio. PL/SQL Developer no comprueba si la ruta del directorio es correcta.

9.6 El editor de trabajos de la base de datos. El editor de trabajos le permite crear y modificar trabajos de la base de datos:

Crear un nuevo trabajo equivale a realizar una llamada a dbms_job.submit. Modificar un trabajo existente equivale a realizar una llamada a dbms_job.change. Para más información acerca de los trabajos, vea el capítulo DBMS_JOB en el manual Oracle Supplied Packages Reference. El botón Abrir PL/SQL Editor situado al lado del campo What abre el editor de PL/SQL con resalto de sintaxis, asistente de código, etc.…

9.7 El editor de listas.

Page 65: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 65

El editor de listas le permite crear o modificar listas :

Para el nombre de la tabla puede seleccionar un tabla existente o puede presionar el botón Crear para crear una nueva tabla (vea el capítulo 9.8). Para más información consulte los siguientes manuales de Oracle: • Application Developer's Guide - Advanced Queuing • Supplied PL/SQL Packages and Types Reference

9.8 El editor de tablas de listas avanzadas. El editor de tablas de listas le permite crear o modificar una tabla de listas avanzada:

En la pestaña General puede definir el nombre, los parámetros de almacenamiento y los comentarios para la tabla. En la pestaña Privilegios puede asignar privilegios sobre la tabla a usuarios y roles. Para más información vea el capítulo 9.1. En la pestaña Queue puede introducir la información de definición de la tabla. Para el campo payload type puede seleccionar un tipo de objeto existente o RAW para crear una cola de tipo RAW. Para más información consulte los siguientes manuales de Oracle: • Application Developer's Guide - Advanced Queuing • Supplied PL/SQL Packages and Types Reference

Page 66: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 66

9.9 El editor de usuarios. El editor de usuarios le permite crear o modificar un usuario, sus privilegios y las cuotas de los tablespaces:

Observe que necesita privilegios del sistema (como los que provee el rol DBA) para ver y modificar la información del usuario.

Pestaña General. En la pestaña general sólo necesita introducir el nombre del usuario y la contraseña. Todas las demás propiedades tienen un valor por defecto: • Default tablespace – SYSTEM • Temporary tablespace – SYSTEM • Profile – DEFAULT • Password expire – Off • Account Locked – Off

Si modifica un usuario existente, el campo password de dicho usuario no se mostrará. Introduzca una nueva contraseña para cambiarlo o déjelo en blanco para mantener el valor del password actual. Si el usuario se identifica de forma externa, usted no puede introducir un password.

Page 67: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 67

Privilegios sobre objetos.

Esta pestaña le permite ver y modificar los privilegios sobre objetos asignados al usuario. Aquí no se incluyen los privilegios que se han autorizado indirectamente a través de un rol. En la primera columna puede ver el objeto en el cual se asignan los privilegios al usuario. El resto de las columnas representan un privilegio específico. Cada privilegio puede tener los siguientes valores: • (Blank) – El usuario no tiene privilegios. • Yes – El usuario tiene privilegios. • Grantable – El usuario tiene privilegios y puede asignarlo a otros usuarios o roles.

Privilegios sobre roles.

Esta pestaña muestra los roles asignados a un usuario. Cada rol sobre un privilegio puede ser Autorizable, con lo que el usuario puede asignarlo a otros usuarios y roles. Si un privilegio sobre rol esta establecido como Defecto, el rol se habilitará por defecto cuando el usuario se conecte al sistema. Si no es el rol por defecto, el privilegio sobre el rol debe ser activado para la sesión actual mediante el comando set role después de que el usuario se haya conectado.

Page 68: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 68

Privilegios del sistema.

Esta pestaña muestra los privilegios del sistema asignados al usuario. Cada privilegio puede ser Autorizable, con lo que el usuario puede asignarlo a otros usuarios y roles.

Pestaña Cuotas.

Esta pestaña muestra las cuotas de los tablespaces para el usuario. Puede introducir el número máximo de bites, kilo bites o mega bites que se le asignarán al usuario, o puede especificar que la cuota para el usuario es ilimitada.

9.10 El editor de roles.

Page 69: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 69

El editor de roles le permite crear o modificar un rol y sus privilegios:

Por defecto un rol no necesita identificarse. Puede definir el tipo de identificación, mediante contraseña o mediante identificación externa para un rol. La identificación mediante contraseña requiere que introduzca una contraseña, y es útil si el rol no esta asignado por defecto a los usuarios. Dicho rol necesita establecerse después de que el usuario se conecte al sistema, lo que requiere una password. Las otras tres pestañas (Privilegios sobre objetos, Privilegios sobre roles y Privilegios del sistema) funcionan de la misma forma que las pestañas correspondientes en la definición de los usuarios.

9.11 El editor de perfiles. El editor de perfiles (profiles) le permite editar las restricciones de los recursos, de las contraseñas y los usuarios que pertenecen a un determinado perfil:

Cada uno de los límites del editor puede establecerse al valor Default, en cuyo caso el valor se heredará del perfil estándar DEFAULT, a Unlimited, o a un valor concreto. En la pestaña Usuarios puede definir a que usuarios se le aplica el perfil. Observe que si elimina un usuario de un perfil determinado, este se asignará al perfil Default.

Page 70: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 70

9.12 El editor de vínculos de bases de datos. El editor de vínculos le permite crear y editar vínculos de la base de datos (database links).

Observe que el editor de vínculos de bases de datos no mostrará las propiedades Password y Authenticated By cuando edite un vínculo de bases de datos. Tendrá que introducir esta información cada vez que necesite editar un vínculo.

Page 71: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 71

10. Planificador de tareas. Puede utilizar la herramienta DBMS Scheduler para acceder al planificador de tareas de Oracle (DBMS_SSCHEDULER) incluido a partir de la versión 10G de Oracle Server. Para utilizarlo seleccione el elemento Planificador de tareas desde el menú Herramientas o haga clic con el botón derecho del ratón sobre el objeto Scheduler y seleccione la opción Editar o Ver desde el menú contextual. Observe que para obtener información más detallada sobre la funcionalidad DBMS_SCHEDULER puede dirigirse a la documentación de Oracle, más concretamente a la guía Oracle Database Concepts para ver los conceptos del planificador de tareas de Oracle y a la guía de referencia Oracle Database PL/SQL packages and Types, para información sobre la interfaz de programación. Una vez ejecutado el Planificador de tareas, podrá ver una ventana como la que se muestra a continuación:

En la parte izquierda de la pantalla, puede ver las carpetas para los distintos objetos que puede utilizar el Planificador de tareas así como carpetas para los trabajos en ejecución. Las carpetas Windows Groups, Jobs y Job classes son de sistema y se muestran inmediatamente en la raíz de la carpeta correspondiente. Schedules, Programs y Jobs son propiedad de usuarios específicos por lo que cada carpeta contiene subcarpetas para los propietarios. En la parte superior derecha de la pantalla, puede ver las propiedades de los objetos seleccionados, en la parte inferior, justo debajo de las propiedades se muestran detalles adicionales de los objetos seleccionados. Cuando esté creando o editando objetos, puede introducir la información desde aquí.

Page 72: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 72

Horarios.

Un horario especifica cuando y cuantas veces se ejecuta una tarea. Los horarias pueden compartirse entre múltiples trabajos. Por ejemplo, el fin de un trimestre, laboralmente hablando, es un marco de tiempo común para muchos trabajos. En vez de tener que definir un horario para cada uno de los diferentes trabajos que se definen, puede indicar un horario común para todos ellos.

Ventanas.

Page 73: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 73

Puede utilizar una ventana para ejecutar automáticamente un trabajo o para cambiar la localización de los recursos de los trabajos utilizando diferentes periodos de tiempo al día, semana, etc.… Una ventana está representada por un intervalo de tiempo con una hora de inicio y de fin bien definida. Por ejemplo, entre las “12 Am” y “6 Pm”.

Puede especificar de forma individual las propiedades del horario para la ventana definida. También puede, de forma alternativa, seleccionar un horario existente para la ventana que acaba de crear. Todas las propiedades del horario se muestran en letra cursiva, indicando que se refieren al horario seleccionado. Si omite una o mas propiedades de un horario, el horario se borrara indicándole que tiene un horario personalizado. Esta capacidad de PL/SQL Developer le permite utilizar un calendario ya existente como si fuese una plantilla. En la parte inferior de la ventana puede añadir o eliminar la pertenencia a un grupo de ventanas para la ventana de tiempo actual, activando o desactivando la opción correspondiente.

Grupos de ventanas.

Los grupos de ventanas pueden crearse para facilitar su uso cuando se encuentre planificando diferentes trabajos. Si un trabajo debe ejecutarse durante diferentes periodos de tiempo a lo largo del día, de la semana, del mes, etc.… puede crear una ventana de tiempo por cada periodo y luego añadir esas ventanas a un grupo de ventanas. Después puede establecer el horario de ese trabajo a ese grupo de ventanas y el trabajo se ejecutara durante todos los periodos de tiempo definidos en el grupo de ventanas.

Page 74: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 74

Clases de trabajos.

Las clases de trabajos le proporcionan una forma de asignar el mismo conjunto de atributos a los diferentes trabajos. Puede conceder privilegios de ejecución a otros usuarios o roles que necesiten utilizar las clases de trabajos definidas. Para revocar estos privilegios, haga clic con el botón derecho del ratón sobre una clase y seleccione el elemento Eliminar desde el menú contextual.

Programas.

Un programa define la acción o acciones que vamos a ejecutar mediante el Planificador de Tareas. Un programa incluye una acción, como la llamada a un procedimiento almacenado, el nombre de un archivo ejecutable que se encuentre dentro del sistema de ficheros del sistema operativo o el texto del código dentro de un bloque de PL/SQL. Un programa es una entidad dentro de un trabajo. Un trabajo se ejecuta cada cierto tiempo o porque se ha disparado un evento determinado invocando un programa. Los trabajos son creados de manera que apunten a un programa, lo que significa que diferentes trabajos pueden usar el mismo programa y ejecutar el programa a diferentes horas y con configuraciones diferentes. Con los privilegios adecuados, diferentes usuarios pueden utilizar el mismo programa sin tener que redefinirlo ni cambiarlo. Esto le permite crear librerías de programas, donde los usuarios pueden seleccionar los programas que necesiten ejecutar.

Page 75: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 75

Trabajos.

Los trabajos asocian un programa con un horario y son el principal objeto con el que se trabaja dentro del Planificador de Tareas. Puede crear varios trabajos que apunten al mismo programa pero que se ejecutan en tramos horarios diferentes. Puede omitir los valores por defecto de los argumentos del programa, por lo que varios pueden apuntar al mismo programa pero proporcionar diferentes argumentos. Puede introducir de manera individual las propiedades para un trabajo, horario personalizado, o puede seleccionar un horario ya existente para un trabajo. Todas las propiedades de un horario se mostrarán en cursiva, indicando que se refieren al horario seleccionado. Si omite una o mas propiedades de un horario, el horario se borrara indicándole que tiene un horario personalizado. Esto capacidad de PL/SQL Developer le permite utilizar un calendario ya existente como si fuese una plantilla. Para autorizar Alter privileges a otros usuarios y roles, vaya a la pestaña Privilegios. Para revocar un privilegio, haga clic con el botón derecho del ratón y seleccione el elemento Eliminar desde el menú contextual. Puede ver los detalles y los logs de los trabajos finalizados en la pestaña correspondiente en la parte inferior de la ventana.

10.1 Crear objetos.

Page 76: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 76

Para crear un nuevo objeto, haga clic con el botón derecho del ratón sobre la carpeta correspondiente y seleccione el elemento Nuevo desde el menú contextual. Podrá introducir las propiedades e información detallada sobre el nuevo objeto en la parte derecha de la pantalla. Cuando haya finalizado, presione el botón Aplicar para crear los objetos en la base de datos. Para ver el código SQL del objeto creado, presione el botón Ver SQL. Si desea cancelar la creación de un nuevo objeto simplemente presione el botón Cancelar.

10.2 Editar objetos. Para editar un objeto ya existente, seleccione el objeto en la carpeta correspondiente, en la parte izquierda de la pantalla y edite las propiedades y la información detallada en la parte derecha de la pantalla. Cuando haya finalizado, presione el botón Aplicar para modificar el objeto en la base de datos. Para ver el código SQL del objeto editado, presione el botón Ver SQL. Si desea cancelar la edición de un objeto simplemente presione el botón Cancelar.

10.3 Borrar objetos. Para borrar un objeto existente, seleccione el objeto en la carpeta correspondiente, en la parte izquierda de la pantalla y seleccione el elemento Eliminar desde el menú contextual. PL/SQL Developer le pedirá que confirme la eliminación del objeto seleccionado y posteriormente

10.4 Ver información sobre los trabajos finalizados.

lo borrara permanentemente de la base de datos.

Para ver información relativa a los trabajos que han finalizado su ejecución puede abrir la carpeta Trabajos finalizados. Desde aquí podrá ver una serie de informes predeterminados, como Todos, Fallidos, etc.… Haga clic sobre un informe para ver los detalles del trabajo finalizado:

Los trabajos pueden ser ordenados si hace clic sobre el botón ordenar que se encuentra en la cabecera de las diferentes columnas. Recuerde que puede organizar las diferentes columnas del informe arrastrando y soltando la cabecera de las mismas. Para copiar la información sobre los diferentes trabajos, seleccione la fila, la columna o las celdas que le interesen, haga clic con el botón derecho del ratón y seleccione el elemento “Copiar valore separados por comas” o “Copiar valores separados por tabulados” desde el menú contextual. Si no selecciona ningún rango de columnas o celdas, PL/SQL Developer copiará el informe entero. Puede refrescar la información del informe si presiona el botón Refrescar situado en la parte inferior de la pantalla.

Page 77: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 77

Crear informes personalizados. Para crear un informe personalizado, haga clic con el botón derecho del ratón sobre la carpeta Trabajos finalizados y seleccione el elemento Nuevo desde el menú contextual. PL/SQL Developer le mostrará la siguiente ventana:

En la parte superior puede introducir un nombre para el nuevo informe. En la sección inferior de la ventana, puede definir como se van a consultar los datos de la vista sys.all_scheduler_job_run_details para el informe. Para más información sobre esta vista puede consultar el manual Oracle Database Reference Guide. La lista de selección situada en la parte derecha de la pantalla le permite seleccionar de una forma rápida y clara los campos que formarán parte del informe. La pestaña Lista de campos le permite definir los campos que se mostrarán en el informe. Puede utilizar el carácter * para indicar que desea incluir todos los campos en el informe. La pestaña Clausula Where le permite definir que trabajos se mostrarán en el informe. Por ejemplo para crear un informe que muestre todos los trabajos que se han ejecutado correctamente desde la fecha actual, utilice una clausula where como la que se muestra a continuación:

log_date >= trunc(sysdate) and status = 'SUCCEEDED' La pestaña Clausula Order by le permite definir la lista de campos mediantes los cuales se ordenará el informe. La pestaña Condiciones le permite definir el color con el que se mostrará el trabajo una vez finalizado, si cumple una determinada condición:

La condición puede ser cualquier expresión SQL valida. Puede seleccionar tanto el color del texto como el color de fondo.

Page 78: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 78

Para borrar o editar un informe, haga clic con el botón derecho del ratón sobre el informe deseado y seleccione el elemento correspondiente desde el menú contextual.

10.5 Ver información sobre los trabajos en ejecución. Para ver información relativa a los trabajos que se encuentran en ejecución, haga clic sobre la carpeta Trabajos en ejecución. PL/SQL Developer le mostrará toda la información relativa a los trabajos que actualmente se encuentran en ejecución en la parte derecha de la pantalla.

Page 79: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 79

11. Diagramas. La ventana de diagramas le permite crear una representación gráfica de una selección de objetos. De esta forma puede visualizar fácilmente todos los objetos de la base de datos, o una parte, utilizados en su aplicación o proyecto y sus relaciones:

Puede añadir automáticamente todos los tipos de objetos relevantes de su aplicación a un diagrama, e incluir las relaciones entre ellos. Las claves foráneas y las dependencias entre tablas se incluyen de forma automática. Para grandes diagramas puede añadir estructuras adicionales mediante grupos de objetos. Puede utilizar los diagramas con motivo de documentación, pero también pueden servir como un espacio de trabajo. Si hace clic con el botón derecho del ratón sobre un objeto aparecerá un menú contextual que le permitirá acceder a todas las funciones de dicho objeto, y si hace doble clic sobre un objeto se ejecutará la acción por defecto para el tipo de objeto.

11.1 Crear un diagrama. Para crear un nuevo diagrama, seleccione Ventana de Diagrama desde el submenú Nuevo en el menú Archivo. Aparecerá una ventana vacía de diagrama. Para añadir un objeto de la base de datos al diagrama, arrástrelo desde el Explorador de Objetos a la ventana de diagramas. Puede arrastrar y soltar varios objetos a la vez. Para mover un objeto del diagrama, haga clic sobre la barra de título y arrástrelo a una nueva posición, para ampliar o disminuir el tamaño arrastre el borde o una esquina del objeto. Para borrar un objeto del diagrama, presione la X situada en la parte superior derecha del objeto. Esto sólo afectará al diagrama; los objetos de la base de datos no serán eliminados.

Mostrar y ocultar elementos en un diagrama. Para mostrar u ocultar un objeto concreto del diagrama, haga clic con el botón derecho del ratón en él y vaya al submenú Elementos. Aquí podrá ver un nuevo submenú con todos los elementos del objeto seleccionados. Para una tabla puede seleccionar que elementos de una columna, clave o índice desea mostrar. También puede ocultar la clave o el índice completamente.

Page 80: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 80

También puede hacer clic con el botón derecho del ratón sobre un grupo de objetos o sobre el diagrama para mostrar u ocultar los elementos de los objetos dentro de un grupo de objetos o todos los objetos en el diagrama.

Por defecto, se mostrarán todos los elementos, pero si hace clic con el botón derecho del ratón y selecciona Establecer por defecto todos los elementos visibles, se mostraran la próxima vez que arrastre el objeto a un diagrama. Puede hacer esto para todos los tipos de objetos.

Ordenar elementos. Puede ordenar todos los elementos de un grupo del diagrama si hace clic con el botón derecho del ratón sobre el grupo y selecciona los elementos de menú Ordenar por orden de creación o Ordenar alfabéticamente desde el submenú Elementos. También puede arrastrar y soltar un elemento para ubicarlo en una posición diferente.

Añadir relaciones. Para añadir una relación entre dos objetos, haga clic sobre el icono de un elemento del objeto y arrástrelo hacia el elemento que desea relacionar. PL/SQL Developer dibujará una línea entre los elementos de los objetos. Puede mover la línea hacia otro elemento si la selecciona y mueve la selección hacia arriba o hacia abajo. Para eliminar una línea, selecciónela y presione la tecla Supr. Si añade una tabla al diagrama, las claves foráneas con las otras tablas del diagrama se incluirán de manera automática. Esas relaciones pueden borrarse si fuese necesario. Si un objeto referencia a otro objeto o es referenciado por otros objetos, puede hacer clic con el botón derecho sobre el objeto References Link desde el menú contextual. Aquí podrá seleccionar que referencias desea incluir en el diagrama. Por ejemplo, si hace clic con el botón derecho sobre el paquete employee y selecciona References Link, podrá ver que referencia a las tablas DEPT y EMP:

Por defecto las relaciones se dibujarán mediante líneas rectas. Puede añadir puntos de unión adicionales si hace clic con el botón derecho del ratón en una línea y selecciona Insertar unión desde el menú contextual. Otra forma, puede ser presionando la tecla Ctrl mientras hace clic en una línea. Como resultado de esta acción se añadirá un nuevo punto de selección. Para crear una relación de uno a muchos, haga clic con el botón derecho del ratón y seleccione el elemento Cambiar final de la línea desde el menú contextual. Desde aquí podrá crear relaciones de uno a muchos, relaciones opcionales, etc. Para cambiar el color, el tamaño y la etiqueta de una línea, haga clic con el botón derecho sobre la línea deseada y selecciona el elemento Propiedades del menú contextual:

Page 81: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 81

Si desplaza los objetos contenidos dentro del diagrama, las etiquetas asociadas a las diferentes líneas también se desplazarán.

Añadir grupos. Para organizar un diagrama grande, puede crear grupos de objetos. Los grupos de objetos pueden tener colores distintos y un titulo situado en la parte superior o inferior, en la izquierda o derecha:

Para añadir un grupo, haga clic con el botón derecho del ratón en una zona vacía del diagrama y seleccione Nuevo grupo en el menú contextual. Aparecerá un nuevo grupo en dicha zona, en el cual podrá ajustar el tamaño a las dimensiones apropiadas. Todos los objetos que queden cubiertos completamente por el grupo formaran parte del mismo, si mueve el grupo también moverá los objetos que agrupa. Si presiona la tecla Ctrl. mientas mueve un grupo, los objetos agrupados no se moverán.

Page 82: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 82

Para cambiar la apariencia de un grupo, haga clic con el botón derecho del ratón y seleccione el elemento Propiedades del menú contextual. También puede hacer doble clic sobre el grupo. Aparecerá la siguiente pantalla:

Puede cambiar la fuente, el color de relleno, el color y el tamaño de la línea, hacer el grupo transparente y hacer que el grupo se redimensione automáticamente en función del tamaño del texto. Puede, de manera opcional, introducir el título del grupo y la situación del mismo. Si los grupos creados se solapan , puede hacer clic con el botón derecho del ratón sobre el grupo y seleccionar Enviar al frente o Enviar atrás desde el menú contextual. Para crear una apariencia por defecto para el grupo, haga clic con el botón derecho del ratón y seleccione Establecer por defecto. Esto se aplicará a los grupos que se añadan al diagrama en el futuro.

Añadir notas. Para añadir notas de texto a un diagrama, haciendo clic con el botón derecho del ratón en la ubicación deseada y seleccionando la opción Nueva nota del menú contextual:

Como puede comprobar las propiedades de una nota son las mismas que las propiedades de un grupo pero con diferentes valores. Puede crear una estilo predeterminada para las notas si hace clic con el botón derecho del ratón y selecciona la opción Establecer por defecto del menú contextual. De esta forma se aplicará por defecto el estilo seleccionado a las nuevas notas que cree en el diagrama. Alinear elementos. Puede alinear rápidamente un elemento de un diagrama si hace clic con el botón derecho del ratón y selecciona la opción Alinear a la rejilla desde el menú contextual. De esta forma colocará el elemento seleccionado en una rejilla de 8 píxeles. Para alinear todos los elementos de un diagrama puede hace

Page 83: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 83

clic con el botón derecho del ratón y selecciona la opción Alinear todos a la rejilla desde el menú contextual o presionar el botón correspondiente en la barra de herramientas de la Ventana de Diagramas.

11.2 Zoom. Para hacer zoom sobre un diagrama, haga clic con el botón derecho del ratón y seleccione la opción Zoom desde el menú contextual o presione el botón correspondiente en la barra de herramientas de la Ventana de Diagramas. Puede hacer aumentar el diagrama un 150% o un 200% y reducirlo desde un 90% a un 10%.

11.3 Guardar y abrir un diagrama. Para guardar un diagrama en un archivo, seleccione el elemento Guardar desde el menú Archivo. El diagrama se guardara con la extensión .pdd, que podrá volver abrir más tarde. Para definir una localización estándar para los diagramas, vaya a la página Directorios de las preferencias del programa y establezca la opción correspondiente.

11.4 Actualizar un diagrama. Un diagrama es una representación estática de la base de datos. Si los objetos de la base de datos cambian a lo largo del tiempo, tendrá que actualizar el diagrama para reflejar esos cambios. Para hacerlo, haga clic con el botón derecho del ratón sobre el diagrama y seleccione Actualizar desde la base de datos en el menú contextual. Para actualizar todos los objetos de un diagrama, haga clic con el botón derecho del ratón y seleccione Actualizar todo desde la base de datos o presione el botón correspondiente en la barra de herramientas de la Ventana de Diagramas. Si borra un objeto de la base de datos, debe borrarlo también del diagrama. Si cambia el nombre de un objeto de la base de datos, tendrá que borrar el objeto del diagrama y añadirlo con el nuevo nombre.

11.5 Imprimir un diagrama. Para imprimir un diagrama haga clic sobre el botón Imprimir situado en la barra de herramientas principal. Para imprimir la vista actual puede presionar el botón Vista de impresión en la barra de herramientas de la Ventana de Diagramas. La PL/SQL Developer determinará automáticamente la orientación de la pagina cuando imprima la vista actual. Puede controlar el tamaño de la página utilizando el botón Tamaño de Página en la barra de herramientas de la ventana de Diagrama. Establezca el tamaño a Automático para determinar automáticamente el tamaño apropiado. Establezca esta opción a Manual para controlar el tamaño de la pagina. Si utiliza grandes diagramas, puede disminuir el zoom y mover los diagramas a una ubicación más apropiada o mover los objetos que forman el diagrama de manera que no ocupen varias páginas.

11.6 Exportar un diagrama. Puede exportar un diagrama a un imagen si hace clic con el botón derecho del ratón sobre el y selecciona Guardar como imagen desde el menú contextual. Seguidamente puede seleccionar el formato (bmp, jpg, wmf o emf). También puede copiar el diagrama a una imagen si hace clic con el botón derecho y selecciona Copiar como imagen desde el menú contextual.

Page 84: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 84

12. Informes. Para ejecutar informes sobre los datos de su aplicación o sobre el diccionario de datos de Oracle, puede utilizar las funciones de PL/SQL Developer. Existen un número de informes estándar, y puede crear sus propios informes fácilmente. Puede guardar los informes personalizados en un archivo, que puede incluir en el menú Reports. De esta forma le será más fácil ejecutar los informes que utilice frecuentemente.

12.1 Informes estándar. Puede acceder fácilmente a los informes estándar a través del menú Informes. Si, por ejemplo, selecciona el informe Errores de compilación, PL/SQL Developer le preguntará antes de ejecutar el informe por el tipo de objeto, el propietario y el nombre del objeto para el cual quiere mostrar los errores generados durante el proceso de compilación.

Después de introducir los valores adecuados y presionar el botón Aceptar, se mostrará el informe:

El resultado es un documento HTML que se muestra mediante el visor interno de PL/SQL Developer, o mediante el control ActiveX de Microsoft Internet Explorer, dependiendo de como se encuentre configurada la opción correspondiente en la ventana de preferencias. Posteriormente puede imprimir el informe si presiona el botón Imprimir situado en la barra de herramientas, o guardar el informe en formato HTML presionando el botón Guardar resultados, que se encuentra situado en la parte derecha de la Ventana de informes. El botón Copiar como HTML copia el resultado del informe al portapapeles. El botón Exportar resultados le permite exportar los resultados en formato CSV, TSV o XML, o exportarlos directamente a Excel. El botón Editar informe le permite acceder a la definición del informe, si este no esta bloqueado. Puede hacer clic con el botón derecho del ratón para opciones adicionales.

Page 85: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 85

12.2 Informes personalizados. Los informes personalizados son fáciles de crear. Primero cree un nuevo informe en blanco, presionando el botón Nuevo, situado en la barra de herramientas y seleccione el elemento Ventana de informes en el menú contextual. Aparecerá una ventana vacía del editor de informes.

En el editor puede teclear la consulta SQL que desee utilizar en su informe. Para un informe de tipo maestro/detalle puede utilizar una consulta de unión (se explicará más adelante). Comencemos con la simple, pero bien conocida, tabla emp tecleando la consulta y presionando el botón Ejecutar situado en la barra de herramientas:

Este es un informe muy básico, que sólo utiliza las propiedades por defecto. Los siguientes capítulos describen como puede mejorar la funcionalidad de los informes.

12.3 Variables.

Page 86: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 86

A menudo sus informes necesitarán algún tipo de información adicional para poder ejecutarse. Supongamos que necesita restringir el informe anterior a los empleados de un departamento. En este caso necesitará una variable de sustitución en el texto de la consulta:

select * from emp where deptno = &department order by ename

Cuando ejecute el informe, se le preguntará al usuario el departamento antes de ejecutar la consulta. Esto, por supuesto, no está exento de errores. ¿Que ocurre si el usuario no introduce ningún valor? La consulta lanzará la excepción ORA-00936: missing expresión. Para prevenir este tipo de situaciones, puede utilizar las opciones que se describen en las secciones siguientes. Dichas opciones deben especificarse entre corchetes, de la misma forma que los atributos que forman un documento HTML o XML.

La opción “Name”. El nombre de una variable se utiliza a modo indicación en el formulario de entrada de las variables. Por lo tanto debe asegurarse de que el nombre que utilice para las variables describe el significado de la variable. La opción name es la única que no necesita especificar entre corchetes. Si el nombre contiene espacios u otros caracteres especiales, debe ir encerrado entre comillas dobles. Los dos ejemplos siguientes son iguales:

select * from emp where deptno = &”Department number” order by ename

y select * from emp where deptno = &<name=”Department number”> order by ename

La opción “Hint”. Además de la opción name, puede especificar de manera adicional un texto como sugerencia. El valor almacenado se mostrará en la barra de estado del formulario de entrada de las variables cuando la variable tenga el foco de la aplicación en ese momento:

select * from emp where deptno = &<name=”Department number” hint=”Only employees from this department will be listed”> order by ename

La opción “Type”. La opción type restringe la información que puede introducir el usuario, y controla como se deben introducir los valores en el texto SQL resultante:

select * from emp where deptno = &<name=”Department number” type=”integer”> order by ename

Page 87: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 87

En esta situación el usuario sólo puede introducir valores de tipo integer que sean validos. El valor introducido se reemplazará en el texto de la consulta. Además para cadenas de texto, requiere que el valor se encierre entre comillas. Considere la siguiente consulta de selección:

select * from emp where ename = &<name=”Employee name” type=”string”>

Si introduce el texto SCOTT (sin comillas) en el formulario de entrada de variables, el texto SQL resultante será:

select * from emp where ename = ‘SCOTT’

Los tipos de datos validos son: none, string, integer, float y date. PL/SQL Developer no realizará ningún tipo de validación sobre los valores de tipo date, con lo que de forma adicional puede proporcionar expresiones como sysdate, trunc (sysdate, ‘MM’), etc.

La opción “Required”. Si necesita un valor para una determinada variable, establezca la opción required a “yes” o “true”:

select * from emp where deptno = &<name=”Department number” required=”yes”> order by ename

Ahora sólo podrá ejecutar el informe si ha especificado un valor para el número de departamento.

La opción “Default”. Para presentar un valor por defecto a una variable, especifique la opción default:

select * from emp where deptno = &<name=”Department number” default=”10”> order by ename

El valor por defecto puede ser una consulta de selección. Esta consulta debe devolver sólo un valor con una columna. Por ejemplo:

select * from emp where deptno = &<name=”Department number” default=”select min(deptno) from dept”> order by ename

En este caso el valor por defecto será el número de departamento más bajo.

La opción “Ifempty”. Como alternativa a especificar una variable como required o a establecer un valor por defecto para la misma, puede especificar el valor ifempty en caso de que el usuario no especifique ningún valor:

Page 88: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 88

select * from emp where ename like &<name=”Employee name” type=”string” ifempty=”%”>

Si el usuario no especifica un valor, el símbolo del porcentaje será utilizado, y todos los empleados serán recuperados. Esta opción no puede especificarse con la opción required.

La opción “Uppercase”. Si tiene una variable de tipo string y desea convertir de forma implícita su valor a mayúsculas, establezca la opción uppercase a “yes” o “true”:

select * from emp where ename = &<name=”Employee name” type=”string” uppercase=”yes”>

El valor se mostrará tal cual lo ha tecleado pero convertido a mayúsculas en el texto SQL resultante.

La opción “Readonly”. Una variable puede definirse como sólo lectura si especifica la opción readonly a “yes”. El usuario puede ver la variable y su valor pero no puede modificarlo.

La opción “Hidden”. Puede ocultar una variable si especifica la opción hidden =”yes”.

La opción “List”. La opción list le proporciona al usuario una lista con posibles valores. Puede especificar la lista de elementos separándolos mediante comas:

select * from emp where deptno = &<name=”Department number” list=”10, 20, 30, 40”> order by ename

Esto le permite al usuario seleccionar uno de los cuatro elementos de la lista, o teclear un valor diferente. En este caso es mejor utilizar una consulta de selección:

select * from emp where deptno = &<name=”Department number” list=”select deptno from dept order by deptno”> order by ename

De forma adicional puede proveer una descripción para cada elemento:

Page 89: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 89

select * from emp where deptno = &<name=”Department number” list=”10, ACCOUNTING, 20, RESEARCH, 30, SALES, 40, OPERATIONS” description=”yes”> order by ename

A cada elemento le sigue ahora su descripción, y se añade la opción description. La lista sólo mostrará las descripciones, pero el valor del elemento seleccionado será el utilizado en el texto SQL resultante: También puede conseguir el mismo efecto con una consulta de selección de 2 campos:

select * from emp where deptno = &<name=”Department number” list=”select deptno, dname from dept order by dname” description=”yes”> order by ename

Para restringir al usuario a que sólo pueda seleccionar los elementos de la lista, especifique la opción restricted:

select * from emp where deptno = &<name=”Department number” list=”select deptno, dname from dept order by dname” description=”yes” restricted=”yes”> order by ename

Ahora el usuario sólo puede seleccionar los valores de la lista y no puede introducir ningún otro valor manualmente. Los elementos de una lista pueden depender en ocasiones de los valores de otras variables. Imagine que quiere crear un informe que muestre todas las columnas para una tabla específica. La tabla se identifica mediante el propietario y el nombre. Para el propietario puede utilizar una lista con todos los usuarios de la base de datos. Para el nombre de la tabla puede consultar la vista all_tables para el usuario seleccionado:

select * from all_tab_columns where owner = &<name="Owner" type="string" list="select username from all_users order by username"> and table_name = &<name="Table" type="string" list="select table_name from all_tables where owner = :owner order by table_name"> order by column_id

Como puede ver, la consulta de selección para la segunda lista (table), se refiere a la primera variable a través de la variable de acoplamiento :owner. Cada vez que el valor de la variable owner cambie, se rellenarán los elementos de la lista de las tablas.

Page 90: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 90

Observe que el nombre de una variable de acoplamiento no puede superar 30 caracteres y no puede contener espacios en blanco ni otros caracteres especiales. Los espacios en blanco en una variable se convertirán en guiones de subrayado. Si el nombre de la variable hubiese sido Owner of the table, entonces el nombre de la variable de acoplamiento hubiese sido: owner_of_the_table. Observe también que si el valor de una variable está en blanco, la lista dependiente también estará en blanco. No se ejecutará ninguna consulta en esta situación.

La opción “Checkbox”. Si un usuario quiere seleccionar una de dos posibilidades distintas, puede utilizar la opción checkbox. Esta opción necesita ser seguida de valores para las opciones checked y unchecked.

select * from emp order by hiredate &<name=”Descending sort order” checkbox=”desc, asc”>

Aunque siempre necesita especificar 2 valores, uno de ellos puede estar vacío:

select * from emp order by hiredate &<name=”Descending sort order” checkbox=”desc,”>

Ya que el orden por defecto es ascendente, estos 2 ejemplos son equivalentes.

Opciones de prefijo y sufijo. Si el valor de la variable está vacío, puede implicar que se omitan ciertas porciones del texto SQL. Considere el ejemplo en que quiere proveer una columna opcional de ordenación. Si no especifica una columna, la cláusula order by debería omitirse. En este caso puede especificar este texto como prefix o suffix de la variable. Si el valor de la variable este vacío, el prefijo y el sufijo de la variable se omitirán:

select * from emp &<name=”Descending sort column” list=”empno, ename, hiredate” prefix=”order by " suffix=” desc”>

Si no especifica ningún valor para esta variable, el resultado también estará vacío:

select * from emp

Si especifica una columna, el resultado será:

select * from emp order by empno desc

Observe los espacios después del prefijo y antes del sufijo. Son importantes, porque el prefijo, el valor de la variable y el sufijo se concatenan exactamente como se ha especificado.

Page 91: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 91

Caracteres de escape. Si desea utilizar el carácter “ampersand” (&) en un texto SQL y este no debe interpretarse como una variable de sustitución, utilice un doble “ampersand” (&&) en su lugar. El siguiente ejemplo recuperará todos los empleados del departamento ‘R&D’:

select * from emp where emp.deptno in (select dept.deptno from dept where dname = 'R&&order by empno desc

D')

Si hubiese utilizado el texto ‘R&D’, se le habría preguntado por el valor de la variable D.

12.4 Definir el diseño de los informes.

Page 92: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 92

Después de abrir una nueva ventana de informes, de teclear una instrucción de selección y ejecutar el informe, el diseño utilizará las propiedades de estilo por defecto. Tendrá un diseño tabulado, con las propiedades estándar de las fuentes, los estilos de las tablas, colores, etc. Para redefinir el diseño estándar cambie a la pestaña Diseño. Para el nuevo informe la pestaña se parecerá a la que se muestra a continuación:

Como puede ver, puede definir varias propiedades para todos los elementos del diseño (el título del informe, las variables, las tablas y los campos). Si quiere definir las propiedades para un campo, debe presionar el botón Refrescar lista de campos en la barra de herramientas:

Ahora todos los campos del conjunto de resultados de la consulta de selección serán incluidos en la rejilla de diseño. Si deja las propiedades Estilo, Cabecera o Alineación de un campo en blanco, se utilizarán las propiedades correspondientes de Default Field. Después de cambiar las propiedades del diseño, puede ejecutar el informe otra vez para ver el efecto que han tenido los cambios sobre los resultados. Puede, de forma alternativa, habilitar la opción Actualizar automáticamente en la barra de herramientas para refrescar los cambios inmediatamente en los resultados.

Page 93: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 93

Los siguientes capítulos describen varias propiedades del diseño con detalle.

Visualización. Esta casilla de comprobación situada más a la izquierda en la rejilla de diseño indica si el elemento se mostrará o no. Esto le permite suprimir el título del informe o de las variables y le permite controlar si un campo especifico debe mostrarse o no.

Descripción. La descripción del Report Title se mostrará en la parte superior del informe y después de cada salto de página. La descripción de las Variables se mostrará encima de las variables. Para campos individuales puede definir una descripción para sobrescribir el nombre del campo estándar. Esta descripción será utilizada para la cabecera de las columnas.

Estilo. El estilo controla la apariencia de los elementos del diseño. Presione el botón situado dentro de la celda (…) para abrir el editor de estilos: En la lista situada en la parte superior del editor de estilos puede ver todos los estilos estándar y un estilo personalizado. Puede seleccionar un estilo estándar desde la librería de estilos (vea el capítulo 12.5), o puede seleccionar un estilo personalizado desde donde podrá cambiar varias propiedades para el diseño del elemento seleccionado. Observe que el sistema de estilos se basa en el estándar de las Hojas de estilo (CSS). Las propiedades que puede ver en el editor de estilo son las más utilizadas, pero puede añadir otras propiedades y valores debajo de las propiedades estándar. Puede añadir, por ejemplo, una propiedad Height con un valor de 20pt para establecer el alto de la celda a 20 puntos. Visite http://www.w3.org/TR/REC-CSS2

Los botones Copiar y Pegar le permiten copiar las propiedades de un estilo, con lo que

rápidamente puede derivar un nuevo estilo desde un estilo existente.

para más información acerca de las Hojas de estilo (CSS).

Si no define nada para el estilo de los campos, el estilo Default Field de la librería estándar será el utilizado. Puede sobrescribir esto definiendo el estilo. Puede sobrescribir el estilo por defecto a nivel de campo si especifica el estilo correspondiente. Observe que cada cabecera del campo hereda las propiedades del estilo Default Header, con lo que sólo necesita sobrescribir las propiedades que desea cambiar. Si, por ejemplo, define el estilo Default Field, como Verdana, 14 puntos, azul y quiere mostrar la columna EMPNO en Verdana, 14 puntos, rojo, sólo necesita definir el color a nivel del campo EMPNO. El tipo de letra y el tamaño de la letra se heredarán automáticamente del nivel Default Field. Los estilos por defecto de varios elementos de diseño se describen en el capítulo 12.5.

Page 94: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 94

Cabecera. De la misma forma que puede establecer el estilo para los datos de contenidos en campos individuales, también puede establecer el estilo para sus cabeceras. Si no define ningún estilo, se utilizará el estilo Default Field Header de la librería de estilos. Puede sobrescribirlo definiendo el estilo del elemento de diseño Default Header. Puede sobrescribir este estilo por defecto a nivel de campo si especifica el correspondiente estilo de la cabecera. Observe que cada cabecera hereda las propiedades del estilo Default Header, con lo que sólo necesitará sobrescribir las propiedades que desee cambiar.

Alineación. Puede definir la alineación de los elementos del diseño de las siguientes formas: • Left – El elemento se alineará a la izquierda dentro de su celda. • Right – El elemento se alineará a la derecha dentro de su celda. • Center – El elemento se centrará dentro de su celda. • Default – Los números se alinearán a la derecha y todos los demás elementos se alinearán a la

izquierda. • None – Ningún tipo de alineación

Observe que cuando establece la propiedad Text Alignment para un elemento del diseño. Esta definición tiene preferencia sobre la opción de alineación que ha especificado en la rejilla de diseño. Observe también que el efecto de la alineación de los datos contenidos depende de la propiedad Width del elemento de diseño.

Formato. Por defecto el formato de un campo se controla por su tipo de datos, la escala y la precisión. Muy a menudo utilizará los campos calculados o agregados, en los cuales la escala y la precisión se desconocen, en este caso puede especificar un formato. La propiedad formato sólo tiene efecto para los campos de tipo numérico y fechas. Para campos numéricos necesita utilizar el 9 para suprimir los ceros, el 0 para los dígitos normales, la G para el separador de miles, la D para el separador decimal y la E para la notación científica. A continuación se muestran algunos ejemplos:

Formato Valor = 1234 Valor = 5 Valor = 0.1 999G990D00 1,234.00 5.00 0.10 9G990 1,234 5 0 0000 1234 0005 0000 0”%” 1234% 5% 0% 0D000e+00 1.234e+03 5.000e+00 1.000e-01 0D000e-0 1.234e3 5.000e0 1.000e-1

Para campos de tipo fecha puede utilizar los formatos de fecha y hora estándar de Windows.

Page 95: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 95

Salto. La propiedad de diseño Salto le permite estructurar los resultados de sus informes. Supongamos que desea mostrar los departamentos y sus empleados. Puede especificar una consulta como la que se muestra a continuación:

select d.*, e.* from emp e, dept d where e.deptno = d.deptno order by d.deptno, e.empno

Esto creará un simple informe tabular:

Si especifica la propiedad Salto en la columna LOC, tendrá su informe más estructurado:

Los valores repetidos para los campos hasta LOC (incluido) se borrarán. Resumiendo: cada registro dept sólo se mostrará una vez. En este caso es necesario que los registros sean ordenados por

Page 96: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 96

departamento (la columna DEPTNO). Si quiere repetir la cabecera después de cada salto utilice la opción Break + Header. Puede seleccionar de forma alternativa un diseño Maestro/Detalle:

Puede tener múltiples saltos en un informe. La cláusula order by de la consulta le asegura que el conjunto de resultados está ordenado en todas las rupturas de las columnas.

Suma. La propiedad Suma le permite incluir una suma para un campo:

Puede especificar que la suma se calcule cuando rompa a nivel grupo, a nivel de informe, o ambos.

Page 97: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 97

Encabezados. Para definir un encabezado de página, primero necesita establecer el tamaño de la página (vea el capítulo 12.6). El título del informe se repetirá después de cada salto de página y puede incluir las siguientes variables:

• OSUser – El usuario del sistema operativo. • DBUser – El usuario conectado a la base de datos. • Database – La base de datos a la que esta conectado el usuario. • Date – La fecha actual. • Time – La hora actual. • Page – La página actual.

Para incluir dichas variables en el encabezado de la página, preceda el nombre de la variable con el carácter “ampersand” (&). Por ejemplo:

All employees (&dbuser@&database)

Si ejecuta el informe conectado como el usuario scott a la base de datos Chicago, el encabezado del informe se parecerá al siguiente:

All employees (scott@chicago)

Puesto que el informe se formatea como un documento HTML, puede incluir código HTML adicional. Para incluir una imagen podría introducir una etiqueta <img>:

All employees <img src=logo.gif>

Para incluir información alineada a la izquierda, centrada o a la derecha puede utilizar una tabla con 3 celdas e incluir la información en la celda correspondiente:

<table width="100%"> <tr> <td>&dbuser</td> <td align="center">All Employees</td> <td align="right">&page</td> </tr> </table>

El ejemplo anterior se mostrará de la siguiente forma: Scout All Employees 1

Observe que puede utilizar las variables y el código HTML en la descripción de todos los elementos del diseño, pero son más útiles en el título del informe.

12.5 La librería de estilos. En lugar de definir y redefinir los mismos estilos una y otra vez puede presionar el botón Librería de estilos para crear y modificar los estilos estándar de los informes. Si, por ejemplo, le gusta que todos los campos que contengan expresiones SQL se muestren con un tipo de letra Courier New de 12 puntos y en color azul, simplemente defina un estilo para esas propiedades en la librería y aplíquelo cuando sea necesario. Hay un número de nombres de estilo que tienen un significado especial:

Nombre Descripción Description Default Report

Se aplicará a la cabecera del informe.

Default Variables Se aplicará a todas las variables.

Page 98: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 98

Default Tabular

Se aplicará a todas las tablas tabuladas (ej. Registros detalle). Default Form

Se aplicará a todas los formularios (ej. Registros maestros).

Default Field

Se aplicará a todos los campos que no tengan un estilo definido. Default Field Header

Se aplicará a todos los encabezados de los campos que no tengan un estilo definido. Estos son los estilos por defectos, puede sobrescribirlos en un informe definiendo el estilo para el

correspondiente diseño del elemento. Observe que todos los estilos utilizados (estándar y personalizados) se almacenan en el informe. Cuando se ejecuta un informe y este necesita aplicar un estilo, PL/SQL Developer intentará localizarlo en la librería de estilos, si no se encuentra disponible, se empleará el estilo definido en el informe. Esto le asegurará que su informe siempre se mostrará correctamente.

12.6 Opciones. Puede especificar varias opciones para sus informes:

Parámetros de conexión. Los parámetros de conexión determinan como se ejecutará la consulta del informe. Si, por ejemplo, es necesario que el informe se ejecute bajo la cuenta SYS, puede introducir el nombre en el campo Usuario. Adicionalmente puede introducir la Contraseña, o dejarla en blanco. Si deja la contraseña en blanco se le preguntará por ella cuando ejecute el informe. También puede especificar la Base de datos en caso de que el informe deba ejecutarse siempre en la misma instancia de la base de datos. De forma alternativa puede introducir el carácter * en el campo Base de datos para indicar que el informe debería ejecutarse en la base de datos actual. La opción Utilizar esta conexión le permite habilitar o deshabilitar los parámetros de conexión para el informe. Si esta opción se encuentra deshabilitada, se utilizará la conexión actual de PL/SQL Developer.

Seguridad. Las opciones de Seguridad le permiten bloquear la definición del informe (la consulta SQL, el diseño y las opciones) de forma que el usuario no pueda ver o modificar las mismas. Esto puede resultar útil si en los parámetros de conexión especifica una cuenta con privilegios de sistema (como SYS) con su

Page 99: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 99

contraseña correspondiente. Si un usuario puede cambiar la consulta SQL, podría ejecutar cualquier instrucción bajo la cuenta SYS si el informe no está bloqueado. Puede establecer la opción Seguridad a uno de los siguientes valores:

• Desbloqueado – Cualquier usuario puede cambiar la definición del informe. • Bloqueado para otros usuarios – Sólo puede modificar la definición del informe si conoce

la contraseña del informe, o si se encuentra conectado en PL/SQL Developer con la cuenta que se encuentra especificada en los parámetros de conexión del informe.

• Bloqueado para todos los usuarios. – Al usuario siempre se le preguntará por la contraseña del informe antes de que pueda modificar la definición del mismo, independientemente de que se encuentre conectado en PL/SQL Developer.

Si el informe está bloqueado, el informe (.rep) es encriptado para que no pueda visualizarse o modificarse desde un editor de texto.

Opciones de diseño. • Diseño tipo formulario - Por defecto, todos los registros se muestran mediante un diseño

tabular, excepto los informes de tipo maestro-detalle que se muestra con un diseño de tipo formulario. Habilitando esta opción, todos los registros se mostrarán mediante un diseño tipo formulario. Esto puede ser útil si cada registro posee valores muy anchos que no pueden mostrarse en una sola línea.

• Margen izquierdo – El número de píxeles para el margen izquierdo del informe. Esta opción sólo funciona si utiliza Internet Explorer como visor de documentos HTML

• Margen superior – El número de píxeles para el margen superior del informe. Esta opción sólo funciona si utiliza Internet Explorer como visor de documentos HTML.

• Salto de página – El número de líneas necesarias para forzar un salto de página. La cabecera del informe se repetirá después de cada salto de página.

• Sólo NBSP – Cuando esta opción se encuentra habilitada, todos los espacios en los datos serán convertidos a NBSP (non-breaking spaces) en el documento HTML. Cuando esté deshabilitada, se usarán espacios normales. Esto puede afectar el diseño, porque los visores HTML muestran los espacios en blanco consecutivos como un único espacio en blanco.

• Incluir SQL – Cuando se encuentra habilitada, la consulta SQL se incluye en el archivo HTML generado.

Otras opciones. • Imagen de fondo. – La imagen (.jpg o .gif) que debería mostrarse como imagen de fondo de

este informe. Puede utilizar el botón de Select file para encontrar la imagen que desee utilizar.

• Color de fondo – Puede especificar el color de fondo que utilizará en el informe.

12.7 El menú Informes.

Page 100: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 100

Por defecto el menú de Informes se encuentra localizado en el menú principal de la aplicación y contiene sólo los informes estándar que se distribuyen como parte de PL/SQL Developer. Dichos informes se encuentran en el subdirectorio Reports, en el directorio de instalación de PL/SQL Developer. Este menú sólo es la representación de la estructura de este directorio. Si selecciona un elemento del menú de informes ejecutará dicho informe. Puede añadir o eliminar informes en este directorio, puede también configurar el menú de informes mediante el elemento Configurar informes situado en el menú Herramientas. Si hace clic sobre el se mostrará el siguiente cuadro de diálogo:

La opción Directorio por defecto de los informes indica si el menú de informes debe incluir los informes que se encuentran en el subdirectorio Reports en el directorio de instalación de PL/SQL Developer. Este directorio contiene los informes estándar. Bajo esta opción se encuentra la lista de directorios que deben incluirse. Puede introducir los directorios de forma manual o seleccionar los directorios presionando el botón Añadir directorio a la lista que se encuentra en la parte derecha de la ventana. Nota: Los informes y los subdirectorios se combinarán en el menú Reports. Debe evitar tener subdirectorios e informes duplicados en la lista de directorios, sino obtendrá nombres de menú ambiguos en el menú Informes La librería de estilo también es accesible desde el cuadro de diálogo de configuración de los informes (vea el capítulo 12.5).

Page 101: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 101

13. Gráficos. Para mostrar de forma rápida una representación gráfica de los datos de una consulta o de un informe, puede utilizar la ventana de gráficos. Considere la siguiente consulta:

Para ver un gráfico de los salarios de cada departamento puede presionar el botón Gráfico:

El mismo botón se encuentra disponible en la ventana de Informes. Se ejecutará el Asistente de Gráficos como se describe más abajo, o podrá seleccionar un estilo predefinido o una plantilla, y las columnas apropiadas serán seleccionadas para el eje X y el eje Y. El Asistente de Gráficos le permitirá inicialmente seleccionar los datos para el eje X:

Esta ventana muestra todas las columnas y un elemento [Index], el cual es útil si no tiene un valor para el eje X pero desea mostrar datos en el eje Y. En este caso queremos mostrar el campo salario por número de departamento, seleccionamos el campo DEPTNO y presionamos el botón Siguiente para seleccionar los datos para el eje Y:

Después de seleccionar el campo SALARY para el eje Y, puede presionar el botón Siguiente para seleccionar varios estilos para el gráfico:

Page 102: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 102

Después de presionar el botón Finalizar, se mostrara el resultado del gráfico creado:

La barra de herramientas de la ventana de gráficos, proporciona las siguientes funciones: • Rotar – Presione el botón izquierdo del ratón y muévalo para rotar el gráfico alrededor del eje X

y del eje Y. • Mover – presione el botón izquierdo del ratón y muévalo para mover el gráfico a través de la

ventana. Esta función está siempre disponible, presionando el botón derecho del ratón, independientemente del estado del botón de la barra de herramientas.

• Zoom – Presione el botón izquierdo del ratón para aumentar o disminuir el zoom del gráfico. • Profundidad – Presione el botón izquierdo del ratón para aumentar o disminuir la profundidad

del gráfico. • 3D – Cambia la vista entre el modo 2D y 3D • Editar – Edita los datos y el diseño del gráfico. • Guardar como plantilla – Guarda el diseño del grafico como una plantilla para futuros gráficos

basados en los mismos nombres de columnas. Si crea un gráfico posteriormente y selección Desde plantilla del menú contextual del botón Gráficos, PL/SQL Developer utilizará la información de diseño de esa plantilla.

Puede, de manera adicional imprimir un gráfico o copiarlo al portapapeles, presionando en botón correspondiente en la barra de herramientas principal.

Page 103: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 103

14. Proyectos. Para organizar su trabajo de una forma más eficiente puede utilizar el organizador de proyectos que incluye PLSQL Developer. Un proyecto consiste en un conjunto de archivos de código, objetos de base de datos, notas y opciones. Esto le permite trabajar dentro del alcance de un determinado grupo de objetos en lugar de una base de datos completa o de un determinado esquema. Haciendo más fácil la búsqueda de los elementos del proyecto que necesite, la compilación de todos los elementos de proyecto o el mover un proyecto de una base de datos a otra. El proyecto mantiene su configuración de escritorio. Si vuelve a abrir un proyecto, todos los elementos se abren en la misma posición en la que estaban cuando se cerró el proyecto. Para que esto ocurra debe habilitar la opción Guardar la configuración del escritorio en la ventana de Preferencias .La información de la configuración no se almacena en el archivo de definición del proyecto (Project.prj), se almacena el archivo (Project.dsk).

Nota: Para trabajar con proyectos, la opción Mostrar menú de proyectos debe estar habilitada. De no ser así el menú principal de la aplicación no contemplará el elemento Proyecto. Para todos los elementos del menú Proyecto existe su correspondiente botón en la barra de herramientas, que pueden añadirse mediante la configuración de la barra de herramientas en la ventana de Preferencias. (Vea el capítulo 20.11).

14.1 Crear un nuevo proyecto. Para crear un nuevo proyecto, seleccione el elemento Nuevo del menú de Proyectos. A continuación se mostrará el cuadro de diálogo de las opciones de proyecto:

En la pestaña General puede definir la forma en la que desee conectarse al proyecto cuando lo abra. Desde aquí también puede definir si desea continuar con el proceso de compilación de un proyecto si se produce un error durante el mismo. La pestaña Elementos le permite ver los elementos del proyecto. Estos elementos pueden ser archivos de código de las unidades de programa escritos en lenguaje PL/SQL, archivos de prueba, informes, etc. También puede ser un elemento de proyecto un objeto almacenado en la base de datos y que no tenga representación mediante un archivo. Los elementos del proyecto pueden incluir documentos de Word, HTML, archivos PDF, etc. Cuando crea un proyecto, la lista de elementos, se encuentra vacía. La pestaña Notas le permite mantener notas sobre el proyecto. Esas notas pueden contener cualquier dato, por ejemplo una lista de elementos pendientes, decisiones sobre el proyecto, diseño, etc. La pestaña Elementos pendientes muestra los elementos pendientes para todos los archivos del proyecto. Para más información vea el capítulo 15.

Page 104: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 104

14.2 Guardar un proyecto. Después de configurar las opciones, puede guardar el proyecto seleccionando el elemento Guardar del menú de Proyectos. Esto creará un archivo de proyecto con la extensión .prj. El archivo de proyecto contiene las especificaciones de los elementos, las opciones y las notas. Por lo tanto necesita guardar el proyecto cuando cambie una opción o cuando modifique las notas. El hecho de guardar un proyecto no implica que se guarden los archivos incluidos en el proyecto.

14.3 Añadir archivos a un proyecto. Para añadir archivos a un proyecto, primero debe abrir el archivo en el entorno de desarrollo de PL/SQL Developer. Después de abrir el archivo, simplemente debe presionar el elemento Añadir al proyecto del menú Proyectos. Observe que la ruta del archivo se almacena, si es posible, de forma relativa al archivo del proyecto. Por ejemplo, si el archivo de código se encuentra localizado en el mismo directorio que el archivo del proyecto no se guardará la ruta del mismo. Si el archivo se encuentra en un subdirectorio del archivo de proyecto, sólo se guardará la ruta del subdirectorio. Si el archivo se encuentra localizado en cualquier otro sitio, se guardará la ruta completa. Esto hace que pueda mover fácilmente el proyecto de un directorio a otro.

14.4 Añadir objetos de la base de datos a un proyecto. Para añadir objetos de la base de datos a un proyecto, haga doble clic sobre el elemento en el Explorador de Objetos y seleccione el elemento Añadir al proyecto del menú contextual. Al igual que los archivos de programa, una unidad de programa en PL/SQL será habilitada para compilar de forma implícita. Otros objetos, como tablas y secuencias no pueden compilarse De forma alternativa puede arrastrar y soltar un objeto de la base de datos a la ventana de Elementos del proyecto (vea más abajo). Si el usuario actual es el propietario del objeto de la base de datos, no se guardará la información del usuario en el archivo de proyecto. Si por el contrario es otro el usuario que es propietario del objeto, el propietario del objeto se guardará como parte de la especificación del objeto. Esto hace que pueda mover fácilmente el proyecto de un usuario a otro.

14.5 Trabajar con los elementos del proyecto.

Page 105: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 105

Después de añadir los elementos al proyecto, puede seleccionar Elementos del proyecto del menú Proyectos para trabajar con los elementos del proyecto. La ventana de elementos del proyecto podría ser como la que se muestra a continuación:

Los primeros cuatro archivos de programa están habilitados para compilación. Los dos archivos de prueba, el archivo SQL, las tablas y las secuencias no están habilitados para la compilación. Puede mantener la ventana de elementos del proyecto abierta para tener un acceso rápido y fácil a todos los elementos del proyecto. Esta ventana es parte del escritorio, y se abrirá automáticamente cuando vuelva a abrir el proyecto. Para editar un elemento, simplemente haga doble-clic en él. Si el elemento es un archivo fuente, se abrirá en la ventana correspondiente (Ventana de programa, Ventana de prueba, etc.). Si el elemento es un objeto de la base de datos, se abrirá el editor apropiado con la definición del objeto. Si el elemento del proyecto es un archivo externo, se ejecutará la aplicación correspondiente (ejemplo: Acrobat Reader para un archivo con la extensión .pdf) De manera alternativa puede hacer clic con el botón derecho del ratón en un elemento para abrir el menú contextual que se muestra en la foto superior. Aquí puede habilitar o deshabilitar un elemento para compilar o eliminar un elemento del proyecto. Si el elemento es un objeto de la base de datos, podrá tener acceso al menú contextual de dicho objeto de la misma forma que si hiciese clic con el botón derecho del ratón sobre ese objeto en el Explorador de Objetos.

14.6 Compilar un proyecto. Para compilar un proyecto, puede seleccionar el elemento Compilar todos o Compilar sólo los modificados del menú Proyecto. La opción Compilar todos compilará todos los objetos que se encuentran habilitados para compilar. Los elementos serán compilados en el orden en el que aparecen el la lista de elementos. Si la compilación de un elemento falla, la opción de proyecto Parar después del primer error determinará si se continúa o no la compilación del proyecto:

Page 106: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 106

La función Compilar sólo los modificados, compilará solamente los elementos que han cambiado desde el ultimo proceso de compilación. Si una unidad de programa se incluye como objeto de la base de datos y es marcada como objeto no válido por la base de datos, se volverá a compilar. La fecha y hora de la compilación se almacenará en el archivo de proyecto. Si los elementos habilitados para ser compilados están actualizados, se marcarán como omitidos en la ventana de progreso de la compilación.

Page 107: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 107

15. Elementos pendientes. Puede utilizar los elementos pendientes en cualquier archivo para hacer anotaciones breves sobre algo que necesite hacer en el código, y acceder posteriormente a esa información desde la lista de elementos pendientes. Los elementos pendientes se colocan dentro del código del programa o consulta a modo de comentario con un formato específico y en una localización apropiada:

En este ejemplo puede ver el comentario en programa (comienza con el texto TODO:) y el editor de elementos pendientes donde puede introducir el texto, la prioridad, la categoría, la fecha de creación y la fecha de cierre. Los contenidos de la lista de selección para los campos prioridad, categoría y el usuario pueden ser definidos en la ventana de Preferencias (vea el capítulo 20.25). Puede acceder a los elementos pendientes mediante el editor de elementos pendientes, que seria la forma más correcta para crear, editar, ver o borrar un elemento pendiente. Aunque también puede editarlos directamente en el archivo siempre y cuando no modifique el formato. Debido a que los elementos pendientes se almacenan como comentarios dentro del código, siempre se corresponderán con el estado actual del código, independientemente de que procedan de la base de datos, del sistema de ficheros o de una versión antigua del sistema de control de versiones. Para acceder a la lista de elementos pendientes de un archivo de código puede cargar lista de elementos pendientes.

Page 108: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 108

Desde aquí podrá encontrar rápidamente un elemento pendiente y localizar el archivo haciendo doble clic en el o presionando el botón Ir a. Puede ordenar la lista de elementos pendientes haciendo clic en la cabecera de la columna sobre la que desee ordenar la lista. Haga clic con el botón derecho en la lista para copiar, pegar o exportar.

15.1 Crear un elemento pendiente. Para crear un elemento pendiente, primero deberá colocar el cursor en la posición adecuada dentro del archivo de código. Aquí será donde se insertará el comentario. Con lo cual es importante que la posición del cursor sea cercana a la posición donde se necesita hacer el trabajo. Después haga clic con el botón derecho del ratón en esa posición y seleccione el elemento Añadir elemento del submenú Elementos pendientes del menú contextual:

Aparecerá el editor de elementos pendientes mencionado anteriormente y podrá introducir la información del nuevo elemento pendiente. Después de presionar el botón Aceptar el comentario se insertará en la posición del cursor.

15.2 Editar un elemento pendiente. Para editar un elemento pendiente, puede hacer clic con el botón derecho del ratón sobre el comentario correspondiente en el archivo y seleccione la opción Editar elemento del submenú Elementos Pendientes o seleccionar el elemento Mostrar lista si no está cerca del elemento pendiente que desea editar. En este caso puede seleccionar el elemento pendiente de la lista y presionar el botón Editar. Ahora puede cambiar las propiedades del elemento pendiente y presionar el botón Aceptar para actualizar el comentario en el código.

Page 109: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 109

15.3 Cerrar un elemento pendiente. Puede cerrar un elemento pendiente haciendo clic con el botón derecho del ratón sobre el comentario en el código fuente y seleccionando el elemento Cerrar elemento del submenú Elementos Pendientes. De forma alternativa puede cargar el editor de elementos pendientes, seleccionar el elemento que desea cerrar y presionar el botón Cerrar.

15.4 Borrar un elemento pendiente. Puede borrar un elemento pendiente haciendo clic con el botón derecho del ratón en el comentario del código y seleccionar Borrar elemento desde el submenú de Elementos pendientes. De forma alternativa puede cargar el editor de elementos pendientes, seleccionar el elemento que desea cerrar y presionar el botón Borrar o simplemente borrar el comentario del código.

Page 110: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 110

16. La lista de conexiones. La lista de conexiones muestra una lista de conexiones que se han definido con anterioridad o se han utilizado recientemente. Desde esta lista puede establecer la conexión principal, abrir nuevas ventanas para nuevas conexiones, o ver las ventanas que está utilizando una conexión. Puede crear carpetas y subcarpetas para organizar las conexiones en diferentes grupos jerárquicos.

16.1 Usar la lista de conexiones. Por defecto la lista de conexiones se encuentra anclada en la parte izquierda de la pantalla:

En la parte superior de la ventana puede ver un botón para refrescar la lista de conexiones, para expandir y colapsar el árbol de conexiones, y un botón que le permite definir carpetas y conexiones (para más información puedes ver el capítulo 16.2). Los primeros elementos que se ven en la lista de conexiones son las carpetas definidas por el usuario. Estas carpetas pueden contener conexiones que se han definido de forma explicita en la carpeta, y/o conexiones que se han añadido de forma implícita como resultado del criterio utilizado en la carpeta. La carpeta Recientes muestra todas las conexiones que has utilizado recientemente. Cada conexión puede ser de color gris si se agrega implícitamente, o ser de un color definido por el usuario, si se ha definido de forma explícita. Bajo de cada conexión puedes ver y manipular las ventanas que tienen se corresponden con la sesión de base de datos de esa conexión. El icono con forma de llave al lado de cada conexión muestra el estado de la misma::

PL/SQL Developer tiene almacenada la contraseña para esta conexión, y hay una o más sesiones abiertas con esa conexión.

PL/SQL Developer tiene almacenada la contraseña para esta conexión, pero no hay ninguna sesión abierta con esa conexión.

PL/SQL Developer no tiene almacenada la contraseña para esta conexión. Cuando intente conectarse, PL SQL Developer le pedirá que introduzca la contraseña.

Page 111: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 111

Funciones de conexión Si hace clic con el botón derecho del ratón sobre una conexión se mostrará el siguiente menú contextual:

• Los primeros 5 elementos del menú le permiten abrir ventanas para la conexión seleccionada. Por

ejemplo, si necesita ejecutar un informe utilizando una conexión específica, haga clic con el botón derecho del ratón, seleccione el elemento de menú Informes, y seleccione el informe deseado desde el submenú.

• El elemento de menú Mostrar todas las ventanas le mostrará todas las ventanas que pertenecen a la conexión seleccionada, y minimizará todas las ventanas que pertenezcan a otras conexiones.

• El elemento de menú Cerrar todas las ventanas cerrarás todas las ventanas que pertenezcan a la conexión seleccionada.

• El elemento de menú Conectar conectará contra la base de datos seleccionada. PL/SQL Developer le pedirá la contraseña para poder conectarse contra la base de datos en caso de no tener almacenada la contraseña..

• El elemento de menú Conectar como principal hará que la conexión seleccionada sea la conexión principal. También puede hacer doble-clic sobre una conexión para hacer que dicha conexión sea la conexión principal.

• El elemento de menú Desconectar desconectará todas las sesiones asociadas con la conexión seleccionada. Esto incluye todas las ventanas relacionadas con esa conexión.

• El elemento de menú Eliminar solo está habilitado para las conexiones añadidas de forma implícita. Permite limpiar la carpeta Recientes de conexiones que no utilice frecuentemente.

Funciones de las carpetas Si hace clic con el botón derecho del ratón sobre una carpeta se mostrará el siguiente menú contextual:

• El elemento de menú Mostrar todas las ventanas mostrará las ventanas que pertenezcan a las

conexiones de la carpeta seleccionada y minimizará todas las ventanas que pertenezcan a otras conexiones.

• El elemento de menú Cerrar todas las ventanas cerrará todas las ventanas que pertenezcan a las conexiones de la carpeta seleccionada.

Page 112: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 112

Funciones de las ventanas Si hace clic con el botón derecho del ratón sobre una ventana se mostrará el siguiente menú contextual:

Desde este menú contextual puede activar, cerrar y redimensionar la ventana a su estado normal o minimizarla. Puede cambiar la conexión de una ventana seleccionando dicha ventana desde el submenú Cambiar conexión. Además también puede cambiar el nombre a una ventana. Esto puede resultar especialmente útil si ha creado una nueva ventana y quiere darle un nombre que tenga más significado, que por ejemplo, el valor por defecto Ventana SQL – Nueva. El elemento de menú Acortar texto hará que se muestren las descripciones de forma acortada. Por ejemplo, la descripción “Programa Window - employee.pck” se acortará a “P - employee.pck”. Para ejecutar una ventana, puede seleccionar el elemento de menú Ejecutar.

16.2 Definir carpetas y conexiones.

Page 113: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 113

Para definir sus propias carpetas y conexiones, puede presionar el botón Definir Conexiones situado en la parte superior de la lista de conexiones. PL/SQL Developer le mostrará el siguiente cuadro de dialogo:

En la parte derecha podrás ver los botones para crear una nueva conexión, para crear una nueva carpeta, para borrar la carpeta o conexión seleccionada o para cambiar su ubicación moviéndola hacia arriba o hacia abajo. También puede cambiar la ubicación de un elemento arrastrando y soltando el elemento.

Definir una carpeta Para definir una carpeta, presione el botón Nueva Carpeta e introduzca la información requerida en la sección Definición. Por ejemplo:

Los campos Nombre a mostrar e Imagen se mostrarán en la lista de conexiones. Los campos Nombre de usuario, Base de datos, y Conectar como as pueden utilizarse para añadir implícitamente conexiones a la carpeta. En el ejemplo anterior, todas las conexiones hechas a la base de datos chicago se añadirán implícitamente a la carpeta Chicago. Puedes utilizar los caracteres * y ? para los campos Nombre de usuario y Base de datos. Especificando sys* para el Nombre de usuario añadirá

Page 114: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 114

implícitamente todas las conexiones con los nombres de usuario que comiencen por sys. Si dejas estos campos vacíos, las conexiones se añadirán explícitamente a la carpeta.

Definir una conexión Para definir una conexión, presione el botón Nueva carpeta e introduzca la información necesaria en la sección Definición. Por ejemplo:

El Nombre de la conexión y la imagen se mostrarán en la lista de conexiones. Los campos Nombre de usuario, Base de Datos, Contraseña, Conectar como e Identificar externamente se utilizan para definir la información de inicio de session para la conexión. Si deja el campo Contraseña vacío, PL/SQL Developer le pedirá que introduzca la contraseña cada vez que vaya a utilizar la conexión por primera vez.

Page 115: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 115

17. Conexiones, ventanas, sesiones y transacciones. PL/SQL Developer proporciona un entorno de desarrollo multisesión, multiconexión y multihilo. Multisesión significa que incluso para la misma conexión, se utilizan sesiones distintas para las ventanas de prueba, de consulta SQL y la ventana de comandos. Por otra parte la compilación de las unidades de programa se realizará en sesiones distintas. Después de todo la compilación es una instrucción DDL y esto conlleva el realizar un commit de la transacción actual. Esto podría conducir a efectos indeseados si ha compartido la misma sesión con otras ventanas.

Multiconexión significa que puede conectar con diferentes cuentas a diferentes bases de datos desde la misma instancia del entorno de desarrollo de PL/SQL Developer. Todas las ventanas pueden ser utilizadas para diferentes conexiones, PL/SQL Developer mostrará la conexión activa en la parte inferior izquierda de la barra de estado. Puede cambiar la conexión de una ventana si hace clic sobre ella y selecciona una conexión diferente desde la lista.

Multihilo significa que la ejecución de las ventanas de prueba, las ventanas de consulta SQL y la ventana de comandos puede correr de forma simultánea, sin bloquearse entre ellas. La ventaja de este sistema es que puede continuar realizando otro trabajo mientras se están ejecutando otros trabajos, parar una consulta, terminar una sesión, comprobar el comportamiento de los bloqueos de sus unidades de programas, etc.

17.1 La conexión principal La conexión principal se utiliza para todas las funciones en PL/SQL Developer donde no se ha seleccionado explícitamente una conexión. Por ejemplo, cuando se abre una nueva ventana SQL para ejecutar una consulta, se creará implícitamente una sesión de base de datos para la conexión principal. El explorador de objetos de PL/SQL Developer también utiliza la conexión principal.

Después de iniciar una sesión en PL/SQL Developer, ha establecido implícitamente la conexión principal. Posteriormente puede cambiar la conexión principal utilizando de nuevo la función Sesión > Conectar, o haciendo doble clic sobre una conexión en la lista de conexiones. En la lista de conexiones la conexión principal se muestra resaltada con el texto en negrita.

17.2 Conexiones de las ventanas Todas las ventanas pueden tener diferentes conexiones, puede comprobar la conexión de la ventana en la parte inferior izquierda de la barra de estado. Puede cambiar la conexión de una ventana si hace clic en ella y selecciona una conexión diferente desde la lista:

Page 116: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 116

17.3 Modo de la sesión.

Multihilo implica que necesita un entorno multisesión. Después de todo, el servidor Oracle sólo puede ejecutar una instrucción al mismo tiempo por sesión. Las instrucciones sólo pueden ejecutarse simultáneamente si se ejecutan en sesiones diferentes. No todos los entornos de desarrollo permiten una cantidad ilimitada de sesiones, con lo cual necesita establecer una opción en la ventana de preferencias que le permita controlar la cantidad de sesiones que puede utilizar PL/SQL Developer. Esta preferencia se llama modo de sesión y puede tener uno de los siguientes valores. • Multisesión – Cada ventana de prueba, de consulta SQL y ventana de comandos tendrá su propia

sesión y se utilizará otra sesión para realizar la compilación. Esta es la configuración más flexible y conllevará obviamente a una cantidad de sesiones de base de datos más grande. Otra posible desventaja es que las actualizaciones que realiza en la ventana X sólo serán visibles en la ventana Y después de que se hallan confirmado (commit).

• Dual – Las ventanas de prueba, de consulta SQL y la ventana de comandos que pertenezcan a la misma conexión compartirán una sola sesión y se utilizará otra sesión para la compilación. La desventaja de este modo es que sólo se puede ejecutar una ventana al mismo tiempo para una conexión.

• Simple – Todas las ventanas y los procesos de compilación para la misma conexión emplean la misma sesión , haciendo que el control de transacciones sea más difícil. El depurador está deshabilitado en este modo. Sólo emplee este modo si tiene la limitación de utilizar una sola sesión.

17.4 Ejecutar PL/SQL Developer en modo Multisesión o modo Dual.

Cuando ejecute una ventana de prueba, una ventana de consulta SQL o una ventana de comandos en modo Multisesión o Dual, el botón Cancelar de la barra de herramientas se habilitará para que puede parar la ejecución en cualquier momento. Esta acción puede que no se complete bien en algunos casos, como pueda ser una situación de bloqueo. En este caso puede recurrir a terminar la sesión mediante el elemento Terminar del menú Sesión, si tiene privilegios para ello. Si mueve el cursor del ratón en una ventana que se está ejecutando actualmente, la forma del cursor cambiará para indicarle que se está ejecutando un proceso y que no puede hacer ningún tipo de modificación al contenido de la ventana. Una vez finalizada la ejecución, los botones de Commit y Rollback se habilitan si la transacción se ha iniciado. En el modo multisesión, cada ventana tiene su propia sesión y por tanto tiene su propia transacción. Los botones Commit y Rollback reflejan el estado de la transacción de la ventana activa.

Page 117: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 117

18. Explorar objetos de la base de datos. Cuando está desarrollando una unidad de programa en una base de datos de Oracle, esta siempre accederá a otros objetos de la base de datos, de otra forma no tendría sentido que estuviese en la base de datos. Para escribir una unidad de programa, necesita conocer exactamente como están definidos esos objetos. Además, como programador de Oracle, puede que las siguientes preguntas le resulten familiares: • ¿Cual es el tipo de datos de esta columna? • ¿Cual es la clave primaria de esta tabla? • ¿Cual es el nombre exacto de una función empaquetada (packaged function)? • ¿Cual es el valor por defecto para este parámetro? • ¿Cuales son las causas que activan este disparador (trigger)? • ¿Que objetos llaman a esta función en la que estoy trabajando? • Etcétera... Toda esta información se encuentra disponible en el diccionario de datos de Oracle y es accesible mediante el Explorador de Objetos de PL/SQL Developer

18.1 Utilizar el Explorador de Objetos. Puede habilitar el Explorador de Objetos seleccionando el elemento Explorador de Objetos del menú Herramientas. El Explorador de Objetos mostrará todos los objetos de la base de datos para la conexión principal que son importantes en el desarrollo de unidades de programa. Puede navegar a través del Explorador de Objetos de la misma forma que navega por las carpetas del explorador de Windows. Si abre la carpeta Tables, le mostrará todas las tablas que puede ver en la sesión en la que se encuentra conectado. Si abre una tabla específica se le mostrará todas las propiedades importantes de esa tabla. Si abre la carpeta Foreign Keys debajo de la tabla verá todas las claves foráneas de esa tabla, etc. La carpeta Objetos recientes contiene todos los objetos que se han utilizado recientemente en PL/SQL Developer.

Page 118: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 118

Cada vez que abre una carpeta, la información de los objetos contenidos en la misma se consulta en el diccionario de datos de Oracle y se almacena en memoria para hacer los siguientes accesos a los datos lo más rápido posible. Para forzar que el Explorador de Objetos vuelva a consultar esa información después de que algún objeto haya cambiado, necesita seleccionar el objeto modificado y presionar el botón Refrescar en la parte superior izquierda de la ventana. Para refrescar el contenido del Explorador de Objetos presione el botón Refrescar mientras mantiene pulsada la tecla Ctrl. Puede arrastrar y soltar objetos desde el Explorador de Objetos al área de trabajo. Esto abrirá un editor con la definición del objeto. Puede establecer una preferencia para controlar exactamente que función debería realizarse (vea el capítulo 20.12). Puede arrastrar y soltar un objeto desde el Explorador de Objetos al editor. Al hacerlo aparecerá un menú contextual, cuyo contenido depende del tipo de objeto seleccionado. En él puede seleccionar copiar el nombre, las propiedades, la descripción y cualquier otro tipo de texto importante en el editor, en la posición en la que lo ha soltado. Si arrastra una carpeta al editor, todos los nombres de los objetos contenidos en esa carpeta se copiarán en el editor. Los nombres los objetos se copiarán separados por comas en una línea o en múltiples líneas (vea el capítulo 20.13). Si presiona con el botón derecho del ratón sobre un objeto aparecerá un menú contextual que le permitirá realizar operaciones sobre el objeto. Las opciones de este menú contextual se describen en los párrafos siguientes.

Page 119: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 119

Puede seleccionar varios objetos si utiliza las teclas Control o Shift durante la selección. Si selecciona varios objetos, el menú contextual sólo mostrará los elementos que sean comunes a todos los objetos seleccionados, la función de arrastrar y soltar funcionará con todos los objetos simultáneamente. Puede presionar Ctrl - y Ctrl + para alinear rápidamente el ancho del Explorador de Objetos con su contenido. Las preferencias del Explorador de Objetos (vea el capítulo 20.12), le permiten definir que carpetas son visibles, y en que orden se muestran. Le permite definir también el número máximo de objetos que se almacenan en la carpeta Objetos recientes. Además puede definir la acción a realizar cuando haga doble clic con el botón izquierdo del ratón sobre un objeto del Explorador de Objetos. Por defecto esta acción expandirá el nodo correspondiente, pero puede definir que le muestre el editor de definición del objeto o la ventana de propiedades.

Filtrar y buscar objetos. Para limitar el número de objetos en el Explorador de Objetos, puede utilizar el selector de usuario y el selector de filtros situados en la parte superior del Explorador de Objetos. También puede buscar objetos por su nombre. Cuando seleccione un usuario, el Explorador de Objetos de PL/SQL Developer solo le mostrará los objetos que son propiedad del usuario seleccionado. Puede seleccionar <USUARIO ACTUAL> para ver únicamente los objetos que son propiedad del usuario conectado actualmente . Puede seleccionar el elemento <TODOS LOS USUARIOS> para ver todos los objetos de todos los usuarios de la base de datos. Observe que esta ultima opción puede degradar el rendimiento de PL/SQL Developer cuando abra una carpeta en el Explorador de Objetos. Seleccione un filtro para limitar los objetos del explorador a los que únicamente cumplan ese criterio específico. En el filtro también se define el orden en el que aparecen los objetos dentro de una carpeta en el explorador. Vea el capítulo 18.2 para ver como puede crear sus propios filtros. Para buscar un objeto por su nombre, introduzca parte de su nombre en el campo de texto y presione la tecla Enter. PL/SQL Developer solo realizará la búsqueda por nombre en las carpetas que se encuentren abierta.

Crear un nuevo objeto. Para crear una nueva unidad de programa, tabla, vista, secuencia o sinónimo haga clic con el botón derecho del ratón sobre un objeto de ese tipo en la carpeta principal y seleccione el elemento Nuevo desde el menú contextual. Si utiliza la opción Nuevo para una unidad de programa se creará una nueva ventana de programa. El contenido inicial de esa ventana se leerá de una plantilla específica, tal como se describe en el capítulo 26. Las vistas se pueden crear en una ventana de consulta SQL. El contenido inicial se leerá de una plantilla específica, de la misma forma que las unidades de programa. Las tablas, secuencias y sinónimos se mostrarán en una ventana específica del editor. La creación de tablas, secuencias y sinónimos se describe con detalle en el capítulo 9.

Duplicar un nuevo objeto. Puede duplicar una tabla, una secuencia o un sinónimo seleccionando el elemento Duplicar del menú contextual. Esta acción mostrará la ventana del editor con todas las propiedades del objeto seleccionado, a excepción del nombre. Esto puede ser útil para crear un objeto idéntico en el que poder realizar algunas pruebas.

Page 120: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 120

Copiar un elemento o carpeta. Para copiar el nombre de un objeto o los nombres de los objetos en una carpeta, haga clic con el botón derecho del ratón y seleccione el elemento Copiar valores separados por comas. Esta acción colocará el nombre o los nombres de los objetos seleccionados en el portapapeles. Puede establecer una preferencia del programa para controlar si los nombres de objetos se colocan en una sola línea o en varias (vea el capítulo 20.13).

Ver las propiedades de un objeto. Para ver las propiedades de un objeto concreto, seleccione el elemento Propiedades desde el menú contextual. Las propiedades que pueda visualizar dependerán del tipo de objeto y de la versión del servidor de Oracle. Las propiedades se muestran en una ventana modal que puede situar en cualquier parte de la pantalla. Puede mantener la ventana de propiedades visible (permaneciendo por encima de

las otras ventanas) y continuar trabajando en otra ventana. Puede también recoger y desplegar la ventana presionando el botón que se encuentra en la parte derecha de la ventana. De esta forma ahorra espacio en la pantalla y mantiene la ventana de propiedades visible en cualquier momento.

Ver la descripción de los objetos. Las tablas, vistas, funciones, procedimientos, paquetes, tipos y métodos pueden describirse de la misma forma que en SQL*Plus, si selecciona el elemento Describir desde el menú contextual. La descripción de los objetos se mostrará en una ventana modal como la que se mencionó previamente para las propiedades de los objetos. Para las tablas y las vistas se muestran todas las columnas y sus respectivas propiedades en la ventana de propiedades. Para las funciones, procedimientos y miembros, se muestran los parámetros y sus propiedades. Para los paquetes se muestran las funciones, procedimientos, variables, tipos y constantes. Para los tipos se muestran los métodos y los atributos.

Puede seleccionar las filas, columnas o rangos de celdas en una ventana de descripción. Para seleccionar las filas o las columnas, haga clic en la cabecera de una celda o de una columna y arrastre el puntero del ratón para resaltar la selección. Para seleccionar un rango específico de celdas presione el botón del ratón y arrastre el mismo para resaltar la selección. La selección puede copiarse o imprimirse. Para hacer una copia de los valores seleccionados separados por comas, haga clic con el botón derecho del ratón sobre la ventana y seleccione el elemento correspondiente del menú contextual. Para exportar la descripción a un archivo CSV, TSV, HTML o XML, seleccione el elemento correspondiente desde el submenú Exportar. Para imprimir el contenido de la ventana de descripción, seleccione el elemento Imprimir. Si hace doble clic en una celda de la ventana de descripción, el contenido de la celda se copiará en la ventana que se encuentre visible en el escritorio. Para ordenar las filas de la ventana de descripción, presione el botón de la columna sobre la que quiera ordenar las filas.

Page 121: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 121

Ver la definición de un objeto. Todos los tipos de objetos tienen algún tipo de definición. Para ver esta definición, puede seleccionar el elemento Ver del menú contextual. Este elemento esta disponible para todas las unidades de programa, vistas, tablas, secuencias y sinónimos. Si selecciona el elemento Ver para un elemento de una tabla como una columna o un índice, le mostrará la definición de la tabla e irá al elemento seleccionado. Las unidades de programa se mostrarán en la ventana de programa, las vistas se mostrarán en la ventana de consulta SQL, las tablas, secuencias y sinónimos se mostrarán en editores específicos. Las tablas, secuencias y sinónimos se describen con más detalle en el capítulo 9.

Editar la definición de un objeto. Puede editar la definición de un objeto directamente desde la base de datos seleccionando el elemento Editar desde el menú contextual de dicho objeto. Puede deshabilitar esta característica mediante una opción, como se describe en el capítulo 20.2.

Renombrar un objeto. Puede renombrar las tablas, vistas, secuencias y sinónimos directamente seleccionando el elemento Renombrar desde el menú contextual de dicho objeto. Si utiliza la versión de Oracle 9.2 o una superior puede también renombrar las columnas. Aparecerá un cuadro de diálogo con el nombre antiguo en donde puede modificar y aplicar los cambios.

Eliminar un objeto. A veces es necesario eliminar un objeto. Puede que se haya quedado obsoleto o que haya cambiado de un tipo de objeto a otro (ejemplo de una función a un procedimiento). Para realizar esta tarea, seleccione el elemento Eliminar desde el menú contextual de dicho objeto.

Explorar objetos relacionados. La mayoría de los objetos tienen o hacen referencia a otros objetos. Seleccionando el elemento Explorar puede localizar rápidamente los elementos relacionados en el Explorador de Objetos.

Compilar un objeto. A menudo los objetos de la base de datos hacen referencia a otros objetos de la misma. Cuando esos objetos referenciados cambian, los objetos pueden volverse no validos. En este caso una marca roja se muestra en el icono de ese objeto. Para volver a compilar los objetos no validos, seleccione el elemento Compilar desde el menú contextual. Si el proceso de compilación termina correctamente, la marca desaparecerá. Si el proceso falla, puede ver los errores si selecciona el elemento Ver del menú contextual.

Añadir el código de un objeto al editor. El código de una unidad de programa puede añadirse a una ventana de programa o de prueba si selecciona el elemento Añadir código al editor. Para una ventana de programa, el código se añadirá en una nueva página después de la unidad de programa actual. De esta forma podrá crear un archivo de programa que contenga varias unidades de programa que ya existan en la base de datos. Para una ventana de prueba, el código se añadirá después del código seleccionado durante una sesión de depuración. De esta forma puede incluir el código de la ventana de prueba y acto seguido establecer o borrar puntos de interrupción antes de entrar en la unidad de programa.

Page 122: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 122

Añadir la información de depuración a un objeto. Si quiere ver o establecer variables durante una sesión de depuración, el objeto que contiene esas variables necesita contener información de depuración. Puede añadirla de forma manual si selecciona el elemento Añadir información de depuración. Este elemento de menú tiene una marca para comprobar si el objeto ya contiene información de depuración. La sección de preferencias del depurador tiene una opción que le permite añadir de forma automática la información de depuración cuando se compila una unidad de programa, en cuyo caso sólo necesita utilizar este elemento para las unidades de programa que no lo tengan en desarrollo.

Ver y establecer los indicadores de compilación condicional. Utilice el elemento de menú PL/SQL CCFlags para ver o establecer los indicadores compilación condicional para una unidad de programa:

En esta pantalla puede ver los indicadores de compilación para una unidad de programa. Desde aquí también puede cambiar sus valores, renombrarlos, añadir nuevos indicadores o borrar alguno de los indicadores existentes. Una vez haya realizado los cambios presione el botón Aplicar para aplicar los cambios a los objetos de la base de datos. Observe que, realizar cambios en los indicadores de compilación causará que las unidades de programa se vuelvan a compilar, esto puede provocar que se conviertan en unidades de programa no válidas.

Compilar objetos referenciados. Cuando modifica un objeto que es referenciado por otras unidades de programas o vistas, los objetos referenciados se convierten en no validos. Al volver a compilarlos los convertirá en validos o se mostrarán todas las incompatibilidades. Puede hacerlo si selecciona el elemento Compilar objetos referenciados. Esto mostrará la ventana de Compilar objetos no validos, que se ejecutará automáticamente. Para más información sobre esta herramienta vea el capítulo 21.3.

Probar las unidades de programa. Para probar una unidad de programa (una función o procedimiento) puede utilizar los archivos de prueba, que se describen con más detalle en el capítulo 5. Un archivo de prueba contiene una llamada a una función o a un procedimiento. Necesita establecer los parámetros de entrada y ver los parámetros de salida y los resultados de la función después de la ejecución del archivo de prueba. Desde el Explorador de Objetos puede seleccionar el elemento Probar para crear un archivo de prueba.

Page 123: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 123

Consultar tablas y vistas. Para ver los datos en una tabla o vista, seleccione el elemento Consultar datos desde el menú contextual. Una ventana de consulta SQL se creará con una consulta de selección para la tabla o vista seleccionada en el Explorador de Objetos. Si tiene la opción Ejecutar consultas automáticamente habilitada, la consulta de selección se ejecutará inmediatamente.

Editar los datos de las tablas. Si quiere editar los datos de una tabla, puede seleccionar el elemento Editar datos si hace clic con el botón derecho del ratón sobre ella en el Explorador de Objetos. Se creará una ventana de consulta SQL que incluye el campo rowid. Si tiene la opción Ejecutar consultas automáticamente habilitada, la consulta se ejecutará inmediatamente. La ventana de consulta SQL se pone en modo de edición después de que se hayan buscado los registros.

Exportar tablas. Para exportar la definición y los datos de una tabla, seleccione el elemento Exportar datos. Esto cargará la herramienta Exportar tablas para la tabla seleccionada. Para más detalles vea el capítulo 21.4.

Habilitar y deshabilitar restricciones y disparadores. Los disparadores y las restricciones (triggers y constraints) pueden habilitarse o deshabilitarse desde el Explorador de Objetos si selecciona el elemento Habilitar o Deshabilitar desde el menú contextual. Los disparadores y las restricciones deshabilitados se muestran en color gris.

Ejecutar un trabajo de la base de datos. Los trabajos enviados a la base de datos a través del paquete dbms_job, pueden ejecutarse explícitamente si selecciona el elemento Ejecutar desde el menú contextual.

Habilitar y deshabilitar operaciones de encolado y desencolado. Para las listas puede habilitar y deshabilitar operaciones de encolado (añadir) y desencolado (eliminar) seleccionando el elemento correspondiente desde el menú contextual. Una marca de comprobación antes del elemento del menú indica si la operación esta habilitada.

Añadir un objeto a una carpeta definida por el usuario. Para añadir un objeto a una carpeta definida por el usuario (vea el capítulo 18.3), seleccione el elemento Añadir a la carpeta y después seleccione la carpeta desde el submenú.

Recuperar o eliminar un objeto. Si esta utilizando Oracle10g o una versión posterior, puede restaurar o purgar las tablas que ha eliminado con anterioridad, si esta característica se encuentra habilitada en la base de datos. Desde un objeto situado en la carpeta Papelera de reciclaje puede seleccionar Purgar para eliminar la tabla y sus datos de forma permanente o puede seleccionar Restaurar para restaurar el objeto con el nombre original o con un nuevo nombre.

18.2 Configurar los filtros del Explorador de Objetos.

Page 124: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 124

Puede definir los filtros que determinan que objetos son visibles en las carpetas del sistema del Explorador de Objetos, y en que orden se muestran esos objetos. La lista de selección que se encuentra situada en la parte superior del Explorador de Objetos le permite cambiar rápidamente entre los distintos tipos de filtros. Los filtros del Explorador de datos pueden definirse seleccionando el elemento Configurar filtros del explorador en el menú Herramientas o presionando el botón filtros en la parte superior del Explorador de Objetos .Puede modificar, crear y borrar los filtros en este diálogo:

Un filtro se constituye con las siguientes propiedades: • Descripción - El valor de esta propiedad es el que se muestra en la lista de selección situada en la

parte superior del Explorador de Objetos. • Usuario – Define para que usuario de Oracle es valido el filtro. Si deja este campo en blanco, el

filtro será valido para todos los usuarios de Oracle. Si especifica un usuario y una base de datos (por ejemplo scott@chicago), el filtro sólo será visible si se ha conectado con este usuario y base de datos.

• Defecto - Si selecciona esta opción, el filtro seleccionado se activará cuando inicie PL/SQL Developer. Puede definir un filtro por defecto para cada usuario. Los filtros por defecto se muestran resaltados en negrita.

• Cláusula Where - Un filtro define una consulta sobre la vista all_objects (o dba_objects). La cláusula where de la consulta puede utilizarse para restringir el conjunto de resultados de la misma. Puede utilizar las siguientes columnas:

• Owner – El propietario del objeto. • Object_name – El nombre del objeto. • Objet_type – El tipo del objeto (table, view, package, etc.). • Status – El estado del objeto (VALID / INVALID). • Created – Fecha/hora de creación del objeto. • Last_ddl_time – Fecha/hora del último objeto compilado. • Cláusula Order by – Use las columnas de la vista all_objects para ordenar los objetos en el

Explorador de Objetos.

18.3 Configurar las carpetas del Explorador de Objetos.

Page 125: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 125

Las carpetas del Explorador de Objetos pueden personalizarse de varias formas. Puede cambiar el orden de las carpetas en el Explorador de Objetos , el color de cada carpeta, la jerarquía de la carpeta o puede ocultar carpetas basándose en la conexión actual contra la base de datos. Puede definir también sus propias carpetas y rellenarlas con objetos. Puede añadir también de forma especifica objetos a una carpeta, definir una consulta para rellenarlas, o una combinación de ambos. La consulta será ejecutada cuando abra la carpeta en el Explorador de Objetos. Los carpetas del Explorador de Objetos pueden definirse si selecciona el elemento Configurar carpetas del explorador en el menú Herramientas o si presiona el botón Carpetas situado en la parte superior del Explorador de Objetos. Puede modificar, crear y eliminar carpetas en este cuadro de diálogo:

En la parte superior del cuadro de diálogo puede ver todas las carpetas y su jerarquía. El color rojo indica que es una carpeta del sistema mientras que el color negro indica que es una carpeta definida por el usuario. Existen algunas restricciones que se aplican a las carpetas del sistema. En la parte derecha de la lista de carpetas hay 4 botones disponibles, para añadir una carpeta en la posición de la carpeta seleccionada, para borrar una carpeta, o para moverla hacia arriba o hacia abajo en la lista. El orden en el que se visualizarán las carpetas en el Explorador de Objetos es el mismo orden que se muestra en la lista. En la parte inferior del cuadro de diálogo puede cambiar la definición de la carpeta seleccionada: • Tipo – Muestra el tipo de carpeta: Definida por el usuario o del sistema (User Defined or

System). • Color – Selecciona el color de la carpeta. Las subcarpetas heredarán el mismo color. • Visible – Deshabilite esta opción para hacer la carpeta invisible en el Explorador de Objetos.

Puede usarse para ocultar carpetas específicas del sistema. Esta opción sobrescribe la opción Conexión.

• Descripción – La descripción de la carpeta que se mostrará en el Explorador de Objetos. Esta descripción no puede cambiarse en el caso de las carpetas del sistema.

Page 126: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 126

• Conexión – Define que usuarios de Oracle podrán ver esta carpeta. Si deja esta opción en blanco, la carpeta se mostrará para todos los usuarios. Si especifica un usuario y una base de datos (scott@chicago), la carpeta sólo será visible si se ha conectado con este usuario y esta conexión. Puede utilizar caracteres comodín ? y *. Por ejemplo *@prd para todos los usuarios de la base de datos prd.

• Crear en – Para colocar de forma jerárquica una carpeta dentro de otra, puede seleccionar la carpeta de nivel superior donde se creará. Para limpiar la selección, presione el botón Limpiar.

• Eliminar propietario – El Explorador de objetos no mostrará el propietario de los objetos en esta carpeta. Esta opción es especialmente útil para las carpetas donde se conoce al propietario de los objetos (por ejemplo: “Tablas y vistas de Scott”).

• Cláusula Where – La cláusula where puede usarse con carpetas basadas en consultas para restringir la selección de objetos. En el ejemplo superior, la cláusula where esta establecida con el campo status = ‘INVALID’ para rellenar el contenido de la carpeta con todos los objetos marcados como no validos por el servidor Oracle.

• Cláusula Order By - La cláusula order by puede utilizarse para las carpetas basadas en consultas para definir el orden de los objetos seleccionados.

• Objetos – Para carpetas manuales puede definir la lista de objetos. Puede colocar un objeto en cada línea con un formato owner.name. Por ejemplo: SCOTT.EMP. Normalmente es más conveniente añadir un objeto individual desde el Explorador de Objetos haciendo clic con el botón derecho del ratón sobre un objeto y seleccionando Añadir a la carpeta desde el menú contextual.

La cláusula where y la cláusula order by pueden incluir cualquier expresión SQL y cualquier columna de la vista all_objects. Esto funciona de la misma forma para los filtros del Explorador de Objetos. Vea el capítulo 18.2 para más detalles. Observe que los filtros no afectan a los objetos contenidos en las carpetas definidas por el usuario.

Page 127: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 127

19. Explorador archivos. Si accede con frecuencia a sus archivos y scripts desde una ubicación determinada(como por ejemplo, directorios de proyecto o de herramientas, etc.), puede utilizar el Explorador de Archivos para acceder a los mismos de una forma fácil y rápida. En lugar de utilizar un cuadro de dialogo de selección de archivos para abrir y guardar los archivos puede utilizar el Explorador de Archivos de PL/SQL Developer para abrirlos directamente desde su área de trabajo:

Desde el Explorador de Archivos puede acceder a los archivos y directorios a través de ubicaciones definidas por el usuario en su estación de trabajo como desde la red de su empresa. Desde aquí puede abrir, guardar, renombrar y borrar archivos. Puede utilizar el Explorador de Archivos, como una ventana flotante o utilizar anclada a uno de los laterales de PL/SQL Developer. Vea el capítulo 28 para más información sobre como anclar las diferentes herramientas en su entorno de desarrollo. Por defecto, el Explorador de Archivos, se encuentra situado en la segunda pestaña, justo después de la pestaña del Explorador de Objetos.

19.1 Configurar el Explorador de Archivos. Cuando PL/SQL Developer muestra el Explorador de Archivos por primera vez, este aparecerá vacío. Para rellenar el Explorador de Archivos, debe definir primero una o más ubicaciones. Para ello, seleccione la opción Ubicaciones desde el menú Herramientas o presione el botón Ubicaciones situado en la parte superior del Explorador de Archivos.PL/SQL Developer le mostrará la siguiente pantalla:

Page 128: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 128

Cada ubicación que defina en esta pantalla, aparecerá en la raíz del árbol de directorios del Explorador de Archivos. Para cada ubicación puede definir las siguientes propiedades:

• Path - La ruta local o de red donde se encuentran ubicados los archivos y directorios. El Explorador de Archivos mostrará los archivos y directorios a partir de la ruta definida.

• Incluir subdirectorios – Cuando esta opción se encuentre habilitada PL/SQL Developer mostrará los subdirectorios en el Explorador de Archivos.

• Incluir las siguientes extensiones – Aquí puede indicar uno o más filtros para las extensiones de los archivos para obligar a PL/SQL Developer a incluir únicamente estos archivos en el Explorador de Archivos. Puede utilizar uno o más filtros si los separa mediante un punto y coma (ejemplo: *.sql;*.cmd) . Si omite estos filtros PL/SQL Developer le mostrará todos los archivos.

• Excluir las siguientes extensiones - Aquí puede indicar uno o más filtros para las extensiones de los archivos para obligar a PL/SQL Developer a excluir estos archivos en el Explorador de Archivos. Puede utilizar uno o más filtros si los separa mediante un punto y coma (ejemplo: *.tmp;*.dat) . Si omite estos filtros PL/SQL Developer no excluirá ningún archivo . Por defecto PL/SQL Developer excluirá los archivos *.info y *.~*. El primer filtro excluye los archivos de sistema de PL/SQL Developer, que contienen información sobre el estado de la aplicación y el segundo filtro excluye las copias de seguridad de PL/SQL Developer.

• Descripción – Descripción de la ubicación que se muestra en el Explorador de Archivos. • Color – Color de los iconos de la ubicación y sus subdirectorios. • Padre – La ubicación superior de la ubicación que esta creando. Cuando seleccione esta opción,

PL/SQL Developer no mostrará la ubicación en la raíz del Explorador de Archivos, sino que la creará como una ubicación dentro de la ubicación padre.

Puede crear, borrar y ordenar las ubicaciones utilizando los botones correspondientes situados en la parte derecha de la lista de ubicaciones.

19.2 Utilizar el Explorador de Archivos.

Page 129: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 129

Después de que haya definido todas las ubicaciones, el Explorador de Archivos le mostrará todos los archivos, directorios, subdirectorios y ubicaciones. Si hace doble clic en un archivo, este se abrirá en una nueva ventana en su área de trabajo en modo de edición. Si hace clic con el botón derecho sobre un archivo se mostrará el siguiente menú contextual:

• Abrir – Si el elemento seleccionado es un archivo, PL/SQL Developer lo abrirá en modo de

edición. Si por el contrario es un directorio, subdirectorio o una ubicación PL/SQL Developer expandirá el nodo correspondiente en el árbol de directorios del Explorador de Archivos.

• Abrir como – Muestra un submenú donde puede seleccionar como abrir el archivo, como una Ventana de programa, una Ventana de SQL o una Ventana de comando.

• Abrir con – Abre el archivo con cualquier programa. • Abrir en el explorador – Abre el Explorador de Windows para el archivo o directorio

seleccionado. • Renombrar – Este elemento le permite cambiar el nombre al elemento seleccionado. • Nuevo archivo – Este elemento le permite crear un nuevo archivo en la ubicación o directorio

seleccionado. • Nuevo directorio – Este elemento le permite crear un nuevo directorio en la ubicación o

directorio seleccionado. • Eliminar – Elimina el archivo o directorio seleccionado. • Guardar ventana en “nombre” – Guarda el contenido de la ventana actual (la que se encuentra

visible en el momento de la selección de este elemento) en la ubicación o directorio seleccionado. Esto le permite guardar rápidamente el contenido de la ventana sin preocuparse del origen del contenido.

• Guardar ventana como “nombre de archivo” - Guarda el contenido de la ventana actual (la que se encuentra visible en el momento de la selección de este elemento) como el archivo seleccionado. Observe que esta acción sobrescribirá el contenido del archivo seleccionado.

• Info –Este submenú le muestra información relativa al elemento seleccionado, como la ruta completa, la fecha de creación y el tamaño.

Page 130: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 130

• Propiedades – Muestra las propiedades del archivo o directorio. Adicionalmente el cuadro de dialogo le permitirá establecer los diferentes atributos y permisos.

Los archivos que sean de solo lectura tendrán una marca en rojo en el icono del archivo mostrado en el explorador (Puede ver los ejemplos para los archivos Department.spc y Employees.spc en el ejemplo anterior). Si los archivos definidos dentro de las diferentes ubicaciones son creados, borrados o renombrados con otras herramientas, PL/SQL Developer actualizara automáticamente su contenido.

Page 131: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 131

20. Preferencias. La herramienta Preferencias le permite establecer varias opciones de PL/SQL Developer. Cuando seleccione este elemento, aparecerá el siguiente cuadro de diálogo:

A la izquierda puede seleccionar una página de preferencias entre las 6 categorías disponibles (Oracle, Interfaz de usuario, Tipo de ventanas, Herramientas, Archivos y Otros). En la cabecera puede seleccionar un conjunto de preferencias, que define las prioridades establecidas a un cierto nivel. Por defecto, definirá sus preferencias personales para su usuario de Windows (en la captura de pantalla superior para el usuario Mark), pero también puede definir sus preferencias personales para una conexión específica de Oracle. Cada vez que utilice dicha conexión al iniciar la sesión con la base de datos, el conjunto de preferencias correspondiente será utilizado. Además el administrador del sistema puede definir las preferencias por defecto a un nivel global y a los niveles de conexión de Oracle. Para una información más detallada acerca del ajuste de prioridades, vea el capítulo 20.34. Debajo del conjunto de preferencias puede ver las opciones para la página de preferencias seleccionada (en la captura de pantalla superior para Oracle – Conexión). Para cada una de las opciones puede ver su valor actual. Un indicador de color verde situado en la parte izquierda de la preferencia indica que el valor esta establecido en el conjunto de preferencias actual. Si el indicador es de color negro, el valor se hereda de un conjunto de preferencias distinto (sitúe el cursor del ratón sobre el indicador para ver el nombre del conjunto de preferencias). Para deshacer los cambios realizados en el valor heredado (en otras palabras: eliminarlo del conjunto de preferencias actual), puede hacer clic en el indicador de color verde. Los siguientes capítulos describen cada una de las páginas de la ventana preferencias con detalle.

20.1 Oracle - Conexión

Page 132: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 132

• Modo de sesión - Controla el número de sesiones distintas de la base de datos que puede utilizar

PL/SQL Developer simultáneamente. Esta opción se describe con más detalle en el capítulo 17. • Al desconectar la transacción actual - Cuando se desconecta una sesión que tiene una

transacción activa, la acción por defecto es la de ejecutar la instrucción commit sobre dicha transacción. Mediante esta opción puede definir si a una transacción activa se le ejecuta una instrucción rollback o si PL/SQL Developer debe preguntarle por una confirmación.

• Comprobar conexión - Cuando esta opción se encuentra habilitada, PL/SQL Developer comprobará cada 60 segundos si permanece activa la conexión con la base de datos. Si su sesión ha terminado o el servidor se ha apagado, PL/SQL Developer desconectará automáticamente la sesión.

• Oracle Home - Por defecto PL/SQL Developer utilizará el directorio principal Oracle Home de su PC. Puede definir cual es su directorio Oracle Home por defecto mediante la herramienta Oracle Home Selector (una utilidad estándar de Oracle). Puede forzar a PL/SQL Developer a utilizar un directorio Oracle Home concreto si selecciona uno de la lista.

• Versión OCI - PL/SQL Developer utilizará la versión más reciente de SQL*Net o Net8 que se encuentre instalada en su sistema. Si esta versión de SQL*Net causa problemas, puede forzar a PL/SQL Developer a utilizar otra versión. El nombre de la DLL será parecido a ora72.dll (para SQL*Net 2.2), ora73.dll (para SQL*Net 2.3), oci.dll (para Net8 8.1.x), etc. Estas DLL se encuentran en el directorio Bin de Oracle.

• Forzar compatibilidad OCI7 - Algunas versiones de Net8 (8.0.3 y 8.0.4) poseen algunos fallos que podrían causar problemas a PL/SQL Developer. Establecer esta opción provocará que se utilicen en su lugar las funciones más sólidas de SQL*Net 2 de Net8. Un ejemplo de un fallo de programación en Net8 es que devuelve incorrectamente los modos de los parámetros cuando describe procedimientos y funciones. Una desventaja de esta opción es que no puede consultar columnas de tipo BLOB, CLOB y BFILE y que PL/SQL Developer no puede mostrar información sobre los paquetes encriptados mediante la función Describe.

• Permitir múltiples conexiones - Cuando esta opción esté habilitada, PL/SQL Developer le permitirá utilizar múltiples conexiones desde la misma instancia. Cuando esta opción esté

Page 133: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 133

deshabilitada, al cambiar de conexión se desconectarán todas las demás conexiones y se establecerá la conexión seleccionada como conexión principal.

• Almacenar historial reciente - Cuando esta opción esté habilitada, las conexiones utilizadas recientemente que se encuentran en la carpeta Recientes en la lista de conexiones serán almacenadas en PL/SQL Developer, y serán restauradas cuando se vuelva a ejecutar la aplicación. Cuando esta opción este deshabilitada, la carpeta Recientes estará vacía cuando ejecute PL/SQL Developer de nuevo.

• Almacenar con contraseña - Cuando esta opción esté habilitada, el historial de conexiones recientes estará protegido mediante una contraseña.

20.2 Oracle - Opciones

• Permitir la edición del código directamente desde la base de datos - Esta opción controla si el

código de una unidad de programa o de una vista puede editarse directamente desde el Explorador de Objetos, o requiere que se abra desde el sistema de archivos.

• Guardar el código editado en la base de datos a un archivo - Si edita una unidad de programa desde el código almacenado en el diccionario de datos de la base de datos (haciendo clic con el botón derecho del ratón en la unidad de programa y seleccionando el elemento Editar desde el menú contextual), puede evitar que se le pregunte si desea guardar las modificaciones en un archivo si deshabilita esta opción. Si ha editado la unidad de programa desde el sistema de archivos, siempre se le preguntará si desea guardar los cambios.

• Compilar archivos de sólo lectura - Si el código es de sólo lectura, no puede compilarse cuando se cargue en una ventana de una unidad de programa. Esta opción es útil cuando está utilizando un sistema de control de versiones, el cual deja a menudo una copia de sólo lectura de un archivo de código en el directorio de trabajo. Dicha copia no puede ser compilada, ya que podría interferir en el trabajo de otros miembros del proyecto.

• Confirmar instrucciones de commit y rollback - Cada vez que ejecute una instrucción commit o rollback sobre una transacción presionando los botones correspondientes, se le pedirá la confirmación para dichas operaciones. Deshabilitando esta opción ejecutará las instrucciones commit o rollback sin que se le pida ningún tipo de confirmación.

• Utilizar vistas de tipo DBA - Si establece esta opción PL/SQ Developer intentará utilizar vistas de tipo DBA (dba_objects, dba_triggers, etc.), en lugar de utilizar vistas de tipo ALL (all_objects, all_triggers, etc.). Las vistas de tipo DBA muestran más información que las vistas de tipo ALL si un desarrollador tiene ciertos privilegios del sistema.

• Obtener estadísticas automáticamente - Esta opción controla si el informe de estadísticas se genera por cada instrucción SQL y archivo de prueba ejecutado. Si deshabilita esta opción, el

Page 134: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 134

informe de estadísticas estará vacío. Si presiona el botón Seleccionar se mostrará una lista con todas las estadísticas disponibles en la base de datos a la que se encuentra conectado. Puede seleccionar que estadísticas desea incluir en el informe. Si no tiene acceso a las tablas de rendimiento dinámico, el botón Seleccionar estará deshabilitado.

• Habilitar Unicode - Cuando esta opción se encuentre seleccionada, los datos que consulte y que se encuentren en formato Unicode serán mostrados de la misma forma en PL/SQL Developer. Si deshabilita esta opción PL/SQL Developer convertirá los datos al juego de caracteres de Oracle Client, de acuerdo con el valor de la clave del registro NLS_LANG.

20.3 Oracle - Compilador.

Esta página de configuración le permite controlar diferentes opciones para el compilador de PL/SQL de la ventana de programa. • Nivel de optimización.

Especifica el nivel de optimización que se utilizará para elaborar las unidades de programa de PL/SQL. Cuanto mayor sea el valor de este parámetro, más esfuerzo realizará el compilador para optimizar el código PL/SQL de sus unidades de programa.

• Tipo de código. Cuando esta opción se establece a Interpretado, las unidades de programa PL/SQL se compilarán en formato de código de bytes. Estos módulos son ejecutados por el motor intérprete de PL/SQL. Cuando esta opción se establece a Nativo, las unidades de programa de PL/SQL se compilaran

Page 135: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 135

como código nativo (máquina). Estos módulos se ejecutarán de forma nativa sin incurrir en la sobrecarga del intérprete.

• Alcance de los identificadores de PL/SQL. Esta opción controla la recogida y almacenamiento en tiempo de compilación, de las referencias cruzadas, y los identificadores de origen de datos de código PL/SQL. Cuando esta opción se establece en Ninguno, se desactiva la recogida de los datos de identificación. Cuando se establece a Todos, permite la recogida de todos los datos de identificación del código fuente.

• Indicadores de compilación condicional de PL/SQL. Esta opción le permite definir el valor predeterminado de los flags compilación condicional para cada compilación que realice. Puede utilizar cualquier nombre, un valor entero, un booleano, o nulo. Para obtener más información acerca de la compilación condicional, vea PL/SQL Language Reference Guide. Si deja esta opción en blanco, se utilizarán los flags por defecto para la instancia de base de datos que esté utilizando. Pulse el botón Restablecer los valores por defecto de los flags para obtener los flags por defecto, de la base de datos.

• Advertencias PL/SQL. En esta sección puede definir como tratara el compilador las excepciones de alerta específicas o categorías de gravedad específica. Para cada número de excepción o categoría puede definir si están Deshabilitadas (ningún mensaje de advertencia), si serán tratadas como una advertencia (compilación correcta con un mensaje de advertencia) o si se consideran como un error (compilación fallida con un mensaje de error). Puede especificar varios números de excepción, si los separa mediante comas. Tenga en cuenta que el orden de las advertencias es relevante: los artículos situados en la parte inferior de la lista tienen prioridad sobre los artículos situados en la parte superior. Por lo tanto, primero debe especificar las acciones para las categorías y, a continuación, las acciones para las excepciones específicas.

• Variables de sustitución PL/SQL. Si sus archivos de programa incluyen variables de sustitución como las que se utiliza en SQL*Plus (con el prefijo $), puede definir aquí los valores de estas variables. Tenga en cuenta que las variables de sustitución sólo son útiles cuando se trabaja con archivos de programa, ya que el código fuente resultante en la base de datos sólo contendrá los valores sustituidos después de realizar la compilación.

20.4 Oracle - Depurador.

Page 136: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 136

• Mostrar sugerencias con el valor de las variables - Si deshabilita esta opción, los valores de las

variables no se mostrarán automáticamente en una sugerencia (tooltip) cuando mueva el cursor del ratón sobre su nombre en la ventana de prueba. En vez de esto, debe seleccionar el elemento Establecer variable desde el menú contextual después de hacer clic con el botón derecho del ratón sobre el nombre de la variable.

• Omitir objetos del usuario SYS - Si tiene privilegios para ver el código de los objetos del usuario SYS, el depurador puede entrar en esas unidades de programa si deshabilita esta opción. Por lo general no deseará hacerlo, además esta opción se encuentra deshabilitada por defecto.

• Actualizar inspecciones después de cada paso - Si deshabilita esta opción, puede refrescar manualmente las inspecciones si presiona el botón Actualizar inspecciones en la barra de herramientas de depuración de la ventana de prueba. Haciendo esto acelerará el rendimiento del proceso de depuración en maquinas con una configuración lenta.

• Actualizar la pila de llamadas después de cada paso - Si deshabilita esta opción, puede refrescar manualmente la pila de llamadas si presiona el botón Actualizar la pila de llamadas en la barra de herramientas de depuración de la ventana de prueba. Haciendo esto puede mejorar el rendimiento del proceso de depuración en maquinas con una configuración lenta.

• Añadir información de depuración al compilar - Cuando esta opción esta habilitada, cada vez que realice un proceso de compilación con PL/SQL Developer, este añadirá automáticamente la información de depuración, con lo que los valores de las variables pueden verse y establecerse durante una sesión de depuración. Si deshabilita esta opción, puede añadir de forma manual la información de depuración desde el Explorador de Objetos.

Page 137: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 137

• No añadir nunca la información de depuración para las siguientes conexiones - PL/SQL Developer no añadirá de forma automática información sobre depuración, independientemente de la opción Añadir información de depuración al compilar. Esto puede ser útil si quiere estar seguro que nunca añadirá información de depuración a las bases de datos de producción, o para determinados usuarios. Puede utilizar la sintaxis user@database, donde puede utilizar los caracteres comodín * y ? (ejemplo sys@* para el usuario sys en cualquier de base de datos).

• Añadir siempre la información de depuración para las conexiones - PL/SQL Developer añadirá de forma automática información sobre depuración, independientemente del valor de la opción Añadir información de depuración al compilar. Esto puede ser útil si quiere estar seguro de que siempre añadirá la información de depuración en las bases de datos de desarrollo, o para ciertos usuarios. Puede utilizar la sintaxis user@database, donde puede utilizar los caracteres comodín * y ? (ejemplo sys@* para el usuario sys en cualquier tipo de base de datos).

• No añadir nunca la información de depuración a los objetos - PL/SQL Developer no añadirá información de depuración para los objetos de la lista. Algunas versiones de Oracle pueden causar errores cuando se añade la información de depuración en situaciones concretas. Podrá ver los típicos errores ORA-00600, ORA-03113 o PLS-00801 durante el proceso de compilación. Si este problema ocurre, puede añadir el objeto a la lista (propietario.nombre) hasta que Oracle desarrolle un parche para este error.

20.5 Oracle - Salida.

• Habilitado - En las ventanas de consulta SQL y en las ventanas de prueba, las llamadas a

dbms_output.put_line serán almacenadas y mostradas después de la ejecución del archivo. Puede anular esta opción en la pestaña Salida de las ventanas de consulta SQL y de las ventanas de prueba.

• Borrar antes de ejecutar - Antes de ejecutar el contenido de una ventana de consulta SQL o de una ventana de prueba, PL/SQL Developer borrará de forma automática la pestaña Salida. De esta forma la pestaña Salida siempre contendrá la salida de la última unidad de programa o consulta ejecutada.

• Tamaño del buffer - El tamaño en bites del buffer del paquete dbms_output. Si el número de bites de la salida durante la ejecución de un programa es mayor que el indicado, se lanzará una excepción. Establece el valor a 0 para que el tamaño del buffer del paquete dbms_ouput sea ilimitado.

20.6 Oracle - Trazador.

Page 138: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 138

Estas preferencias controlan la pestaña Trazador de la ventana de prueba (vea el capítulo 5.11). Puede controlar que columnas de la tabla de trazado desea mostrar y en que orden.

20.7 Oracle - Perfilador.

Estas preferencias controlan la pestaña Perfilador de la ventana de prueba (vea el capítulo 6.3). • Columnas - Controla que columnas de la tabla de perfilado deben mostrarse y en que orden. • Unidad de tiempo - Define la unidad de tiempo de las columnas Total time, Maximum time,

Minimum time y Average time. • Mostrar líneas de código no ejecutadas - Determina si se muestran las líneas de código que no

se han ejecutado. • Mostrar tiempo gráficamente - La columna Tiempo total mostrará la representación grafica del

tiempo. Puede controlar el brillo del color de esta barra, o hacerlo invisible.

20.8 Oracle - Historial de conexiones.

Page 139: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 139

Si habilita la opción Almacenar historial, PLSQL Developer almacenará el usuario, la contraseña y la base de datos en el historial de conexiones. Cuando inicie de nuevo PL/SQL Developer, el cuadro de diálogo de inicio de sesión le permitirá seleccionar rápidamente una cuenta utilizada con anterioridad.

Por razones de seguridad puede que no desee almacenar las contraseñas en el historial, aunque PL/SQL Developer los encripta. Esto implica que cualquiera puede conectarse a la base de datos si tiene acceso a PL/SQL Developer en su PC. En dicho caso debería deshabilitar la opción Almacenar contraseñas. Las opciones Tamaño del historial y Cantidad a mostrar controlan el número de conexiones que se almacenarán (las conexiones más antiguas se borrarán del histórico) y cuantas se mostrarán en pantalla. La opción Ordenar por… controla como se ordenarán las conexiones en la lista de selección. Observe que si ha seleccionado la opción Almacenar contraseñas en el historial de conexiones, puede evitar que esto ocurra si presiona la tecla Control mientras presiona la tecla Return o el botón Aceptar durante el inicio de sesión. De esta forma puede evitar que reutilicen las contraseñas de las cuentas con privilegios importantes (por ejemplo SYS o SYSTEM). Puede definir adicionalmente un número de conexiones fija en la sección Usuarios, con o sin contraseña. Esas cuentas de usuario fijas siempre se mostrarán y nunca se borrarán de forma automática. Puede definir adicionalmente submenús para esas cuentas si añadiendo >nombre_de_menú. En el ejemplo anterior, se ha creado un submenú para Chicago y Detroit: >chicago scott/tiger@chicago

Page 140: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 140

sys@chicago as sysdba >detroit scott/tiger@detroit sys@detroit as sysdba larry@detroit

En este caso se ha creado un submenú para una base de datos, pero puede crear cualquier categoría que desee. Por ejemplo Desarrollo, Pruebas, Producción. Si la opción Mantener los usuarios agrupados y desordenado esta habilitada, los usuarios fijos se muestran en una sección separada del historial, y no serán ordenados. Si la opción Mantener los usuarios agrupados y desordenado se encuentra habilitada, al seleccionar un usuario fijo durante el inicio de sesión también lo añadirá al historial. En la sección Historial puede ver que usuarios se han añadido al historial como resultado de una sesión en PL/SQL Developer. Para eliminar un elemento específico, selecciónelo de la lista y presione el botón Borrar elemento situado en la parte derecha de la lista.

Page 141: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 141

20.9 Oracle - Sugerencias.

Sugerencias del compilador. Puede habilitar o deshabilitar individualmente cada sugerencia y controlar otras propiedades cuando sea necesario. Se muestra una breve descripción de cada una de las sugerencias debajo de la lista de sugerencias.

Nomenclatura. En esta lista puede definir la nomenclatura que será comprobada cuando se compile una unidad de programa o cuando se utilice la function Mostrar sugerencias del compilador .Se mostrará una sugerencia por cada elemento en el código de la unidad de programa que no cumpla la nomenclatura indicada. Para cada convención utilizada, puede definir el tipo de elemento (parámetro, variable, etc.), el prefijo requerido por cada tipo de elemento, los valores posibles para el primer carácter y los siguientes (después del prefijo), el sufijo requerido y una descripción para la sugerencia que se mostrará cuando la convención utilizada no se cumpla. La descripción debería estar en la forma que se muestra en el ejemplo anterior. El mensaje con la sugerencia será <Elemento> <Nombre> <Descripción>. Por ejemplo: El parámetro ‘StartDate’ debe comenzar por ‘p ‘. Si un elemento debe cumplir una o varias convenciones, puede añadir varias líneas para el mismo tipo de elemento. Se mostrarán las descripciones de todos los elementos separadas entre sí. Por ejemplo, el mensaje para los parámetros será: El parámetro ‘StartDate’ debe comenzar por ‘p_’ o debe ser ‘Self’.

Page 142: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 142

20.10 Interface de usuario - Opciones.

• Guardar usuario - Puede marcar esta opción para guardar automáticamente el usuario de cada

sesión de PL/SQL Developer. Cuando vuelva a iniciar PL/SQL Developer posteriormente, el último usuario que haya iniciado la sesión será el usuario por defecto en el cuadro de diálogo de inicio de sesión.

• Guardar automáticamente la configuración del escritorio - Cuando esta opción está habilitada, todos los archivos que se encuentren abiertos cuando cierre PL/SQL Developer se abrirán de manera automática cuando vuelva a iniciar la aplicación. Las ventanas de comandos o Explain Plan que no están asociadas con ningún archivo, también serán restauradas. También se restaurarán las dimensiones de la ventana principal y del Explorador de Objetos.

• Utilizar visor interno de HTML - Por defecto PL/SQL Developer utilizará un visor interno de documentos HTML para mostrar la documentación de ayuda en formato HTML. Si tiene instalado Microsoft Internet Explorer 4 o una versión posterior, puede deshabilitar esta opción y utilizar los componentes HTML de Microsoft en su lugar. Esto le proporcionará algunas características extras como el menú contextual, y heredará as preferencias establecidas en el programa Internet Explorer.

• Ventana de ayuda HTML siempre visible - Si esta opción esta habilitada, la ventana de ayuda HTML permanecerá visible por encima de las demás ventanas hasta que la cierre o la minimice. Si esta opción esta deshabilitada, la ventana de ayuda HTML aparecerá como una tarea separada y con su propio botón en la ventana de tareas de Windows. De esta forma puede traer hacia delante la ventana principal de PL/SQL Developer o la ventana de ayuda cada vez que las necesite.

Page 143: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 143

• Mostrar pestañas en varias líneas - Si una ventana contiene múltiples pestañas, esta opción controla si dichas pestañas pueden dividirse en caso de desbordamiento. Si esta opción esta deshabilitada, 2 botones de desplazamiento aparecerán en caso de que ocurra un desbordamiento de las pestañas. Esto sólo se aplica a la ventana de programa.

• Mostrar la ruta completa del archivo en la barra de título - Por defecto, PL/SQL Developer muestra únicamente el nombre del archivo en la ventana de título. Si esta opción se encuentra habilitada, se mostrará la ruta completa del mismo.

• Mostrar el menú de proyectos - El elemento del menú principal Proyectos sólo será visible si esta opción se encuentra habilitada. Deshabilítela si no va a utilizar los proyectos, con lo que no ocupará ningún espacio en el menú principal. Para más detalles sobre los proyectos, vea el capítulo 14.

• Colocar los mensajes de alerta cerca del puntero del ratón - Cuando seleccione esta opción PL/SQL Developer posicionará los mensajes de alerta cerca del puntero del ratón. De esta forma podrá alcanzar fácilmente el botón o los botones de esa alerta. Si esta opción se encuentra desactiva, los mensajes de alerta, se mostrarán centrados en la pantalla.

• Mostrar la vista de detalle en los cuadros de dialogo - Si esta opción se encuentra habilitada, PL/SQL Developer le mostrará los cuadros de dialogo para abrir y guardar archivo con una vista detallada. Si opción está deshabilitada, se mostraran los cuadros de dialogo con la configuración por defecto.

• Notificar finalización para grandes consultas - Cuando esta opción se encuentre seleccionada, PL/SQL Developer le informará de que ha terminado de ejecutar una gran consulta. Puede controlar el tiempo con el que se le informará de la finalización de la consulta, pudiendo también, seleccionar un sonido para reproducir al finalizar la consulta. Si la consulta dura menos tiempo del establecido PL/SQL Developer no reproducirá ningún sonido.

• Diálogos DSA - Cuando seleccione la opción “No mostrar este mensaje otra vez” en un cuadro de dialogo, se añadirá una entrada a esta sección en las preferencias personales del usuario. Si después desea volver a habilitar este mensaje, presione el botón Diálogos DSA para editar esta sección. Esto le muestra un editor que le permite eliminar la línea correspondiente.

Page 144: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 144

20.11 Interfaz de usuario - Barra de herramientas.

Puede controlar que botones deben visualizarse y en que orden. Utilice el elemento Separador, para separar los grupos de botones relacionados. Puede utilizar el elemento New Bar para crear una nueva barra de herramientas debajo de la barra de herramientas previa. El botón Restablecer valores por defecto reinicia la barra de herramientas a su estado por defecto. El botón Restablecer valores clásicos reinicia la barra de herramientas al diseño de PL/SQL Developer 3. Utilice el botón Espacio entre botones para controlar el espacio entre cada botón de la barra de herramientas.

20.12 Interfaz de usuario - Explorador de Objetos.

Page 145: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 145

Estas preferencias controlan la apariencia y el comportamiento del Explorador de Objetos (vea el capítulo 18). • Número máximo de objetos recientes - Controla el número máximo de objetos que serán

visibles en la carpeta Objetos Recientes. Los objetos recientes menos utilizados se borrarán cuando se sobrepase el número máximo de elementos que deben mostrarse.

• Doble clic en un elemento del explorador - Controla que acción se ejecutará cuando haga doble clic en un objeto del Explorador de Objetos, o cuando lo arrastre y lo suelte desde el Explorador de Objetos al entorno de trabajo. Puede especificar una opción por defecto y sobrescribir o heredar esta acción por defecto para cada tipo de objeto de la lista.

• Selección de usuarios por defecto - Controla si la selección de usuario por defecto es el <usuario actual> o <todos los usuarios>.

• Clausula where del selector de usuarios – Permite definir una cláusula where para la consulta que rellena los datos del selector de usuarios. Esta consulta se ejecuta contra la vista all_users, por lo que puede utilizar cualquier columna de esta vista.

• Mostrar tipos de datos - Cuando esta opción esta habilitada, el tipo de datos de las columnas (vistas y tablas), los atributos (objetos) y los parámetros (funciones y procedimientos) se muestran en el Explorador de Objetos.

• Suavizar refresco - En algunos sistemas esta opción podría ralentizar la operación de refresco del Explorador de Objetos (ejemplo al cambiar un filtro, o al iniciar una sesión con un usuario diferente, etc.). En este caso debería deshabilitarla ya que podría conllevar que la pantalla parpadee cuando se refresque el Explorador de Objetos.

• Confirmar compilación - Cuando esta opción se encuentra habilitada, si compila una unidad de programa desde el Explorador de Objetos se le mostrará un mensaje de error o de operación completada con éxito. Cuando esté deshabilitada sólo verá un mensaje cuando el proceso de compilación falle.

Los botones Filtros (vea el capítulo 18.2) y Carpetas (vea el capítulo 18.3) llamarán al cuadro de diálogo correspondiente.

20.13 Interfaz de usuario - Editor.

Page 146: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 146

Sangría • Ninguna - El editor no aplicara ninguna sangría al texto cuando presione la tecla de Tabulado, y

siempre se situara en el primer carácter de la siguiente línea. • Automática. - El editor aplicará la sangría al texto automáticamente después de presionar la tecla

Enter, situando el cursor en la misma posición que la línea anterior.

Page 147: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 147

• Utilizar la tecla de retroceso para deshacer la sangría. - Si esta opción esta habilitada, volverá a la sangría anterior, Cuando esté deshabilitada la tecla de Retroceso volverá a su función normal.

• Caracteres - El número de caracteres que el editor utilizará cuando aumente o reduzca la sangría del texto seleccionado.

Tabulados y ajustes de línea • Ajustar el tabulado a la línea anterior - Esta opción hará que el editor ajuste la línea a la

posición de la línea anterior. • Tamaño del tabulado - Determina el número de caracteres que se utilizarán con un tabulado. • Reemplazar espacios en blanco por tabulados - El editor reemplazará los espacios por

tabulados si es posible. • Utilizar tabulado - Cuando este deshabilitada, se utilizarán espacios en blanco para los tabulados

y las sangrías. • Ajustar líneas - Las líneas que sean más largas que el ancho de la ventana se continuarán en la

línea siguiente. • Permitir colocar el cursor después del final de una línea -Cuando este habilitada, puede colocar

el cursor después del fin de una línea. Cuando inserte texto aquí, la línea se rellenará con espacios primero.

• Margen visible - Mostrará una línea vertical en la posición indicada. 0 = deshabilitado. • Mostrar caracteres especiales por defecto - Cuando esté habilitada, PL/SQL Developer

mostrará los caracteres especiales como los espacios, tabulados y retornos de carro. Cuando esta opción se encuentre deshabilitada, tendrá que habilitarla directamente desde el menú Edición.

Resaltar sintaxis. Este grupo de preferencias controla el resalte de la sintaxis que se utilizará en los distintos editores. Puede habilitar o deshabilitar el resalte de la sintaxis, y definir el color y el estilo de las palabras reservadas, comentarios, cadenas de texto, números y símbolos (:=, =>, ||, etc.). Puede definir que palabras reservadas y como se deben escribir, en mayúsculas, minúsculas o sólo con la primera letra en mayúsculas. Puede definir también un resalte de sintaxis personalizado y que palabras deben resaltarse. Presionando el botón Personalizar palabras reservadas abrirá un editor desde el que podrá definir dichas palabras reservadas.

Reemplazar automáticamente. PL/SQL Developer le permite definir las palabra que reemplazará automáticamente en los diferentes editores del programa. Por ejemplo, si define la palabra wo como reemplazo para “when others then”, simplemente teclee la palabra wo para insertar este texto. El botón Editar le permite editar el archivo con la definición de las palabras y sus remplazos. En cada línea de este archivo puede introducir la especificación palabra=texto a reemplazar. Por ejemplo: Wo=when others then rs=rollback to save point También puede hacer referencia a una plantilla, como texto de reemplazo. Por ejemplo: Wh=Loops\While loop.tpl En este caso, PL/SQ Developer utilizará el archivo Whileloop.tpl que se encuentra definido en el directorio Loops, permitiéndole utilizar las variables y las diferentes definiciones como texto de reemplazo. El campo Archivo de definición le permite indicar que archivo que contiene las definiciones para la función reemplazar automáticamente de PL/SQL Developer.

Page 148: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 148

Otros. • Permitir mostrar / ocultar código - Cuando esta opción esté habilitada, PL/SQL Developer le

permitirá mostrar y ocultar código tal y como se describe en la sección Mostrar / Ocultar código del capítulo.

• Mostrar números de línea - Marque esta opción si desea ver los números de línea en el margen izquierdo.

• Mostrar estado de las líneas de código - Cuando está habilitada, PL/SQL Developer le mostrará una marca de color amarillo en el margen del editor a lado de las líneas que hayan sufrido algún cambio, y una marca de color verde al lado de las nuevas líneas de código que haya insertado.

• Resaltar línea actual - Controla si se resalta la línea de texto donde se encuentra situado el cursor.

• Comenzar la búsqueda desde el principio del archivo - Cuando utilice las funciones de búsqueda de PL/SQL Developer, estas continuarán al comienzo del archivo (cuando busque hacia delante), o al final del mismo (cuando busque hacia atrás), si no pueden localizar el texto buscado.

• Resaltar paréntesis - Cuando esta opción está habilitada, el editor resalta las parejas de paréntesis cuando el cursor se encuentre situado entre el paréntesis de apertura y de cierre.

• Permitir ancho variable para los tipos de letra con ancho fijo - Esta opción le permite visualizar correctamente tipos de caracteres con ancho fijo, como por ejemplo caracteres japoneses. También puede utilizar esta opción para tipos de letra con ancho fijo que son más anchas visualizadas en negrita, por ejemplo, que visualizadas de forma normal. Utilice esta opción si PL/SQL Developer está truncando los caracteres a la hora de visualizarlos.

• Color del marcador - Determina el color de todos los marcadores como paréntesis, variables, etc. • Color del marcador de búsquedas - Determina el color de las coincidencias encontradas por la

barra de búsqueda. • Pegar valores separados por comas - Controla si los elementos seccionados en el Explorador de

Objetos o en la ventana de descripción de objetos se pegan en el editor en una o en varias líneas.

20.14 Interfaz de usuario - Fuentes

Page 149: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 149

Las preferencias de las Fuentes controlan el tipo de fuente del Explorador de Objetos, del editor de SQL y la fuente utilizada en las diversas rejillas como en la ventana de consulta SQL, de propiedades, etc. Si presiona el botón Seleccionar puede cambiar el nombre, el estilo y el color de la fuente. Adicionalmente puede establecer el color de fondo (Bkg) para cada fuente. Para la rejilla de resultados y el editor de SQL puede especificar si PL/SQL Developer incluirá el tipo de fuente utilizada cuando copie texto al portapapeles de Windows. Cuando esta opción este deshabilitada el contenido será copiado al portapapeles de Windows como texto plano. Desde esta pantalla también puede establecer la fuente por defecto para todos los cuadros de dialogo de PL/SQL Developer.

Page 150: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 150

20.15 Interfaz de usuario - Asistente de código.

El asistente de código muestra automáticamente la información de los objetos de la base de datos a medida que teclea su nombre (vea el capítulo 22.3). Esta página de preferencias le permite definir el comportamiento de esta herramienta. • Activar automáticamente - El asistente de código puede activarse automáticamente después de

un determinado retraso (vea más abajo). También puede definir si desea activar el asistente de código de forma manual mediante el uso de una tecla de función.

• Retraso - El número de milisegundos que el editor esperará hasta mostrar el asistente de código. • Estilo de codificación - Controla como los elementos seleccionados se insertan en el editor

cuando los seleccione: • Smart – El asistente de código buscará el objeto descrito para determinar su estilo. • Init Caps – El primer carácter de cada palabra (separado por un guión de subrayado) se

escribe en mayúsculas. • Lowercase – Todos los caracteres se convierten a letra minúscula. • Uppercase – Todos los caracteres se convierten a mayúscula.

• Utilizar formato original - Cuando esta opción se encuentra habilitada el asistente de código determina, si es posible, el estilo del identificador desde el código almacenado en el diccionario de datos de Oracle. Esto se aplica a todas las unidades de programa y sus elementos (parámetros, tipos, etc.) y a las columnas de las vistas, sobrescribiendo la opción Estilo de codificación descrita arriba. Si no puede determinarse el estilo original (mayúsculas/minúsculas) se aplicará el descrito en la opción Estilo de codificación. Puede que le interese deshabilitar esta característica por motivos de rendimiento.

• Describir usuarios - Determina que objetos propiedad del usuario se muestran cuando teclea un nombre de usuario seguido de un periodo. Si esta opción está habilitada puede de forma adicional definir los tipos de objetos que desea incluir en la lista.

• Describir contexto - Determina si el asistente de código debería describir el contexto del usuario, editor y unidad de programa.

• Número mínimo de caracteres - Determina el número de caracteres que necesita teclear de una palabra antes de que la descripción del contenido pueda activarse automáticamente. Observe que siempre puede llamar al asistente de código manualmente, incluso si no ha tecleado el número de caracteres definido.

Page 151: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 151

• Describir funciones estándar - Por defecto el asistente de código describirá las funciones estándar como to_char, add_months, etc. Si se encuentra familiarizado con esas funciones, puede deshabilitar esta opción.

• Mostrar las variables y la declaración de tipos en una ventana emergente - Cuando se encuentra habilitada, si mantiene el puntero del ratón sobre una variable o un tipo de datos en la ventana de programa de PL/SQL Developer, se mostrará su declaración en una ventana emergente.

20.16 Interfaz de usuario - Configuración del teclado.

En esta página puede definir su propia combinación de teclas para todas las funciones de PL/SQL Developer. Simplemente seleccione la función en la lista y presione la combinación de teclas que desea utilizar para dicha función. Para borrar la combinación de teclas asignadas a una función determinada seleccione dicha función de la lista y presione la tecla Esc.

20.17 Interfaz de usuario - Apariencia.

Page 152: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 152

• Lenguaje - Si tiene una versión multi-lenguaje de PL/SQL Developer, puede seleccionar el

lenguaje que desee utilizar aquí. Todas las etiquetas y mensajes se mostrarán en el lenguaje seleccionado.

• Color de fondo - Le permite definir el color y el degradado del espacio de trabajo de PL/SQL Developer. Si no quiere utilizar un degradado pero si un color, establezca el Color 1 y el Color 2 al mismo valor.

• Indicadores de conexión - Esas opciones le permiten mostrar una indicación visual cuando PL/SQL Developer utilice una conexión específica. Puede definir un número de conexiones que coincidan con el formato usuario@basededatos, y asociar un color con ellas. Esto color puede asociarse con un indicador alineado a la izquierda o a la derecha de la barra de herramientas, un indicador en la ventana y en la lista de ventanas, o con el color de fondo de la aplicación (sobrescribiendo el degradado de fondo). La conexión puede contener los comodines * y ?. En el ejemplo anterior, el color de fondo del editor y el indicador de la barra de herramientas alineado a la derecha serán de color rojo cuando este conectado a la base de datos PRODDB con cualquier usuario. Será de color amarillo cuando se conecte como SYS a cualquier base de datos. El primer elemento de la lista tiene preferencia, con lo que el indicador será de color rojo cuando se conecte como SYS a la base de datos PRODDB.

• Sombrear botones deshabilitados - Cuando esta opción se encuentra habilitada, los botones deshabilitados se muestran descoloridos. Cuando esta deshabilitada se utiliza la apariencia

Page 153: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 153

estándar de color gris para los botones deshabilitados. Para sistemas con calidad de color mínima habilitada (256 colores), los botones deshabilitados siempre se muestran en color gris.

• Almacenar elementos de pantalla en memoria - La pantalla parpadeará menos cuando mueva o redimensione las ventanas, pero el rendimiento del sistema podría ser inferior.

• Completar automáticamente las listas de selección - Cuando esta opción se encuentre habilitada, los campos de las ventanas de PL/SQL Developer serán completados automáticamente con el elemento que corresponda en la lista desplegable.

• Deshabilitar estilos y temas XP - Este botón le permite deshabilitar los estilos y temas XP, tal y como se define en las Opciones de Pantalla de sistema operativo Microsoft Windows.

• Restablecer las opciones de anclado de las ventanas - Esta opción restaura los valores por defecto para el anclaje de las ventanas de PL/SQL Developer.

20.18 Interfaz de usuario - NLS.

En esta página puede definir los formatos para la fecha, la hora y los números que se utilizarán en PL/SQL Developer.

Fecha. • Definido por el usuario - Formato definido explícitamente para las fechas, siguiendo las mismas

reglas que se emplean en la configuración regional de Windows. • Formato de Windows - El formato tal y como se encuentra definido en la configuración regional

de Windows. • Formato de Oracle - El formato tal y como se encuentra definido en las variables de entorno de

Oracle (NLS_DATE_FORMAT).

Hora. • Definido por el usuario - Formato definido explícitamente para las horas, siguiendo las mismas

reglas que se emplean en la configuración regional de Windows. • Formato de Windows - El formato tal y como se encuentra definido en la configuración regional

de Windows.

Page 154: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 154

Números. • Definido por el usuario - Formato definido explícitamente para los números por el usuario, aquí

podrá definir los símbolos a utilizar tanto para los decimales como para los grupos de decimales. • Formato de Windows - El formato tal y como se encuentra definido en la configuración regional

de Windows. • Formato de Oracle - El formato tal y como se encuentra definido en las variables de entorno de

Oracle (NLS_NUMERIC_CHARACTERS).

20.19 Tipos de Ventanas - Ventana de Programa

Estas preferencias afectan al comportamiento de la ventana de programa (vea el capítulo 4). • Permitir compilar los programas mientras se ejecutan - En un modo de sesión Multisesión o

Dual técnicamente puede compilar unidades de programa mientras se está ejecutando un archivo de prueba o un archivo SQL. Esto podría ocasionar bloqueos, los cuales pueden evitarse con esta opción.

• Compilación segura (utilizando un objeto de compilación temporal) - Cuando esta opción se encuentra habilitada, cada proceso de compilación se prueba primero utilizando un objeto

Page 155: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 155

temporal. Cuando esta prueba finalice correctamente, el objeto se compila. Esto puede resultar útil si esta compilando objetos en un entorno en el que los objetos de la base de datos marcados como no validos pueden causar problemas.

• Compilar en segundo plano - Cuando esta opción se encuentra habilitada, el proceso de compilación se ejecuta en un hilo en modo background, en una sesión separada. De esta forma puede continuar trabajando mientras se realiza el proceso. Esto conlleva una sesión extra de la base de datos por cada ventana de programa. Observe que esta preferencia sólo es efectiva si la opción modo de sesión esta establecida a Multisesión.

• Guardar antes de compilar - Si quiere asegurarse de que los objetos de la base de datos y los archivos de código se encuentran sincronizados, puede habilitar esta opción.

• Ignorar código PL/SQL no reconocido - Cuando este opción está habilitada, la ventana de programa ignorará todo el código SQL que no empieza con “create or replace <program unit type>”. Otros comandos de SQL o SQL*Plus en el archivo de programa será ignorados.

• Mostrar el panel de contenido del código - Esta opción controla si se muestra el panel de contenido del código. Vea el capítulo 22.12 para más detalles.

• Resaltar el código PL/SQL automáticamente en el panel de contenido del código - Controla si el código PL/SQL en el editor se resaltará automáticamente cuando el cursor del ratón se mueva sobre un elemento en el panel de contenido del código.

• Mostrar la jerarquía del código - Esta preferencia controla si muestra el panel de jerarquía del código. Vea el capítulo 22.13 para más detalles.

• Resaltar variables - Cuando el cursor se encuentra situado encima de una variable, todas las coincidencias de dicha variable se resaltan. Esta opción facilita el ver donde se esta utilizando una variable y cual será el impacto del cambio. Si esta opción esta deshabilitada, necesita utilizar el elemento Buscar coincidencias desde el menú Edición.

• Resaltar el código automáticamente en el editor al utilizar el panel de jerarquía del código - Controla si el código PL/SQL en el editor se resaltará automáticamente cuando el cursor del ratón se mueva sobre un elemento en el panel de jerarquía del código.

• Resaltar palabras reservadas if, loop, case - Cuando el cursor del ratón se encuentre situado en instrucciones de tipo: if/ then / else / elsif /end if, loop / end loop, for / loop / end loop, while / loop / end loop, case / when / then / else / end case, declare / begin / end.

• Mostrar sugerencias del compilador después de compilar - Las sugerencias del compilador le proporcionan información acerca de declaraciones no utilizadas, asignaciones de variables no utilizadas, errores potenciales y alertas. Cuando esta opción está habilitada, dichas sugerencias se mostrarán automáticamente al finalizar el proceso de compilación, debajo de los errores de compilación (si los hubiese). Si deshabilita esta opción, tendrá que seleccionar explícitamente el elemento Mostrar sugerencias del compilador del menú Herramientas o en el botón situado en la barra de herramientas.

• Color de fondo del error - Selecciona el color de fondo del texto de un error de compilación. • Texto del error - Selecciona el color del texto de un error de compilación. • Seguimiento - Selecciona el color de fondo para el texto resaltado del contenido del código, de la

jerarquía del código y de las palabras reservadas. • Guardar estado de las ventanas - Cuando esta habilitado, la posición, tamaño, marcadores,

marcas de color y variables de sustitución de una ventana de programa se guardan en un archivo .pfi separado y serán restauradas cuando el archivo o el objeto de la base de datos sea visto o editado otra vez. También puede especificarse la ubicación de esos archivos.

20.20 Tipos de ventanas - Ventana de consulta SQL.

Page 156: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 156

Estas preferencias afectan al comportamiento de la ventana de consulta SQL (vea el capítulo 7). • Ejecutar commit automáticamente - Esta opción controla si se ejecuta automáticamente una

instrucción commit para las instrucciones de tipo DML ejecutadas en una ventana de consulta SQL.

• Ejecutar commit automáticamente para los registros validados - Esta opción controla si a los registros validados a través de la rejilla de resultados se les aplican de forma automática una instrucción commit.

• Ejecutar consultas automáticamente - Si esta opción esta habilitada, una ventana de consulta SQL que se ha creado seleccionando los elementos Consultar datos o Editar datos para una tabla o vista se ejecutará inmediatamente. Si esta opción está deshabilitada, puede modificar la consulta generada antes de ejecutarla.

• Seleccionar consultas automáticamente - Si tiene más de una instrucción SQL en el editor (separadas por puntos y comas), la ventana de consulta SQL seleccionará automáticamente la instrucción donde se encuentre situado el cursor antes de ejecutarla. De esta forma no tendrá que seleccionarla explícitamente.

Page 157: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 157

• Preguntar si se guardan los cambios en las nuevas ventanas - Cuando cierra una ventana de consulta SQL que ha creado, normalmente se le preguntará si desea archivar. Si deshabilita esta opción, esta confirmación se omitirá. Si ha modificado un archivo previamente abierto, siempre se le preguntará si desea guardar los cambios, independientemente de esta opción.

• Ejecutar consulta vinculada en una nueva ventana - Cuando esta preferencia está establecida, al ejecutar una consulta vinculada (vea el capítulo 7.4), creará una nueva ventana de consulta SQL. Si no está establecida, la consulta vinculada se ejecutará en la ventana de consulta SQL actual.

• Convertir campos numéricos mediante to_char - Cuando esta opción esta habilitada, los campos numéricos se convertirán en caracteres en el servidor. Los parámetros NLS de la sesión determinarán el formato de esos valores. PL/SQL Developer no realizará ningún formateo o validación adicional sobre los números.

• Convertir fechas mediante to_char - Cuando esta opción está habilitada, los campos de tipo fecha se convertirán en caracteres en el servidor. Los parámetros NLS de la sesión determinarán el formato de esos valores. PL/SQL Developer no realizará ningún formateo o validación adicional sobre una fecha, y el selector de fechas no estará disponible cuando edite esos campos.

• Mostrar información del diccionario en la barra de estado - Cuando está habilitada, la siguiente información del diccionario de datos se mostrará en la rejilla de resultados: • El tipo de datos de la columna y, opcionalmente, un comentario en la barra de estado. • Se mostrara una lista para las columnas que tengan restricciones de comprobación para

columnas especificas (ejemplo col in (value1, value2, …)). • Se mostrará una lista para las columnas con restricciones de clave foránea para tablas

pequeñas de menos de 1000 registros. • Mostrar número de líneas - Cuando está habilitada, el editor de SQL de PL/SQL Developer

mostrará los números de línea en la parte izquierda del editor de SQL. • Líneas iníciales del editor vacías – Cuando ejecuta una consulta en la ventana de SQL, aparecerá

el panel de resultados Esta opción controla el número de líneas que se verán en el editor de SQL independientemente del número de líneas que ocupe la consulta.

• Color de fondo de las filas alternas - Cuando se encuentra habilitada, esta opción le permite definir el color de fondo para las filas alternas en la rejilla de resultados.

• Color de fondo de la celda para los valores nulos - Este color se utilizará para indicar valores nulos. Esto hace que los valores nulos sean más fáciles de identificar para valores que sólo son blancos o valores que no se muestran directamente en la rejilla (ejemplo LOB y Longs).

• Número de registros por página -Esta preferencia determina cuantos registros son devueltos por cada consulta de selección y cada vez que presiona el botón Página siguiente en la rejilla de resultados de una ventana de consulta SQL. • Determinar automáticamente – El tamaño de la rejilla de resultados determina cuantos

registros se devuelven. • Número fijo – Se devuelve el número de registros especificados. • Todos los registros – Todos los registros se devuelven inmediatamente cuando se ejecuta la

consulta. • Formato numérico - Esta preferencia controla como se muestran las columnas numéricas:

• Alineado a la izquierda – Los valores se muestran alineados a la izquierda sin ningún tipo de formato.

• Alineado a la derecha – Los valores se muestran alineados a la derecha sin ningún tipo de formato.

Page 158: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 158

• Formateados – Los valores se muestran alineados a la derecha, con un formato que corresponde a la precisión y la escala del campo.

• Formateado con separador de decimales – Similar a la opción anterior, pero incluye un separador de decimales (ejemplo. 1.277,65).

• Filtrar consulta - Esta opción controla el comportamiento por defecto de la ventana de consulta SQL cuando se encuentra en modo de filtrado (vea el capítulo 7.3): • Mayúsculas / Minúsculas – Los valores de la consulta de los campos de caracteres se tratan

en mayúsculas /minúsculas. • Realizar consultas exactas – Los campos de tipo carácter sólo necesitan contener los

valores exactos de la consulta. • Ignorar fracciones de tiempo – La fracción de tiempo de los campos de tipo fecha se

ignoran si los valores de la consulta no contienen ninguna fracción de tiempo.

20.21 Tipos de ventana - Ventana de prueba.

• Ejecutar commit automáticamente después de la ejecución - Esta opción controla si al finalizar

la ejecución de un archivo de prueba se le aplica automáticamente una instrucción commit.

20.22 Tipos de ventanas - Plan de ejecución.

Estas opciones controlan que columnas de la tabla plan table se muestran en la ventana del plan de ejecución (vea el capítulo 6.1), y el orden en el cual deberían aparecer.

20.23 Herramientas - Comparación.

En esta página de preferencias puede seleccionar la herramienta externa de comparación de objetos (vea el capítulo 21.10) . Utilice las siguientes directivas para especificar los parámetros que controlan si se ignoran las mayúsculas o los espacios en blanco:

Page 159: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 159

• <IgnoreCase=on|off> Esta directiva utilizar la expresión on o off en caso de que las diferencias entre mayúsculas y minúsculas deban ser o no ignoradas.

• <IgnoreWhiteSpace=on|off> Esta directiva utilizar la expresión on o off en caso de que los espacios en blanco deban o no ser ignorados.

Por ejemplo, para ExamDiff puede utilizar el parámetro /i parar ignorar las mayúsculas y /!i para tener en cuenta las mayúsculas a la hora de realizar la comparación, puedes utilizar el parámetro /w para ignorar los espacios en blanco /!w para tener en cuenta los espacios en blanco. Estos parámetros deben especificarse después del parámetro que indica el nombres de los archivos . Por lo tanto, la lista de parámetros para ExamDiff se vería de la siguiente manera: %1 %2 <IgnoreCase=/i|/!i> <IgnoreWhiteSpace=/w|/!w> La lista de parámetros resultantes cuando es necesario comparar 2 archivos y controlar si hay diferencias entre las mayúsculas y las minúsculas e ignorar los espacios en blanco seria la que se muestra a continuación: c:\temp\file1.sql c:\temp\file2.sql /!i /w

20.24 Herramientas - Generador de datos.

Esta página de preferencias le permite definir un conjunto genérico de resultados para el Generador de datos. Estos valores por defecto pueden sobrescribirse para cada definición de datos del generador. Para más información sobre el significado de esas preferencias, vea el capítulo 21.9.

Page 160: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 160

20.25 Herramientas - Lista de elementos pendientes.

Estas preferencias controlan los valores de las listas de selección Prioridades, Categorías y Propietarios que se encuentra en el editor de elementos pendientes. Para las propiedades puede ser útil prefijar cada valor con un número, con lo que la lista puede ordenarse por prioridad. Vea el capítulo 15 para más detalles.

20.26 Herramientas - Lista de instrucciones ejecutadas

En esta página de preferencias puede definir el número máximo de instrucciones que almacenarán en el buffer, y el directorio donde deben almacenarse los archivos. Vea el capítulo 22.4 para más detalles.

20.27 Archivos - Directorios

Page 161: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 161

• Archivos de programa - Define el directorio inicial que se utilizará cuando abra o guarde un

archivo de programa. Si deja este directorio en blanco, se utilizará el directorio que utilizó para abrir o guardar el último archivo de programa.

• Archivos de prueba - Define el directorio inicial que se utilizará cuando abre o guarda archivos de prueba. Si deja este directorio en blanco, siempre se iniciará en el directorio que utilizó para abrir o guardar el último archivo de prueba.

• Archivos SQL - Define el directorio inicial que se utilizará cuando abra o guarde archivos SQL. Si deja este directorio en blanco, se utilizará el directorio que utilizó para abrir o guardar el último archivo SQL.

• Informes - Define el directorio inicial que se utilizará cuando abra o guarde los informes. Si deja este directorio en blanco, se utilizará el directorio que utilizó para abrir o guardar el último informe.

• Archivos de comandos - Cuando abra un archivo de comandos desde el menú o tecleando @file, este directorio será el que se utilice por defecto. Si deja este directorio en blanco, se utilizará el directorio de trabajo.

• Macros - Este directorio se utilizará para almacenar sus librerías de macros. Si deja este directorio en blanco, se utilizará el subdirectorio Macro en el directorio de PL/SQL Developer.

• Plantillas - Este directorio se utilizará para almacenar las plantillas. Si deja este directorio en blanco, se utilizará el subdirectorio Template del directorio PL/SQL Developer.

• Plug-Ins - Este directorio se utilizará para buscar los complementos. Si deja este directorio en blanco, se utilizará el subdirectorio Plug-In del directorio de PL/SQL Developer.

• Proyectos - Define el directorio inicial cuando abra o guarde proyectos. Si deja este directorio en blanco siempre empezará en el directorio donde abrió o guardó el proyecto la última vez.

• Consultas estándar - Define el directorio donde se almacenan las consultas estándar. Si deja este directorio en blanco, las consultas estándar se almacenarán en el directorio de datos de su perfil.

• OFS - Define donde se encuentra el archivo ofs.ldf. El botón Organizador OFS le permite lanzar la aplicación para ver o editar este archivo. Vea el capitulo 30.1.

Page 162: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 162

20.28 Archivos - Extensiones.

En esta página puede definir las extensiones para todos los tipos de archivos. Cuando guarde o cargue dicho archivo PL/SQL Developer asumirá la extensión por defecto si no especifica una extensión en el cuadro de diálogo. Por cada tipo de archivo puede especificar adicionalmente otras extensiones, que se mostrarán en el cuadro de diálogo. Puede separar varias extensiones mediante una coma. Si presiona el botón Registrar extensiones puede asociar las extensiones por defecto con PL/SQL Developer. Aparecerá un cuadro de diálogo que le permite seleccionar las extensiones que desee asociar con PL/SQL Developer. Si hace doble clic en un archivo con dicha extensión en el explorador de Windows se abrirá automáticamente PL/SQL Developer.

20.29 Archivos - Formatos.

Page 163: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 163

La opción Salto de línea controla como se finalizan las líneas en los archivos de texto. Pueden terminarse con formato Windows con el par de caracteres CR/LF o al estilo UNIX/LINUX con LF. Puede especificar de forma adicional que archivos se encuentran en formato UNIX o Windows en determinados directorios. Puede especificar múltiples directorios en líneas separadas y seleccionar un directorio presionando el botón Añadir directorio (…). Observe que no solo los archivos guardados en este directorio están en formato Unix, también los archivos guardados en los subdirectorios por debajo de este. La opción Codificación controla si los archivos se guardan siempre en formato Unicode UTF8 format, o si por el contrario PL/SQL Developer intenta determinar si un archivo contiene caracteres Unicode. Si contiene caracteres Unicode, el archivo se guardará en formato UTF8. Si todos los caracteres son ANSI, el archivo se guardará en formato ANSI. La opción Exportar comillas controla como se exportan los valores en formato CSV. Cuando esta deshabilitada, todos los valores se encierran entre comillas. Cuando se encuentre habilitada, solo los valores que lo requieran serán encerrados entre comillas. Estos son los valores que contengan comas o comillas. La opción Exportar a Excel con instrucciones SQL controla que si PL/SQL Developer guardará o no las instrucciones SQL en una nueva hoja de Excel cuando exporte los datos a Excel.

20.30 Archivos - Copia de seguridad.

Esta página de preferencias contiene opciones para las copias de seguridad y recuperación de sus archivos.

Crear copias de seguridad. Antes de que PL/SQL Developer guarde un archivo, realizará una copia del archivo original antes de sobrescribirlo. Esta copia de seguridad tendrá el mismo nombre y extensión que el original pero con el prefijo ~ (por ejemplo employee.pck se guardará como employee.~pck). De esta forma siempre tendrá una generación de archivos previos. Todos los cuadros de diálogo que le permiten abrir un archivo, tienen el filtro “Backup files (*.~*)” que le permite abrir fácilmente una copia de seguridad.

Recuperación. PL/SQL Developer puede almacenar todos los archivos abiertos en un directorio temporal para determinados eventos. En caso de un error grave (por ejemplo: un corte de suministro eléctrico, fallo del software, etc.) PL/SQL Developer le permite recuperar esos archivos cuando reinicie la aplicación. Puede especificar los siguientes eventos:

Page 164: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 164

• Al ejecutar - Todos los archivos abiertos se guardarán en un directorio temporal antes de que ejecute una ventana de prueba, de programa, de comandos, de consulta SQL o de informes.

• Guardar cada - Todos los archivos abiertos se guardan en un directorio temporal en el intervalo de tiempo especificado.

20.31 Archivos - HTML/XML.

Estas preferencias le permiten controlar la salida en formato HTML y XML que genera la ventana de informes o las funciones de exportación: • Juego de caracteres - Le permite definir el conjunto de caracteres de codificación del documento

HTML o XML. Este debería corresponder con el conjunto de caracteres de su entorno de Oracle, para que los datos puedan interpretarse correctamente.

• Encabezado - Este texto se insertará en la sección <HEAD> de un documento HTML o en la cabecera de un documento XML.

20.32 Otros - Imprimir.

Page 165: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 165

General. • Mostrar el cuadro de diálogo de impresión - Cuando presione el botón Imprimir, PL/SQL

Developer mostrará el cuadro de diálogo de impresión. • Imprimir números de línea - Mostrará el número de cada línea de código cuando imprima el

código fuente SQL o PL/SQL. • Ajustar líneas al imprimir - Las líneas que sobrepasen el ancho de la página continuarán la línea

siguiente. • Imprimir en blanco y negro - La impresión se realizará en blanco y negro. Deshabilitando esta

opción imprimirá el código en colores o en escala de grises. • Imprimir color de fondo - Cuando esté habilitada, al realizar la impresión se imprimirá el color

de fondo. • Imprimir el texto de la consulta - Determina si el texto de la consulta SQL se imprime encima

de los resultados cuando imprima el contenido de una ventana de consulta SQL.

Rejilla. • Imprimir las líneas de la rejilla - Determina si se imprimen las líneas de la rejilla. • Invertir los colores de la cabecera - Determina si la cabecera de la columna se imprime con los

colores invertidos.

Encabezado. • Título - Cuando esté habilitada, cada página tendrá impreso el tipo y el nombre de archivo en la

parte izquierda de la cabecera. • Fecha - Cuando esté habilitada, cada página tendrá impresa la fecha y hora actual en la parte

derecha de la cabecera.

Pie de página. • Número de página - Cuando esté habilitada, cada página tendrá impresa en el número de página

en la parte inferior.

20.33 Otros - Actualizaciones y noticias.

Page 166: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 166

Le permite controlar si PL/SQL Developer comprueba automáticamente el sitio Web de Allround Automations en busca de actualizaciones y noticias sobre de PL/SQL Developer. Si deshabilita esta opción tendrá que comprobar explícitamente las actualizaciones y noticias presionando la opción correspondiente a través de los elementos Buscar actualizaciones y Buscar noticias situados en el menú de Ayuda.

20.34 Establecer las preferencias.

Page 167: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 167

Como se menciona en el capítulo 20, puede definir un conjunto de preferencia en múltiples niveles. Para definir una preferencia, presione el botón Configurar preferencias situado a la derecha de la lista de selección de preferencias. PL/SQL Developer le mostrará el siguiente cuadro de diálogo:

Las Preferencias personales se definen para el usuario de Windows (en este caso John). Las Preferencias por defecto pueden definirse por el administrador del sistema, y proporcionan las preferencias por defecto para todos los usuarios de Windows, tanto a nivel global como a nivel de conexión.

Preferencias personales. Por defecto todos los usuarios tendrán un conjunto de preferencias personalizado Default <user>. Este es el conjunto de preferencias al que accederá por defecto. Para crear un conjunto de preferencias adicional para una o más conexiones de Oracle, presione el botón Nuevo situado en la parte derecha de la lista de preferencias. Ahora puede introducir una descripción y añadir una o más conexiones. Para cada conexión puede utilizar comodines para varios usuarios y bases de datos. En el ejemplo anterior, John ha definido un conjunto de preferencias llamado Order admin databases para las bases de datos dev_oa, tst_oa y prd_oa. Cada vez que John se conecte a una de esas tres bases de datos, utilizará este conjunto de preferencias. Si una preferencia no esta definida dentro de este conjunto, se utilizará la preferencia correspondiente del conjunto de preferencias por defecto del usuario.

Preferencias por defecto. El administrador del sistema puede definir un conjunto de preferencias globales por defecto para todos los usuarios y conexiones, pudiendo definir de forma adicional un conjunto de preferencias para una o más conexiones. Para hacerlo, cambie a la pestaña Preferencias por defecto y presione el botón Nuevo situado en la parte derecha de la lista de preferencias. Si no introduce ninguna Conexión, el nuevo

Page 168: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 168

conjunto de preferencias definirá las preferencias por defecto para todos los usuarios .Si introduce una o más conexiones, el conjunto de preferencias definirá las preferencias por defecto para esas conexiones.

Orden del conjunto de preferencias. Si una preferencia esta definida en múltiples niveles, el nivel más especifico tendrá preferencia: 1. Conjunto de preferencias personales de conexión (Utilizadas en primer lugar). 2. Conjunto de preferencias personales de Windows. 3. Conjunto de preferencias de la conexión por defecto. 4. Conjunto de preferencias globales por defecto (Utilizadas en último lugar).

Conjuntos de preferencias y directorios. Los conjuntos de preferencias se almacenan en un archivo en el subdirectorio Preferences en el directorio de instalación de PL/SQL Developer. Dentro del directorio de preferencias, las preferencias personales de cada usuario se almacenan en un subdirectorio con el nombre del usuario de Windows. Por ejemplo: C:\Program Files\PLSQL Developer\Preferences\John

Las preferencias por defecto se almacenan en el subdirectorio Default. Por ejemplo: C:\Program Files\PLSQL Developer\Preferences\Default

Si instala PL/SQL Developer en un servidor de archivos, debe proporcionar permisos de lectura y escritura sobre el directorio Preferences, y permiso de lectura en el subdirectorio Preferences\Default. De forma alternativa puede utilizar el comando PREFPATH en la línea de comandos para especificar el directorio donde se encuentran almacenadas las preferencias del usuario: plsqldev.exe prefpath=u:\userdata

Si el usuario de Windows John utiliza PL/SQL Developer, su conjunto de preferencias personal estará almacenado en u:\userdata\john. Las preferencias por defecto siempre se almacenan en el subdirectorio Preferences\Default en el directorio de instalación de P/SQL Developer. Para asegurarse de que todos los usuarios utilizan una ruta idéntica para las preferencias, puede establecer este parámetro en el archivo params.ini (vea el capítulo 32.4).

Page 169: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 169

21. Herramientas. En el menú Herramientas se encuentran disponibles varias herramientas. Dichas herramientas se describen con detalle a lo largo de este capítulo.

21.1 Explorador de Objetos. El Explorador de Objetos se describe con más detalle en el capítulo 18. En el menú Herramientas puede mostrar u ocultar el Explorador de Objetos si selecciona el elemento Explorador de Objetos. También puede configurar los filtros del Explorador de Objetos en este menú seleccionando el elemento Configurar filtros del explorador, lo que se describe en el capítulo 18.

21.2 Buscar objetos de la base de datos. Esta herramienta le permite realizar búsquedas de los objetos de la base de datos basándose en criterios específicos, como el nombre del objeto, el tipo, el propietario o el estado, así como una búsqueda completa de texto para las instrucciones DDL del código de los objetos:

Puede introducir el criterio de búsqueda en las tres secciones principales de este formulario.

Buscar texto. Esta opción equivale al cuadro de diálogo de buscar de un editor de texto y le permite realizar búsquedas que distingan entre mayúsculas y minúsculas, palabras completas o realizar la búsqueda mediante el uso de expresiones regulares. Si usted omite la búsqueda completa de texto se mostrarán los objetos que coincidan con otros criterios de búsqueda.

Criterios de búsqueda. Aquí puede introducir los siguientes criterios de búsqueda:

Page 170: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 170

• Filtro del Explorador - Limita los objetos de acuerdo con el criterio del filtro seleccionado. • Propietario – El propietario del objeto. Puede utilizar los caracteres comodines del lenguaje SQL

(por ejemplo sys %). El valor por defecto es <CURRENTE USER>, lo que limitará la búsqueda de objetos solamente al usuario conectado.

• Nombre – El nombre del objeto. Puede utilizar los caracteres comodines del lenguaje SQL (por ejemplo %common).

• Estado – Limita la búsqueda a los objetos marcados como validos o no validos. • Creado antes/después – Limita la búsqueda a los objetos creados antes y después de una fecha

determinada. Utilice la casilla de control situada a la izquierda del campo fecha para habilitar o deshabilitar estos criterios.

• Modificado antes/después – Limita la búsqueda de los objetos modificados antes y después de una fecha determinada. Utilice la casilla de control situada a la izquierda del campo fecha para habilitar o deshabilitar estos criterios.

Tipos de objetos. Aquí puede seleccionar los tipos de objetos que desea incluir en su búsqueda.

Resultados de la búsqueda. Después de presionar el botón Buscar se ejecutará la función de búsqueda y se rellenará la lista de resultados. Si hace clic con el botón derecho del ratón sobre los resultados de la búsqueda podrá ver el menú contextual del objeto. El primer elemento del menú es Localizar texto, que carga el código del objeto seleccionado en una ventana de programa, e inmediatamente después se desplaza a la primera línea del texto. También puede ejecutar la función Localizar texto si hace doble clic sobre el objeto en los resultados de la búsqueda. Para guardar los resultados de la búsqueda puede hacer clic con el botón derecho del ratón en ellos y seleccionar el formato apropiado desde el elemento Exportar lista en los resultados de la búsqueda.

Guardar los criterios de búsqueda. Para guardar los criterios de búsqueda que utilice más frecuentemente puede presionar el botón Guardar e introducir un directorio y un nombre de archivo. Puede volver a utilizar esos criterios de búsqueda más adelante si presiona el botón Guardar.

21.3 Compilar objetos no validos. Con esta herramienta puede volver a compilar fácilmente todos los objetos marcados como no validos en la base de datos. Cuando la seleccione, se le mostrará un cuadro de diálogo donde puede ver todos los objetos no validos:

Page 171: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 171

Nota: Observe que el filtro del Explorador de Objetos que se encuentre seleccionado controla los objetos no validos que se incluirán. La sección inferior de la ventana mostrará cualquier error de compilación que haya ocurrido previamente para el objeto seleccionado. Para recompilar esos objetos, presione el botón Compilar objetos no validos situado en la barra de herramientas o el botón Ejecutar de la barra de herramientas principal. Las dependencias de los objetos serán analizadas para determinar en que orden debe ejecutarse el proceso de compilación. Los iconos situados en la parte izquierda de la lista de objetos le indican si el objeto se ha compilado correctamente. La sección de errores de compilación se actualizará una vez finalizado el proceso de compilación de los objetos. Para refrescar la lista de objetos no validos, presione el botón Refrescar lista de objetos situado en la barra de herramientas. Esto actualizará la lista con todos los objetos que se encuentran marcados como no validos en este momento. Puede hacer clic con el botón derecho del ratón sobre un objeto para acceder a su menú desplegable.

21.4 Exportar tablas. La herramienta de exportación de tablas le permite exportar la definición de una o más tablas y de sus datos en un archivo, con lo que podrá importar las tablas más adelante. Después de iniciar la herramienta Exportar tablas, puede seleccionar las tablas que desea exportar, escoger un método de exportación (Oracle, SQL, PL/SQL Developer), y establecer varias opciones sobre el método de exportación.

Utilice la opción Comprimir para comprimir automáticamente la salida en un archivo comprimido para ahorrar espacio en disco. En el ejemplo anterior, se creará el archivo C:\exportdata\demo.dmp, el cual se añadirá a un archivo comprimido llamado C:\exportdata\demo.dmp.zip. Posteriormente el archivo original demo.dmp será borrado. La función de exportar analiza las dependencias de las claves foráneas que existen entre las tablas y colocará las tablas en el orden correcto en el archivo de salida generado.

Oracle. La captura de pantalla anterior muestra el método de exportación de tablas de Oracle. Este método le permite especificar las opciones que desea aplicar en la línea de comandos para la herramienta de exportar de Oracle (vea la guía “Oracle Server Utilities”), y acto seguido lanzará el programa para realizar la exportación. El campo Ejecutable le permite seleccionar una versión específica de la utilidad de exportación de Oracle. Por defecto se utilizará la versión más reciente del directorio Oracle Home.

Page 172: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 172

Una vez finalizado el proceso de exportación, una nueva pestaña denominada Registro se hará visible. Esta página contiene el registro creado por la utilidad de exportación. Entre las ventajas de este método se encuentran la velocidad y la portabilidad del archivo de salida. Después de todo, puede importarlo desde cualquier parte con la utilidad de importación de Oracle.

SQL.

Este método crea un archivo estándar de SQL con instrucciones insert y (opcionalmente), instrucciones DDL para crear la definición de las tablas. La pestaña contiene las siguientes opciones: • Eliminar tablas – El archivo creado contiene instrucciones para eliminar las tablas antes de que

se vuelvan a crear y se carguen los datos. Las opciones Crear tablas, Truncar tablas, y Eliminar registros se encuentran deshabilitadas y tienen un valor implícito.

• Crear tablas – El archivo creado contiene instrucciones para crear las tablas antes de que se carguen los datos. Esto incluye las restricciones, los índices y los permisos.

• Truncar Tablas – El archivo creado utiliza la instrucción truncate table para vaciar las tablas antes de que se carguen los datos. Esta opción es más rápida que la opción Borrar tablas, pero no puede utilizarse si existen claves foráneas.

• Borrar registros – El archivo creado utiliza instrucciones delete para vaciar las tablas antes de que se carguen los datos.

• Deshabilitar disparadores – El archivo SQL creado deshabilita todos los triggers de todas las tablas antes de que se carguen los datos y las vuelve a habilitar después de la operación. Esto puede mejorar el rendimiento y puede llegar a ser necesario si el trigger contiene comprobaciones que no pueden aplicarse durante el proceso de importación.

• Deshabilitar restricciones de clave foráneas – El archivo SQL creado deshabilita todas las claves foráneas de las tablas entes de que se carguen los datos, habilitándolos después. Esto puede ser necesario para tablas auto referenciadas. Las claves foráneas entre diferentes tablas no deben ocasionar problemas debido a que se exportan en el orden correcto. Deshabilitar las claves foráneas puede mejorar el rendimiento del proceso.

• Incluir información de almacenamiento – El archivo SQL creado incluirá la información original sobre almacenamiento, como los nombres de los tablespaces y su tamaño inicial, para las instrucciones de creación de tablas Esta información puede ser distinta entre bases de datos por lo que no siempre es apropiado utilizarla.

• Incluir privilegios - El archivo SQL generado incluye los permisos de los privilegios de objetos para otros usuarios y roles. Cuando los objetos son recreados en una base de datos diferente, esos usuarios y roles deben existir por razones obvias.

• Ejecutar commit cada – Controla cuantos registros se van a insertar en el archivo SQL generado antes de que se ejecute una instrucción commit. Si este valor se establece a cero, al final de todas las instrucciones insert se ejecutará una instrucción commit. Esto será necesario para archivos de exportación muy grandes y con un tamaño de los segmentos de rollback pequeño.

Page 173: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 173

• Cláusula Where – Sólo los registros que satisfacen la cláusula where serán exportados. Es necesario que esta tabla se pueda aplicar a todas las tablas seleccionadas.

Entre las ventajas de este método se encuentra la portabilidad del archivo SQL y la posibilidad de editar los resultados con un editor de texto. Utilice la opción Comprimir para comprimir automáticamente la salida en un archivo comprimido para ahorrar espacio en disco. En el ejemplo anterior, se creará el archivo C:\exportdata\demo.sql, el cual se añadirá a un archivo comprimido llamado C:\exportdata\demo.sql.zip. Posteriormente el archivo original demo.sql será borrado.

Método PL/SQL Developer.

Este método de exportación crea un archivo de exportación comprimido de PL/SQL Developer, que contiene los datos y la definición de las tablas. La pestaña contiene las siguientes opciones: • Cláusula Where – Sólo los registros que satisfagan las condiciones de la cláusula where serán

exportados. Las condiciones de la cláusula where deben ser aplicables a todas las tablas seleccionadas.

• Comprimir archivo – Deshabilitando esta opción deshabilitará la compresión. Esto mejorará el rendimiento si los datos no pueden comprimirse bien (ejemplo LONG RAW o BLOB, datos que ya se encuentran comprimidos en la base de datos).

• Incluir información de almacenamiento - El archivo SQL creado contiene la información original sobre almacenamiento como los nombres de los tablespaces y los tamaños iníciales para las instrucciones de creación de tablas. Esta información puede diferir entre distintas bases de datos, con lo que no siempre puede ser adecuada utilizarla.

• Incluir privilegios - El archivo SQL generado incluye los permisos de los privilegios de objetos para otros usuarios y roles. Cuando los objetos son recreados en una base de datos diferente, esos usuarios y roles deben existir por razones obvias.

Entre las ventajas de este método se encuentra la reducción en el tamaño de los archivos de exportación, el hecho de que todas las opciones se transfieran a la fase de importación, y que puede seleccionar fácilmente las tablas durante la importación.

21.5 Importar tablas.

Page 174: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 174

La herramienta para importar tablas de PL/SQL Developer le permite importar la definición de las tablas y los datos desde un archivo previamente exportado, existen 3 métodos para importar tablas, cada uno con su propio formato de ficheros.

Oracle.

Este método utiliza un archivo de volcado creado por la herramienta Oracle export y lanza la herramienta Oracle import para importar los datos. Puede especificar varias opciones, cada una de ellas se corresponde con una opción de la línea de comandos de la herramienta (vea la guía “Oracle Server utilities”). El campo Ejecutable le permite seleccionar una versión específica de la herramienta Oracle import. Por defecto la versión más reciente del directorio Oracle Home será la utilizada. Una vez finalizado el proceso de importación, una nueva pestaña llamada Registro se hará visible. Esta página contiene los registros que se han creado mediante la herramienta de importación.

Page 175: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 175

Insertar SQL.

Este método ejecuta el archivo SQL que fue generado mediante la herramienta de exportación de las tablas. Puede seleccionar lanzar SQL*Plus para ejecutar el archivo, o utilizar una ventana de comandos. Para la alternativa a SQL*Plus puede seleccionar un archivo especifico de SQL*Plus. Por defecto la versión que se encuentre en el directorio Oracle Home será la usada.

Método PL/SQL Developer.

Después de seleccionar un archivo de importación que fue previamente exportado empleando el método de PL/SQL Developer, puede seleccionar uno o más archivos de la lista. Las opciones siguientes pueden especificarse:

Page 176: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 176

• Eliminar tablas – Elimina las tablas antes de que se creen y carguen los datos. Las opciones Crear tablas, Truncar tablas, y Eliminar registros se encuentran deshabilitadas en esta situación, y tienen un valor implícito.

• Crear tablas – Crea la tabla antes de que se rellenen los datos. Incluyendo restricciones, índices y permisos.

• Truncar tablas – Trunca la tabla antes de que se carguen los datos. Esta opción es más rápida que Eliminar Tablas, pero no se puede utilizar si existen restricciones de clave foránea.

• Eliminar registros – Borra todos los registros antes de que se carguen. • Deshabilitar disparadores – Deshabilita todos los disparadores de las tablas antes de que se

carguen los datos y los vuelve a habilitar después. Esto puede mejorar el rendimiento y puede ser necesario en algunas ocasiones si los triggers contienen comprobaciones que no pueden ser aplicadas durante el proceso de importación.

• Deshabilitar restricciones de clave foránea – Deshabilita todas las claves foráneas de las tablas antes de que se carguen los datos y las vuelve a habilitar después. Esto puede ser necesario para claves foráneas auto referenciadas. Las claves foráneas entre distintas tablas pueden no llevar conflictos, porque las tablas se exportan en el orden correcto. Deshabilitar esta opción puede mejorar el rendimiento.

• Ejecutar commit cada – Controla el número de registros que serán insertados antes de que se ejecute un commit. Si el valor es cero, se ejecutará la instrucción commit al final del archivo SQL para todos los datos insertados. Para archivos de exportación de gran tamaño y segmentos de rollback pequeños sería necesario proveer un valor apropiado aquí.

21.6 Exportar objetos. Para exportar las instrucciones DDL de los objetos de un usuario puede utilizar la herramienta Exportar objetos. De esta forma puede recrear fácilmente objetos de un usuario a otro, o a otra base de datos. Después de seleccionar Exportar objetos desde el menú Herramientas, todos los objetos del usuario actual se mostrarán en una rejilla.

Después de seleccionar un archivo de salida, puede presionar el botón Exportar para exportar los objetos. Si no especifica ningún objeto, todos los objetos del usuario se exportarán. Puede seleccionar

Page 177: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 177

los objetos si hace clic sobre ellos, utilizando Control y Shift puede seleccionar varios o un rango de objetos. El archivo de salida es un archivo SQL que es compatible con SQL*Plus y con la ventana de comandos de PL/SQL Developer. Después de la operación de exportación puede presionar el botón Ver para abrir el archivo generado en una ventana de comandos. Seleccionando un usuario diferente, puede exportar los objetos pertenecientes a otro usuario, si los privilegios del usuario actual lo permiten. La opción Incluir Privilegios debe estar habilitada si quiere incluir los privilegios sobre objetos a otros usuarios y roles. Cuando se recrean los objetos en una base de datos diferente, los usuarios y los roles necesitan existir en la nueva base de datos por razones obvias. De forma similar puede habilitar la opción Incluir información de almacenamiento para añadir la información de almacenamiento como los nombres de los tablespaces y su tamaño inicial. Esta información puede ser diferente entre bases de datos, con lo que puede que no sea adecuada. La opción Incluir propietario controla si a los objetos se les prefija con el propietario (ejemplo: SCOTT.EMP en lugar de EMP) en el archivo o archivos creados. Las opciones Archivo único y Archivo por objeto y Archivo por objeto / spec. y body en un único archivo controlan si se crea un único archivo SQL que contenga las instrucciones DDL para todos los objetos o si cada objeto debe exportarse a un archivo específico con el nombre del objeto por nombre del archivo, y la extensión SQL. En caso de un paquete de base de datos puede seleccionar guardar la especificación y el cuerpo del paquete en un único archivo. El archivo de salida contendrá una serie de llamadas a esos archivos específicos. Todos los archivos se grabarán en el directorio del archivo generado.

21.7 Importar texto.

Page 178: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 178

Con la herramienta Importar texto puede importar archivos ASCII en la base de datos. Orientado a formatos de texto delimitados con comas o tabulados. La herramienta Importar texto intentará determinar el formato de forma automática, de modo que la mayoría de las veces no necesitará definir nada, simplemente seleccionar el archivo, seleccionar la tabla y listo. Cuando abra la herramienta Importar texto y cargue un archivo de texto en ella, obtendrá un mensaje como el siguiente:

El importador carga las 100 primeras líneas del archivo de texto, este texto sin formato se muestra en la parte superior de la sección Datos del archivo. La sección situada en mitad de la ventana le permite configurar la definición del archivo de texto. La sección inferior Previsualizar resultados tiene una rejilla que contiene los datos tal y como se van a importar. La barra de herramientas tiene botones para seleccionar un archivo de texto y pegar el texto desde el portapapeles. Los archivos pueden tener virtualmente un tamaño ilimitado, no se leen por completo en memoria .El botón Nuevo borra el contenido de todos los campos de la ventana Importar texto. Los botones Abrir y Guardar definición le permiten volver a utilizar la definición. Si quiere importar el archivo de texto en una nueva tabla, presione el botón Crear tabla . Al hacer esto, PL/SQL Developer cargará la ventana de definición de tablas con la configuración idónea para importar los datos en la nueva tabla. La configuración se determina automáticamente tan pronto como cargue un archivo, si no es correcta puede crearla o modificarla. Establezca el campo Contador al número correcto y seleccione un campo

Page 179: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 179

desde la lista de campos para definir la definición de campos. En la sección de datos del archivo el campo de datos especificado está resaltado, permitiéndole comprobar si la definición del campo es correcta. Puede utilizar las siguientes opciones para configurar la definición de los datos a importar. • General – Contador.

Número de campos por registro. • General – Finalizar al final de la línea.

Indica que el registro de datos finaliza al final de la línea. • General – Nombre en la cabecera.

Indica si el primer registro contiene los nombres de los campos. • General – Omitir líneas en blanco.

Indica que PL/SQL Developer omitirá las líneas en blanco. • General – Carácter para las comillas.

Indica cual es el carácter que se utilizará para las cadenas de texto, normalmente comillas dobles o simples.

• General – Comentario. Puede seleccionar el carácter o caracteres que indican un comentario en archivo de texto.

• General – Importar líneas. PL/SQL Developer importará las primeras y la ultima líneas del archivo de texto que indique. Si deja estos valores vacíos PL/SQL Developer importará todo el archivo de texto.

• Campo inicial – Posición relativa. El campo comienza en una posición relativa al final del campo anterior. 0 indica que el campo comienza donde el campo anterior finaliza.

• Campo inicial – Posición absoluta. Indica que el campo comienza en una posición fija.

• Campo inicial – Carácter. Indica que el campo comienza con un carácter específico. Esta información es relativa al final del campo anterior.

• Campo final – Longitud. Indica que el campo tiene una longitud fija.

• Campo final – Carácter. Indica el final del campo con un carácter específico.

Para un archivo estándar delimitado por comas (csv) todos los campos tendrán una posición inicial relativa de 0, el carácter final debería ser una coma. La línea de fin (CR/LF o LF o CR), indicará también el final del campo, con lo cual para el campo final en una línea, el carácter final no importa. Cuando tenga la definición del archivo correcta, necesita seleccionar una tabla de Oracle e indicarle que campos de texto deben importarse en los campos de esa tabla. Esto puede hacerlo en la segunda pestaña:

Page 180: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 180

La parte superior contiene parámetros importantes de tipo general. La sección Campos le permite asociar campos de archivos de texto y campos de Oracle. La sección inferior contiene el panel Previsualizar resultados para su información. Puede ver las siguientes opciones: • Propietario - El nombre del propietario de la tabla o vista. • Tabla - La tabla o vista de la base de datos de la que quiere importar los datos. Después de

seleccionar una tabla, la herramienta de importación intentará determinar el campo y los tipos de campo automáticamente. Esto solo funcionará correctamente si el archivo de texto tiene cabecera.

• Borrar tabla - Cuando esta opción esta activada, PL/SQL Developer borrara los datos de la tabla antes de importar los nuevos datos.

• Ejecutar commit cada - Indica después de cuantos registros se ejecutará una instrucción commit. Si establece esta opción a 0, sólo se ejecutará la instrucción commit al final del proceso de importación.

• Sobrescribir duplicados - Especifica si un registro duplicado se actualizará en la base de datos. Los duplicados se basan en los valores contenidos en las claves primarias de las tablas.

• Ignorar duplicados - Los registros duplicados se ignorarán. • Scripts de Inicio/Fin - PL/SQL Developer ejecutará estos scripts antes y después de que importe

los datos. Puede utilizar el cualquier comando o bloque de código SQL, separados mediante puntos y coma.

Page 181: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 181

En la definición de los campos puede ver una lista con los campos del archivo de texto. Por cada campo puede establecer los siguientes datos: • Campo - El campo de la tabla que quiere asociar con el campo de texto: puede dejar esta opción

vacía si no desea importar este campo. • Tipo de dato - Definición del tipo de dato: string, number, date. • Función SQL - Esta forma le permite definir un proceso de datos adicional de SQL. Para los

campos fecha se añade de forma automática la función to_date. Esta es una opción muy potente, que le permite convertir los datos que importe. Básicamente puede introducir cualquier cosa que pueda ser procesada por Oracle. Puede añadir a# para indicar una fecha. El botón Crear SQL rellenará este campo con una función to_date para los campos tipo fecha.

Cuando la definición de los datos está completa, puede decidir si desea guardarla. La barra de herramientas tiene botones para guardar y cargar los archivos de definición. La herramienta para importar texto recordará la definición que se ha usado para el tipo de archivo, la definición de los datos se cargará de forma automática la siguiente vez que abra el mismo archivo de texto. Tiene dos botones de importación, Importar y Generar archivo. La primera opción comenzará a importar los datos en la tabla seleccionada. La segunda opción creará un archivo SQL con las instrucciones de inserción necesarias.

21.8 Importar ODBC.

Page 182: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 182

La herramienta Importar ODBC le permite importar los datos desde cualquier fuente de datos ODBC a una tabla de Oracle:

En la primera página de la herramienta de importación ODBC necesita seleccionar la fuente de datos ODBC, y opcionalmente proporcionar un nombre de usuario y una contraseña para dicha fuente de datos. Puede realizar la conexión, después de la cual la lista de datos será rellenada con todas las tablas de la fuente de datos. Al seleccionar una tabla se rellenará el panel Vista previa de resultados. En lugar de seleccionar una tabla, puede también proporcionar una consulta seleccionando la opción Importar resultados de la consulta e introducir una consulta. Esto puede resultar útil si quiere limitar las filas o columnas, o los resultados provienen de una o más tablas.

Page 183: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 183

Después de introducir las especificaciones de la fuente, puede cambiar a la pestaña Datos a Oracle para seleccionar la tabla de destino y especificar el mapeado de las columnas:

En la sección General puede seleccionar un propietario y una tabla en la que se importarán los datos. También puede seleccionar si desea borrar la tabla antes de realizar la importación, seleccionar el intervalo a partir del cual se confirmarán los registros (0, indica que se realizará al final de la exportación) e ignorar las filas duplicadas o sobrescribirlas. En la sección Campos puede mapear los campos desde el origen de datos ODBC (a la izquierda) con las columnas de la tabla de Oracle (a la derecha). Para cada columna puede, de manera adicional, incluir una función SQL. Por ejemplo, si quiere convertir una campo de texto a mayúsculas, introduzca upper (#). El símbolo de la almohadilla será reemplazado por el dato del campo para cada registro, y el resultado de la expresión se escribirá en la instrucción insert correspondiente. Después de completar el mapeado de los campos, puede presionar el botón Importar para importar los datos en la tabla de Oracle. Si mantiene presionada la tecla Ctrl se insertará una instrucción de ejemplo de forma que puede verificar el mapeado de los campos y de las funciones SQL que especifico. Para volver a utilizar esta definición posteriormente, puede presionar el botón Guardar definición en la barra de herramientas. Esta definición puede abrirse posteriormente si presiona el botón Abrir definición.

21.9 Generador de datos.

Page 184: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 184

El generador de datos le permite crear datos de prueba: esto puede servir de ayuda para probar una aplicación y ver como responde con grandes cantidades de datos. Puede encontrar el Generador de datos en el menú Herramientas. Básicamente, la definición consiste en una o más tablas, el número de registros que quiere generar y la definición de los tipos de datos. Los botones de la parte superior izquierda le permiten abrir y guardar la definición.

Arriba puede ver para la tabla deptdemo y empdemo, parecidas a las conocidas tablas dept y emp. Encontrará los siguientes elementos en esta página: • Propietario - Nombre del propietario de la tabla. • Tabla - Nombre de la tabla. • Número de registros - El número de registros que quiera generar. Estos pueden ser números o un

rango de números. • Nombre - Nombre del campo. • Tipo - Tipo de datos del campo. • Tamaño - Tamaño del campo (cuando sea apropiado), para campos numéricos será, número,

precisión. • Datos - La definición de los datos de un campo (vea más abajo). • Maestro - Si la tabla es un detalle de otra tabla, puede establecer la tabla maestra. Por cada

registro generado, se genera un número de registros en el detalle.

Puede utilizar el botón “Añadir una tabla existente” para añadir una tabla existente. Puede arrastrar y soltar una tabla desde el Explorador de Objetos.

Definición de los datos. La definición de datos determina los datos generados. Si simplemente desea crear caracteres, puede introducir la definición de los caracteres entre corchetes: Los datos pueden ser una mezcla de los siguientes conjuntos predefinidos: • a: a..z (Caracteres en minúscula) • A: A..Z (Caracteres en mayúscula)

Page 185: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 185

• @: A..Z y a..z (Todos los caracteres) • #: A..Z y a..z and 0..9 (Todos los caracteres y números) • *: #33..#126 (Todos los caracteres ASCII) • 0: 0..9 (Todos los números) • 1: 1..9 (Todos los números excepto el 0) • 9: 0..9 (Todos los números) Por ejemplo: [Aaa00] para generar cadenas de texto como: Gxe21, Liy05, etc. Puede añadir un literal, si lo escribe entre comillas simples: Por ejemplo: [AA '-' 1000] para generar cadenas de texto como: CX-4903, SY-1044, etc. Los espacios en blanco utilizados en la definición de los datos son ignorados a menos que se escriban entre comillas simples. Si quiere repetir un carácter un determinado número de veces, puede añadir el número al final de cada carácter, si lo escribe entre paréntesis (n). Puede también añadir un número aleatorio (min…max). Por ejemplo: [Aa(5..15) ' ' Aa(8..20)] para generar: "Masfae Qwwecdsadif". El texto introducido en la definición no necesita ir encerrado entre corchetes. En otras palabras, [‘hola’] y `hola’ son equivalentes. El texto introducido sin comillas es interpretado como una función. Existen varias funciones especiales disponibles: • Signal (Min, Max, Delta, Noise) - Devuelve datos técnicos de medida (como temperaturas). Min

y Max determinan el rango, Delta el cambio máximo y Noise le permite añadir algún ruido. Ejemplo: Signal (-10, 20, 0.1, 0.1)

• Random ([Min], Max) - Devuelve números aleatorios entre Min y Max. Si sólo especifica Max, Min se establece a 0. Para campos de tipo fecha, puede introducir fechas para Min y para Max.

• Sequence (Start, [Inc], [WithinParent]) - Devuelve una secuencia de números, empezando por Start, e incrementando con Inc (el cual es 1 por defecto). Para una tabla detalle puede especificar de forma adicional la palabra reservada WithinParent para indicar que la secuencia debe ser reiniciada para cada registro padre.

• List ('item'(weight), 'item'(weight), ...) - Devuelve un elemento aleatorio de los elementos especificados. Puede añadir la palabra reservada weight entre paréntesis para permitir que los elementos especificados pueden ocurrir más que otros. Por ejemplo: List ('CLERK'(50), 'SALESMAN'(30), 'MANAGER'(10)).

• List (select statement) - Igual que la función previa List, pero los elementos son devueltos mediante una consulta de selección SQL. Puedes utilizar variables para referirse mediante el nombre de valores generados. Por ejemplo: List(select empno from emp where deptno = :deptno) creará una lista para todos los managers en el departamento con el número de departamento generado por la consulta.

• SQL(expresión) - Devuelve la expresión SQL dada. Pudiendo incluir valores estándar de SQL, operadores, funciones, así como también funciones definidas por el usuario. La expresión también puede ser una instrucción SELECT que devuelva exactamente una columna y una fila. Puede utilizar variables para referirse mediante el nombre a otros valores generados. Por ejemplo: SQL('Department ' || :deptno)

• Text ([Style], MaxCharacters, [WordsPerLine, LinesPerParagraph]) - Esta función devuelve texto. El parámetro Style es opcional puede ser LorumIpsum (valor por defecto), Inglés, Alemán, y Japonés. Puede ser un conjunto de caracteres como [aA], en cuyo caso las palabras se generan desde el conjunto especificado.

Page 186: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 186

MaxCharacters determina el tamaño máximo del texto generado, y el parámetro opcional WordsPerLine y LinesPerParagraph determinan el tamaño de la línea y del párrafo. El tamaño especificado puede ser un número o un rango (min..máx.).

• File (path, path, ...) - Selecciona de forma aleatoria un archivo de las rutas introducidas e inserta sus contenidos. Le permite introducir datos binarios (como imágenes) en la base de datos. La ruta puede tener comodines como d:\images\*.bmp.

Puede cambiar el texto resultante de las funciones previas si utilice las siguientes funciones: • Uppercase()

• LowerCase() • InitCaps()

Por ejemplo: InitCaps( List(select ename from emp) ) Existen diversos tipos de datos predefinidos disponibles para generar datos más o menos reales. Puede utilizar las siguientes definiciones: • Firstname – Lista genérica de nombres. • Lastname – Lista genérica de apellidos. • Company – Nombres de compañías (lista aleatoria con nombres de compañías existentes). • Address1 – Línea de dirección 1. • Address2 – Línea de dirección 2. • ZIP – Código postal. • City – Ciudad. • State – Estado. • Country – País. • Email (Directamente relacionado con el nombre, apellidos y país).

Existen también algunos ejemplos de definiciones de datos creadas por el usuario. • Components.Code – Elementos relacionados con artículos en general. • Components.Description – Descripción del artículo. • Components.Price – Precio del artículo. • Elements.Name – Elementos químicos (nombre). • Elements.Symbol – Elementos químicos (símbolo). Estos conjuntos de datos pueden encontrarse en el directorio DataGenerator\UserData\ como elements.txt y components.txt. Puede añadir su propio conjunto de resultados si lo desea. Simplemente añada un archivo delimitado por comas donde la primera línea incluya la descripción entre corchetes. Puede utilizar datos desde su archivo si especifica el nombre, descripción como los dos ejemplos anteriores. Todas las funciones y los datos mencionados arriba pueden añadirse conjuntamente, por ejemplo: Random(10..99) + '-' + [A(4)] El + es opcional, pero debería existir como mínimo un espacio como separador.

Opciones. La pestaña de opciones le permite establecer algunas opciones específicas para la definición del generador de datos. Puede especificar el formato de una fecha (como el usado por ejemplo por la función Random). Puede también especificar cada cuantos registros quiere ejecutar una instrucción Commit (establezca esta opción a 0 para ejecutarla sólo una vez). La opción Retraso es útil sólo en caso de que necesite hacer pruebas en tiempo real, si necesita insertar datos a una velocidad especifica.

Page 187: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 187

La pestaña Definidos por el usuario le permite definir y sobrescribir el conjunto de caracteres utilizados en la definición de los datos. El elemento será siempre un carácter simple y el valor es uno o más rangos de caracteres del estilo de A..Z a..z 0..9 #200..#220. Por ejemplo: para definir un conjunto de caracteres en formato hexadecimal, podría especificar H como el elemento y 0..9 A..F como valor de dicho elemento. La pestaña Script de inicio le permite especificar las instrucciones SQL que deberían ejecutarse antes de que los datos se inserten en la base de datos. Típicamente podrían ser instrucciones para crear las tablas, o truncar las tablas o para seleccionar un determinado segmento de tipo rollback, etc. .Si escribe múltiples instrucciones debe separarlas mediante comas. Las opciones generales serán las usadas por defecto para todos los datos generados y pueden definirse presionando el botón Preferencias situado en la parte izquierda de la ventana. Vea el capítulo 20.24 para más detalles. Esas opciones se sobrescribirán si la opción correspondiente en el generador de datos está también establecida.

Generar datos. Existen tres botones disponibles en la parte inferior izquierda para generar los datos: • Iniciar una prueba – Esto generará los datos y los mostrará en una rejilla en la pestaña de

resultados. Puede exportar esos resultados en varios formatos si hace clic con el botón derecho del ratón sobre la rejilla.

• Crear datos como SQL – Genera los datos como un archivo SQL. Esto sólo funcionará si no añade datos desde un archivo.

• Crear datos en la base de datos – Genera los datos en la base de datos de Oracle.

21.10 Comparar objetos.

Page 188: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 188

Después de realizar cambios en la definición de las tablas, vistas, unidades de programa, etc., podría ser interesante propagar esos cambios a otro usuario. Este podría ser un entorno de desarrollo, o un entorno de pruebas. Para comparar los objetos de su usuario de desarrollo con otro usuario puede utilizar la herramienta Comparar objetos en el menú Herramientas. Esto le mostrará la siguiente ventana:

En la pestaña de selección puede seleccionar los objetos que desea comparar. Después de hacer esta selección, presione el botón Sesión, para seleccionar el usuario y la base de datos que quiere comparar. Esto habilitará el botón Comparar, que puede presionar para iniciar una operación de comparación. En la pestaña Opciones, puede establecer las siguientes opciones:

Puede seleccionar la opción Incluir información de almacenamiento en el fichero DDL generado para incluir la información de almacenamiento como el nombre del tablespace o los tamaños iníciales para los nuevos objetos. Estos podrían ser distintos entre las distintas bases de datos, con lo que podría no ser una buena opción. Puede escoger un Esquema si los objetos son propiedad de un usuario distinto al que se encuentra conectado. La opción Ignorar capitalización en el código PL/SQL ignorará las diferencias entre las mayúsculas y las minúsculas que no afecten a la funcionalidad del código. Las diferencias de capitalización de las cadenas de texto de las expresiones del código no será ignoradas, porque son significativas.

Page 189: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 189

La opción Ignorar espacios en blanco en el código PL/SQL ignorará las diferencias en los espacios en blanco, los tabulados y los retornos de carro que no afecten a la funcionalidad del código. Las diferencias en los espacios en blanco de las cadenas de texto de las expresiones del código no será ignoradas, porque son significativas. La opción Ignorar comentarios en el código PL/SQL ignorará todas las diferencias en todos los comentarios. Cuando finalice la operación de comparación, la ventana cambiará a la pestaña Diferencias, en donde verá una lista de todos los objetos que son diferentes:

La lista está ordenada mediante la dependencia. Debajo de la lista de objetos diferentes en el usuario de comparación, puede ver el código SQL que necesita ejecutarse para igualar los dos objetos entre los usuarios. Si no hay ningún objeto seleccionado, se mostrará el código SQL de todos los objetos. Si uno o más objetos se encuentran seleccionados, sólo el código SQL para el objeto(s) seleccionado se muestra. En el ejemplo anterior podemos ver como se añadió la restricción EMP_MGR_EMPNO a la tabla EMP. El botón mostrar diferencias mostrará las diferencias línea a línea de forma visual de un objeto viejo y uno nuevo. Esto puede ser útil para ver los cambios realizados en las unidades de programa, o puede ayudar para determinar porque una instrucción específica DDL fue generada para otro tipo de objeto. El botón Configurar herramienta de comparación le permite configurar la herramienta de diferencias que debería usarse. Por defecto se utilizará ExamDiff, para la cual esta disponible una versión Pro (Vea el elemento About del menú Info menú). Vea el capítulo 20.23. Puede presionar el botón Aplicar SQL para ejecutar las instrucciones SQL en la sesión objetivo. Puede de forma alternativa copiar el archivo SQL en un archivo si presiona el botón Guardar SQL a un archivo, o puede copiar las instrucciones SQL al portapapeles si presiona el botón Copiar SQL al portapapeles. Cuando se comparan los objetos, se ignoran las siguientes propiedades: • Almacenamiento – Propiedades como next extent y pct free de las tablas y de los índices no se

consideran relevantes para el proceso de comparación. • Restricciones con nombres generados por el sistema – Esas restricciones tendrán nombres

distintos para 2 usuarios con lo que no pueden ser comparadas. Si una tabla es nueva en la sesión objetos, esas restricciones serán generadas.

• Propiedades de creación de la tabla – Propiedades que requieran que se vuelva a crear la tabla se ignoran.

Page 190: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 190

• Datos de la tabla – Para exportar los datos de las tablas, utiliza la función Exportar tabla (Vea el capítulo 21.4).

• Valores de una secuencia – Los valores de una secuencia se consideran datos.

21.11 Comparar datos entre tablas. Después de insertar, actualizar y borrar registros en una o más tablas durante el proceso de desarrollo, puede ser útil propagar esos cambios a la misma tabla pero de un usuario diferente. Esto puede deberse a una propagación de los datos de una base de datos de desarrollo a una base de datos de pruebas, a una base de datos de producción o a un miembro diferente del proyecto. Para hacerlo puede utilizar la herramienta Comparar datos de las tablas desde el menú Herramientas. Esta acción mostrará el siguiente cuadro de dialogo:

En la pestaña de Selección puede seleccionar la tabla(s) que quiere comparar. Si desea comparar datos entre tablas que son propiedad de un usuario diferente al que se encuentra conectado, puede seleccionarlo de la lista de usuarios. Después de hacer esta selección, puede presión el botón Sesión para seleccionar el usuario y la base de datos que quiera comparar. Esto habilitará el botón Comparar, que puede presionar para iniciar la operación de comparación, aunque también puede ir a la pestaña opciones primero:

Page 191: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 191

En esta pestaña puede especificar varias opciones para el proceso de comparación: • Acciones – Puede seleccionar varias acciones que quiere realizar en la sesión seleccionada. Si, por

ejemplo, omite la acción Borrar, solo se realizarán inserciones y actualizaciones. • Confirmar cambios cada N registros – Controla después de cuantos registros se ejecutará la

sentencia commit. Si especifica 0, solo se ejecutará la sentencia commit al final del proceso. • Modo – Seleccione Generar Script para generar un archivo SQL con los inserts, updates, deletes y

commits. Puede guardar este archivo posteriormente y ejecutarlo en una ventana de comandos o en SQL*Plus. Seleccione actualizar base de datos para aplicar inmediatamente los cambios en la sesión seleccionada.

• Esquema – Si las tablas se encuentran en un esquema diferente, puede seleccionar dicho esquema aquí. El usuario debe tener los privilegios necesarios en las tablas seleccionadas.

• Incluir propietario en SQL – Esta opción solo es útil en el modo Generar Script, e incluirá el nombre del propietario delante de los nombres de las tablas en el código. Esto le permitirá conectarse como un usuario diferente cuando ejecute el archivo y podrá aplicar los cambios en el esquema correcto.

Después de seleccionar las opciones apropiadas puede presionar el botón Comparar para iniciar el proceso. Después de su finalización se mostrarán las diferencias en la pestaña Diferencias:

Page 192: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 192

En modo de actualización, esta pestaña simplemente mostrará el número total de registros insertados, actualizados y borrados para cada tabla. En modo de script, puede revisar todas las diferencias y guardar los resultados en un archivo presionando el botón Guardar SQL situado a la derecha. Observe que puede limitar el archivo a tablas específicas haciendo una selección de tablas en el panel superior. También puede copiar la consulta SQL al portapapeles o aplicar los cambios seleccionados para la sesión presionando los botones correspondientes, situados en la parte derecha de la ventana.

21.12 Monitor de eventos.

Page 193: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 193

El monitor de eventos le permite capturar y ver los mensajes (dbms_pipe) y las señales (dbms_alert), generadas por las unidades de programa en otras sesiones. Simplemente con especificar el tipo de evento (Alert o Pipe), el nombre(s) de la alerta o pipe, y presionar el botón Inicio. La siguiente captura de pantalla le muestra el monitor de eventos esperando por una alerta llamada ‘DEPT’ o ‘EMP’:

Cualquiera que sea el evento que ocurra, el nombre del pipe o alerta y la fecha se escribe en la página de salida, seguida de la información del evento: • Pipe - Todos los elementos del mensaje se muestran. • Alert - El valor del parámetro mensaje de la llamada a dbms_alter.signal se muestra. Para las alertas puede especificar diversos nombres separados por comas. Para eventos pipe sólo puede especificar un sólo nombre.

21.13 Monitor de sesiones.

Page 194: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 194

El monitor de sesiones le permite ver todas las sesiones en la instancia de la base de datos en la que se encuentra conectado:

En la mitad superior de la ventana puede ver información acerca de las sesiones, como el nombre de usuario, el SID y el número de serie (los que identifican la sesión), el estado, etc. Puede ordenar la lista de sesiones si hace clic sobre la cabecera de una columna. Por ejemplo: para encontrar rápidamente todas las sesiones activas, haga clic en la cabecera de la columna Status. Puede seleccionar un Filtro de sesión en la barra de tareas para limitar la lista de sesiones a una lista específica, o limitar el número de columnas mostradas. Un filtro puede definir el orden de las sesiones y las columnas. Si hace clic con el botón derecho sobre una sesión, se le mostrará un menú contextual con los siguientes elementos: • Terminar sesión seleccionada – Le permite terminar la sesión seleccionada. • Habilitar trazado SQL – Habilita el trazador de SQL para la sesión seleccionada. Esta opción

estará deshabilitada si su versión del servidor Oracle no soporta esta característica, o si no tiene privilegios sobre el paquete dbms_system.

• Deshabilitar trazado SQL – Deshabilita el trazador de SQL para la sesión seleccionada. • Refrescar lista – Refresca el listado de las sesiones. • Copiar – Copia la lista de sesiones en el portapapeles. • Imprimir – Imprime la lista de sesiones. • Exportar - Exporta la lista de sesiones en formato CSV, TSV, HTML o XML. Las funciones de refresco, terminar, habilitar trazado y deshabilitar trazado son accesibles a través de la barra de herramientas que se encuentra en la parte superior de la ventana. La barra de herramientas adicionalmente incluye un botón de Refrescar automáticamente. Cuando se encuentra presionado, la lista de sesiones y la información de las mismas se refrescará de forma automática. Puede definir el periodo de refresco si hace clic con el botón derecho del ratón sobre el botón. La mitad inferior de la ventana contiene distintas pestañas con la información sobre la sesión seleccionada. La información sobre esas pestañas se puede refrescar, copiar o imprimirse si hace clic con el botón derecho del ratón sobre la lista de sesiones y selecciona el correspondiente elemento del

Page 195: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 195

menú contextual. Para más información sobre las columnas mostradas en la lista, vea la guía “Oracle Server Reference”. Puede definir sus propias consultas para la información de la sesión de las pestañas o modificar las consultas estándar. Para hacerlo, presione el botón de la barra de herramientas Definir consultas de sesión. Esto le mostrará el siguiente cuadro de diálogo:

En la parte superior puede cambiar entre las consultas de Filtros y Detalles. Los filtros controlan lo que se muestra en la lista de sesiones, y los detalles controlan lo que se muestra en las pestañas de detalle. En la parte derecha puede ver cuatro botones para crear una nueva consulta, borrar una consulta o para mover hacia arriba o hacia abajo la consulta en la lista. Cuando cree o modifique una consulta debe proporcionar la siguiente información:

Filtros. La Etiqueta se muestra en la lista de selección de filtros. La Consulta es la instrucción select que trae la información para la lista principal de sesiones. Puede utilizar estas consultas para: 1. Limitar las sesiones mostradas (por ejemplo : Solo las sesiones activas) 2. Definir el orden en el que se muestran las sesiones. 3. Definir que columnas se muestran y en que orden.

Detalles. El Nombre se mostrará en la pestaña en el monitor de sesiones. La posición en la lista determina la posición de la pestaña en la ventana del monitor de sesiones. La Consulta es una instrucción SQL que muestra la información de la sesión. Esta instrucción select debería contener normalmente la variable: SID, que contendrá el SID de la sesión seleccionada cuando ejecute la consulta. Puede utilizar cualquiera de las columnas de la vista v$session, como el: username, o :sql_address, o :sql_has_value. Si su consulta conlleva un error de ejecución este se mostrará en su correspondiente pestaña después de la ejecución. En el ejemplo anterior la consulta Cursors mostrará todos los cursores abiertos para la sesión seleccionada, ordenados por el campo SQL text.

Page 196: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 196

Para concatenar el valor o los valores de varias filas de una consulta de detalle, puede utilizar la sugerencia del compilador /*concatenate */ en la consulta. Por ejemplo:

select sql_text from v$sqltext_with_newlines where address = hextoraw(:sql_address) and hash_value = :sql_hash_value order by piece /* concatenate */

La columna sql_text de todas las filas devueltas por esta consulta será concatenada y mostrada como un único valor en los detalles de la sesión.

21.14 Herramientas definidas por el usuario. Puede definir sus propias herramientas para integrarlas en el entorno de desarrollo de PL/SQL Developer. Esas herramientas pueden añadirse como elementos de menú para iniciar aplicaciones externas o para ejecutar instrucciones SQL y PL/SQL en la base de datos para la sesión actual. Un buen ejemplo de esto podría ser SQL*Plus. Puede añadir un menú para iniciar SQL*Plus y con las opciones adecuadas puede dejar que SQL*Plus se conecte e incluso ejecutar un archivo que se encuentre abierto actualmente. Otro ejemplo puede ser una herramienta que le permita establecer las opciones NLS a un valor específico. Puede crear un archivo que ejecute correctamente las instrucciones de tipo “alter session”, y añadir ese archivo al menú desde donde pueda ser llamado para la sesión de la ventana de consulta SQL, la ventana de prueba, etc. Para configurar las herramientas externas tiene que seleccionar el elemento Configurar herramientas en el menú Herramientas. Aparecerá el siguiente cuadro de diálogo:

Los cuatro botones situados en la parte derecha del cuadro de diálogo le permiten insertar o borrar elementos así como moverlos hacia arriba o hacia abajo en la lista. Si presiona la tecla Ctrl. mientras presiona el botón Nuevo elemento, el nuevo elemento creado se copiará del elemento seleccionado anteriormente. El botón Ejecutar puede utilizarse para ejecutar la herramienta seleccionada. Si pulsa la tecla Ctrl cuando seleccione el botón ejecutar, aparecerá un mensaje emergente mostrando la información (los parámetros reemplazados), acerca de lo que se debería haber ejecutado. La lista muestra todas las herramientas configuradas y en la mitad inferior la configuración de las herramientas seleccionadas. La configuración se divide en tres secciones:

Page 197: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 197

• General – Para definir el archivo o programa que se va a ejecutar y sus parámetros. • Menú – Para definir el lugar donde el elemento de menú debería aparecer. • Botón – Para definir la imagen del botón y la descripción en la barra de herramientas. • Opciones – Para configuración adicional. Para explicar la configuración de herramientas externas añadiremos un menú denominado SQL*Plus a PL/SQL Developer como ejemplo.

La pestaña General. Lo primero que hay que hacer después de crear un nuevo elemento con el botón Nuevo es definir el tipo de herramienta. Si selecciona External, la herramienta se ejecutará como aplicación externa. Esto es aplicable para SQL*Plus. Si selecciona Session, la herramienta ejecutará un archivo SQL para la sesión actual cuando se ejecute la herramienta. Lo siguiente que necesita es introducir una descripción en la pestaña General. La descripción es el nombre que se mostrará en el menú y en la lista de herramientas. Puede introducir un & delante del carácter que quiere utilizar como tecla de acceso directo (S&QL*Plus -> SQL*Plus). Si introduce como descripción un guión “-“, se mostrará un separador. El tercer paso es el nombre del programa o el archivo a ejecutar. Para las herramientas externas puede introducir cualquier archivo ejecutable o incluso documentos si así lo desea, en este caso la aplicación deseada se lanzará. El botón Select directory abre un cuadro de diálogo que le permite buscar los archivos. La mayoría de las aplicaciones de Oracle se encuentra en el directorio Oracle_Home\Bin y SQL*Plus puede encontrarse <oracle_home>\bin\sqlplusw.exe. Esos tres pasos son suficientes para hacer que SQL*Plus pueda trabajar desde un menú. Puede definir de forma adicional parámetros para pasar a la aplicación y establecer una ruta por defecto. Puede utilizar la ruta por defecto como alternativa a la ruta completa del archivo ejecutable o parámetros. Para SQL*Plus puede añadir una cadena de conexión (#connect) y un vinculo a un archivo a ejecutar (#file). El botón con una flecha hacia abajo situado en la parte derecha le permite seleccionar una variable que puede insertar en cualquiera de los campos. Esas variables tienen relación con la conexión actual y el archivo abierto. Reemplazarán la información correspondiente cuando se ejecute el archivo. Las siguientes variables están soportadas:

Variable Significado #file Representa el nombre del archivo (sin la ruta) del archivo en la ventana actual. #path El nombre del archivo y su ruta. #dir El directorio del archivo en la ventana actual. #object El objeto seleccionado en el Explorador de Objetos. (Ejemplo. SCOTT.EMP) #otype El tipo del objeto seleccionado en el Explorador de Objetos. (Ejemplo. TABLE) #owner El propietario del objeto.(SCOTT) #oname El nombre del objeto. (EMP) #connect La cadena de conexión completa de la conexión actual a PL/SQL Developer. (ejemplo

scott/tiger@demo) #username El usuario. #password La contraseña. #database La base de datos.

Nota: SQL*Plus no funciona correctamente cuando se le pasa como parámetro una ruta de un archivo que contenga espacios en blanco, ese es el motivo por el cual la variable #dir se especifica como directorio por defecto, siendo necesario indicarle únicamente el nombre del archivo que debe utilizar SQL*Plus.

Page 198: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 198

Herramientas de sesión. Para las herramientas de sesión necesita especificar un archivo SQL que contenga varias instrucciones SQL o bloques de código PL/SQL. Las instrucciones SQL pueden separarse mediante puntos y comas o barras inversas, los bloques de código PL/SQL necesitan terminarse con una barra invertida, de la misma forma que la sintaxis en SQL*Plus. Ejemplo 1 – Alemania.sql: alter session set nls_language = 'german'; alter session set nls_territory = 'germany';

Ejemplo 2 – Role_Especial.sql: Begin dbms_session.set_role(role_cmd => 'special_role identified by &Password'); end; /

Observe que puede añadir variables de substitución al archivo para hacerlo aun más flexible. Se le preguntará por el valor de esas variables cuando ejecute la herramienta. Cuando ejecute el archivo Role_Especial.sql mencionado anteriormente, se le preguntará por el valor de la variable &Password. Si quiere utilizar cualquiera de los parámetros especificados en un archivo, debe utilizar &1, &2,etc. El número indica el orden de los parámetros en la línea de comandos. No se le preguntará por las variables de sustitución de la línea de comandos.

La pestaña Menú. Por defecto todas las herramientas configuradas se añaden en la parte inferior del menú Herramientas. Si desea crearlas en cualquier otro lado o incluso en su propio menú, puede utilizar la pestaña Menú:

Si quiere crear el elemento en un menú específico del menú principal puede seleccionar uno desde la lista de selección Menú principal o puede introducir un nuevo nombre si quiere crear un nuevo elemento de menú. Si ha introducido un menú principal, puede utilizar Submenú y Sub-sub Menú para indicar la localización exacta donde quiere crear el nuevo elemento de menú. Puede utilizar los tres botones de radio (Debajo, Superior, Al final), para especificar donde debería colocar el Nuevo menú en relación al menú especificado. Si especifica un nuevo (sub) menú, debería seleccionar siempre ‘Al final’ porque ‘Debajo’ y ‘Encima’ sólo tienen significado si se refieren a un submenú existente. Ejemplo 1: Menú principal Herramientas Submenú Oracle Sub-sub menú Posición Al final

Page 199: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 199

Esto creará un submenú llamado Oracle en el menú principal Herramientas. Si va a añadir varias herramientas, un submenú específico podría ser una buena idea. Ejemplo 2: Menú principal Oracle Submenú Sub-sub menú Posición Al final Esto creará un menú principal llamado Oracle. Debería crear solamente un nuevo menú principal si utiliza las herramientas regularmente y desea tenerlas todas a mano. Si quiere añadir su herramienta como primer elemento del menú Herramientas debería introducir:

Menú principal Herramientas Submenú Preferencias… Sub-sub menú Posición Encima Esto creará un menú por encima del elemento de menú existente Preferencias.

La pestaña Botón. Puede definir si la herramienta externa se incluirá en la barra de herramientas:

• Botón de la barra de herramientas - Cuando esta opción está habilitada, la herramienta externa

puede incluirse en la barra de herramientas. • Descripción - La descripción se mostrará como sugerencia cuando situé el cursor del ratón sobre

un botón de la barra de herramientas. Si deja esta descripción vacía, la descripción de la herramienta externa (tal y como se muestra en el menú), se utilizará.

• Imagen - Presione el botón imagen para seleccionar un archivo BMP (*.BMP), para los botones de la barra de herramienta. El tamaño de esa imagen debería ser preferentemente 20x20 píxeles. Observe que PL/SQL Developer siempre cargará el archivo de mapa de bits desde su localización original, con lo que no debería eliminar o renombrar este archivo sin cambiar la configuración de la herramienta externa.

PL/SQL Developer viene con un número estándar de archivos de tipo bitmap que puede escoger. Esos archivos se encuentran en el subdirectorio Icons en el directorio de instalación de PL/SQL Developer. Este es el directorio por defecto.

La pestaña Opciones. La pestaña Opciones le permite establecer las siguientes opciones:

Page 200: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 200

• Guardar ventana - Cuando esta opción esta marcada, la ventana activa se guardará antes de que

se ejecute la herramienta. Debería probablemente hacer esto cuando la herramienta coge un archivo como parámetro y quiere asegurarse de que utiliza los datos actuales.

• Esperar la finalización de las herramientas - Cuando esta opción se encuentra marcada, PL/SQL Developer esperará a que le herramienta se cierre. Esto es útil si tiene una programa externo que está modificando un archivo. Cuando ejecute esta opción el contenido de la ventana activa se refrescará con el código del archivo modificado. Esta opción se utiliza en combinación con la opción Guardar ventana.

• Conexión activa - Si la herramienta sólo es útil si PL/SQL Developer se encuentra conectado (si pasa la cadena de conexión como parámetro), debería establecer la opción Conexión activa. Esto deshabilitará el menú si PLSQL Developer no se está conectado.

• Explorador de Objetos - Marque esta opción si la herramienta funcionará con los objetos seleccionados en el Explorador de Objetos.

• Tipo de ventana - Si la herramienta requiere una ventana concreta, puede especificarla en esta sección. Si una o más ventanas se encuentran seleccionadas, el menú sólo se habilitará si la ventana activa es la especificada.

21.15 Organizador de casos de prueba.

Page 201: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 201

Para realizar test de regresión sobre sus programas, puede utilizar el Organizador de casos de prueba. Esta herramienta le permite definir un conjunto de pruebas, (una colección de archivos de prueba) con valores asignados a las variables de entrada. Adicionalmente puede especificar el rendimiento deseado:

Para este ejemplo el conjunto de pruebas consta de 3 archivos. Para el archivo seleccionado DeptName.tst, la variable p_emp no tendrá el valor de entrada 7499 y después de su ejecución la variable result debe contener el valor SALES. Ejecutar un conjunto de pruebas revelará si el programa testeado funciona correctamente y/o se obtiene el rendimiento deseado :

Page 202: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 202

Todos los archivos de prueba erróneos tendrán un indicador rojo y serán colocados en la parte superior de la lista. En este caso DeptName (7499) el script fallo, debido a que la especificación requerida es “SALES” en vez del valor actual “Sales”. El panel Log situado en la parte inferior de la ventana de resultados mostrará los resultados de los valores de entrada y de salida de cada variable. Si el archivo de prueba utiliza el paquete DBMS_OUTPUT, la información generada también se mostrará en el panel de Log.

Crear un conjunto de casos de prueba. Para crear un conjunto de pruebas, seleccione el elemento Organizador de casos de prueba desde el menú Herramientas. Aparecerá una ventana vacía del Organizador de casos de prueba en la cual podrá crear o añadir nuevos archivos de prueba. En la parte superior puede ver la lista de los archivos, donde podrá añadir, crear o cambiar el orden de los archivos y en la parte inferior vera la definición del archivo seleccionado. Antes de crear un archivo de prueba, es una buena idea guardar el conjunto de resultados presionando el botón Guardar conjunto de resultados en la barra de tareas. Todos los archivos de prueba nuevos serán creados en el mismo directorio que el conjunto de pruebas por defecto, y puede ser de utilidad usar un directorio separado para cada conjunto de pruebas, de forma que todas puedan manejarse desde un único directorio.

Añadir archivos a un conjunto de casos de prueba. Existen 2 métodos para añadir un archivo al conjunto de pruebas:

Page 203: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 203

1. Arrastrar y soltar un procedimiento o función desde el Explorador de Objetos al Organizador de casos de prueba. Se abrirá una nueva ventana con una llamada a esta unidad de programa, variables para todos los parámetros y un valor de retorno. Guarde el archivo de prueba con un nombre descriptivo, preferiblemente en el mismo directorio que el conjunto de pruebas.

2. Presione el botón Nuevo, situado en la parte derecha de la lista de archivos. Aparecerá la siguiente ventana.

3. Presione Sí para crear uno nuevo. Tendrá que programar manualmente el archivo de prueba y

guardarlo antes de que pueda ser utilizado. Presione No si quiere añadir un archivo de prueba existente al conjunto de resultados.

Después de que se ha guardado un archivo de prueba, puede especificar su definición en el conjunto de pruebas: • Archivo de prueba - El nombre del archivo de prueba. Este campo se rellenará automáticamente

si ha creado y guardado un Nuevo archivo de prueba. Si quiere añadir un archivo de prueba existente presione el botón Explorar situado a la derecha de este campo.

• Descripción – Una descripción funcional para el archivo. Si ejecuta un único archivo varias veces, debería incluirlo en la descripción para que pueda ser fácilmente reconocible en la lista de archivos.

• Nueva sesión – Utilice esta opción para forzar la utilización de una nueva sesión para el archivo de pruebas, de esta forma, es independiente de los cambios realizados en el estado de la sesión por la ejecución previa de otros archivos de pruebas. Por defecto todos los scripts utilizan la misma sesión.

• Habilitado – Utilice esta opción para habilitar o deshabilitar un archivo para el conjunto de pruebas. Solo los archivos habilitados serán incluidos en el test de prueba y los deshabilitados serán omitidos.

• Rendimiento – El rendimiento requerido puede especificarse como el numero máximo de segundos (fracciones incluidas). Si deja este campo vacío, el rendimiento no será testeado.

• Variables – Por cada variable en el archivo de prueba, introduzca el nombre, el valor de entrada y el valor de salida requerido. El valor de entrada se pasará al archivo de prueba antes de su ejecución . Si deja el valor de salida vacío, este no será testeado. Para testear valores nulos, introduzca la palabra “null”. Para testear el paquete dbms_output, introduzca “dbms_output” en el nombre de la variable e introduzca el texto requerido para la variable de salida.

Si una variable se marca como Global tendrá un valor global que puede ser pasado a otros archivos de pruebas. Si una variable global no tiene ningún valor de entrada, se utilizará el valor global. Después de la ejecución el valor de la variable global será actualizado correctamente. En la parte inferior izquierda puede ver 2 botones que le permitirán ejecutar y comprobar el archivo de prueba seleccionado, o abrirlo en una ventana de prueba para su edición.

Duplicar un conjunto de pruebas. Muy a menudo querrá ejecutar el mismo conjunto de pruebas con unos valores de entrada y salida diferentes. Para hacer esto puede seleccionar un conjunto de pruebas y presionar la tecla ctrl. mientras presiona el botón Nuevo. El conjunto de pruebas creado heredara todas las propiedades del elemento seleccionando, de esta forma solo tendrá que cambiar la descripción y los valores de las variables.

Page 204: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 204

Ejecutar un conjunto de pruebas. Para ejecutar un conjunto de pruebas, presione el botón Ejecutar situado en la barra de herramientas. El organizador de casos de prueba cambiara a la pestaña Ejecución, y cada uno de los archivos de prueba será ejecutado en una ventana de prueba diferente. Los errores se indicarán con un indicador de color rojo y serán colocados en la parte superior de la lista. Los archivos validos se indicarán con un indicador de color verde y serán colocados en la parte inferior de la lista. Para investigar un error, haga clic con el botón derecho del ratón en el archivo y seleccione Depurar desde el menú contextual o haga doble clic sobre el archivo. Se creará una ventana de prueba con el archivo y se establecerán las variables de entrada . Ahora podrá depurar el archivo de prueba para determinar las causas del error. Haga clic con el botón derecho del ratón sobre la ejecución de un test para copiar, imprimir o exportar los resultados en varios formatos.

Ejecutar un conjunto de pruebas desde la línea de comandos. Puede ejecutar un conjunto de pruebas desde la línea de comandos mediante la Ventana de Comandos de PL/SQL Developer, por ejemplo: SQL> RunTestSet U:\TestSets\DeptEmp.ts D:\Temp\DeptEmp.log

Esta acción ejecutará el archivo U:\TestSets\DeptEmp.ts y creará el archivo de log D:\Temp\DeptEmp.log . Si omite el nombre del archivo de log, PL/SQL Developer lo creará automáticamente con el mismo nombre que el archivo de pruebas. El archivo de log contiene 3 líneas por cada archivo de pruebas: Test = <Description of the Test Script> Result = Success | Failed | Error | Slow | Skipped Message = <Message of the Test Script run> De esta forma puede crear un archivo que ejecute uno o más archivos de pruebas. El siguiente script ejecutará 2 conjuntos de pruebas y saldrá de la aplicación. RunTestSet U:\TestSets\DeptEmp.ts D:\Temp\DeptEmp.log RunTestSet U:\TestSets\Sales.ts D:\Temp\Sales.log Exit Application

Este archivo puede ejecutarse directamente desde la línea de comandos. Por ejemplo: plsqldev.exe UserID=scott/tiger@chicago CommandFile=U:\TestSets\RunTests.sql

Page 205: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 205

22. El Editor. Cada ventana que le permite editar código SQL o PL/SQL utiliza el mismo editor. Este editor posee algunas características especiales que hacen el trabajo del programador un poco más sencillo.

22.1 Funciones de selección. El editor le permite realizar varias funciones de selección de texto. Esas funciones están disponibles desde el elemento Selección del menú Edición, y sólo son aplicables si ha realizado una selección del texto. Puede asignar una tecla de función para esas funciones a través de la configuración de las teclas de función en la ventana opciones. • Aumentar Sangría / Reducir Sangría - El número de caracteres depende de las preferencias del

editor. Las teclas Tab y Shift-Tab se asigna a estas dos funciones si hay un texto seleccionado en el editor.

• Mayúsculas / Minúsculas • Comentar / Deshacer comentar - Hace un uso rápido de las instrucciones /* */ para comentar

rápidamente el texto seleccionado. • Aplicar estilo a la sintaxis - Si estableció la opción Estilo palabras reservadas del Editor a

Uppercase, Lowercase o Init Caps, esta opción aplicará este estilo a las palabras reservadas del texto seleccionado.

• Ordenar - PL/SQL Developer ordenará las líneas del texto seleccionado en orden ascendente. Si vuelve a llamar a la función Ordenar otra vez, las líneas del texto seleccionado se ordenarán en orden descendente.

• Marcador de Color - Aplica el color determinado en las preferencias al texto seleccionado (vea el capítulo 22.11)

22.2 Selección de columnas. Puede seleccionar una columna de texto si mantiene presionada la tecla Alt. Cuando realice la selección:

Puede copiar, pegar, cortar, borrar, aumentar o disminuir la sangría, comentar y descomentar el texto seleccionado de forma habitual.

22.3 Asistente de código.

Page 206: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 206

El asistente de código es una potente herramienta de PL/SQL Developer que le proporciona ayuda a medida que teclea código SQL y PL/SQL. Cuando, por ejemplo, teclea dbms_alert. Y duda por un momento, el editor le mostrará la lista de elementos del paquete dbms_alert:

A medida que continúa tecleando el nombre del procedimiento dbms_alert, la lista se reducirá. Si por ejemplo teclea una r después de dmbs_alert, sólo los procedimientos register, remove, y removeall seguirán presentes en la lista. Cuando presione la tecla Enter mientras el asistente de código se encuentre visible, el elemento seleccionado se insertará en el código. También puede utilizar las teclas de función para navegar a través del asistente de código y seleccionar el elemento deseado. Si presiona la tecla Escape desaparecerá el asistente de código. El asistente de código le proporciona información acerca de los siguientes tipos de objetos:

Tipo de objeto Elementos Paquetes. Procedimientos, funciones, tipos, variables, constantes y

Funciones, Procedimientos. Parámetros, definidos con notación nominal (param => ). Tablas, Vistas. Columnas. Secuencia. Valores: Nextval y Currval. Usuarios. Objetos propiedad del usuario. Variables de tipo Cursor. Campos de la consulta del cursor. Variables de tipo Record. Campos del tipo de registro. Variables de tipo Tabla%rowtype .

Columnas de la tabla.

Tipos de objetos. Atributos (constructor por defecto). Variables basadas en objetos. Atributos y métodos. Columnas basadas en objetos. Atributos y métodos. Colecciones. Métodos de la colección (first, next, limit, ect).

:new and :old Columnas de la table o de la vista del trigger actual. Self Atributos y métodos del tipo de datos actual. @ Una lista de enlaces de bases de datos. El asistente de código también puede ayudarle a teclear los nombres de los objetos (tablas, paquetes, etc.), de las palabras reservadas y de los identificadores de PL/SQL que tengan significado dentro del contexto actual. Si, por ejemplo teclea pro en el editor SQL y duda, las palabras reservadas procedure y profile se mostrarán en el asistente de código, con cualquier nombre de objeto de la base de datos que comience por pro. El contexto depende del usuario conectado (el cual determina la disponibilidad de los nombres de objetos), el tipo del editor (que determina las palabras reservadas disponibles) y la unidad de programa que esta editando (que determina los identificadores PL/SQL disponibles). Los nombres de los objetos de la base de datos que se incluyen en esta lista contextual se recogen cuando se conecta por primera vez a la base de datos. Las consultas que son ejecutadas están definidas en el archivo CANames.sql que se encuentra en el directorio de instalación de PL/SQL Developer o en el directorio %APPDATA%\PLSQL Developer. Puede cambiar esas consultas si es necesario.

Page 207: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 207

El asistente de código puede ejecutarse de forma automática o de forma manual, y el retraso antes de que el asistente de código se active automáticamente puede establecerse mediante una opción. Además puede definir si desea describir a un usuario y si es así, que tipos de objeto deben incluirse. La descripción del contexto y el número mínimo de caracteres que necesitan ser tecleados antes de que pueda activarse también. Todas esas preferencias se describen en el capítulo 20.15.

22.4 Historial de instrucciones. Cada vez que ejecute correctamente una instrucción en una ventana de consulta SQL, una ventana de comandos o una ventana de informes, esta instrucción se almacena en un buffer. Puede volver a ejecutar las instrucciones ejecutadas recientemente en el editor si selecciona el elemento Historial de instrucciones del menú Edición, o presionando las teclas Ctrl – E. Esto mostrará una lista de selección como la siguiente:

Las instrucciones se muestran en orden de ejecución, con la más reciente en primer lugar. En esta lista puede ver la fecha y hora, el usuario y parte del texto de la instrucción ejecutada. Puede seleccionar la instrucción y hacer doble clic sobre ella (o presionar la tecla Enter) para insertarla en la posición del cursor en el editor desde donde fue llamado. Observe que las instrucciones que incluyen contraseña no se guardan en el buffer por motivos de seguridad. Puede ordenar la lista por fecha y hora, usuario o texto de la instrucción presionando los botones correspondientes en la cabecera de la lista. Para mostrar las instrucciones ejecutadas por el usuario conectado, haga clic con el botón derecho del ratón sobre la lista y seleccione el elemento Usuario actual del menú contextual. En el mismo menú contextual puede cambiar a Todos los usuarios, borrar una instrucción o copiar el texto de la instrucción al portapapeles. Para encontrar una instrucción especifica puede llamar a la función de búsqueda utilizando la correspondiente tecla de función (por defecto Ctrl – F), o haciendo clic con el botón derecho del ratón en la lista y seleccionando el elemento Buscar instrucción del menú contextual. La función de búsqueda comenzará a buscar a partir de la instrucción seleccionada y continuará hasta la primera instrucción si no ha encontrado una instrucción exacta. Además el menú contextual contiene funciones para borrar las instrucciones seleccionadas de la lista, copiarlas al portapapeles o exportar la lista completa a un archivo CSV. El buffer puede almacenar hasta 200 instrucciones, que se guardarán en el directorio de datos de la aplicación, en el perfil del usuario de Windows. Puede cambiar este limite y el directorio a través de las opciones correspondientes en la ventana de preferencias (vea el capítulo 20.26).

22.5 Formato especial. Si utiliza PL/SQL Developer para escribir código PL/SQL o SQL que luego utilizará en otras herramientas, como por ejemplo, un lenguaje de programación de tercera generación puede que necesite

Page 208: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 208

el código en un formato diferente. Asumiremos que quiere escribir y testear una instrucción SQL como la que se muestra a continuación en PL/SQL Developer:

select deptno, sum(sal) mgr_sal from emp where job = 'MANAGER' group by deptno order by mgr_sal desc

Si, por ejemplo, quiere utilizar esta instrucción en Borland Delphi, necesita un formato como este:

SQL := 'select deptno, sum(sal) mgr_sal from emp' + #13#10 + 'where job = ''MANAGER''' + #13#10 + 'group by deptno' + #13#10 + 'order by mgr_sal desc';

Para este propósito puede utilizar la function Formato especial del menú Edición o del menú contextual después de hacer clic con el botón derecho del ratón sobre una selección de texto en el editor. Esta función tiene un submenú, que le muestra todos los formatos que se encuentran definidos después de seleccionar el formato, el código convertido se almacena en el portapapeles, con lo que puede pegarlo posteriormente en el editor de la herramienta correspondiente. Los formatos están definidos en el subdirectorio SpecialCopy en el directorio de instalación de PL/SQL Developer. Puede cambiar los formatos de copia predefinidos o añadir nuevos formatos. Simplemente añada un archivo de texto con la extensión .copy que contenga la variable para la primera línea de código PL/SQL (<linea_n>) y una variable para todas las demás líneas (<línea_*>). El ejemplo para Borland Delphi es como el siguiente: ;PL/SQL Developer SpecialCopy definition for Borland Delphi ;<line_1> for first line ;<line_*> for all other lines ;<line_N> for last line ; SQL := '<line_1>' + #13#10 + '<line_*>' + #13#10 + '<line_n>';

La primera línea necesita ir precedida de la asignación a la variable SQL, y necesita ir seguida de una pareja de CR/LF. La última línea no necesita la pareja CR/LF, pero necesita finalizarse con un punto y coma. Todas las demás líneas necesitan ir seguidas de un CR/LF. En algunos lenguajes necesita utilizar secuencias de escape para caracteres especiales. Por ejemplo, en C++, debería utilizar \t para los tabulados (código ASCII 9). Para definir esas secuencias de escape, utilice la palabra reservada #define: #define char(9) = \t #define \ = \\ String("<line_1>\n") + String("<line_*>\n") + String("<line_n>");

Puede de forma adicional utilizar “#define compress” para indicar que desea eliminar todos los caracteres en blanco redundantes del resultado (espacios, tabulados). Observe que el nombre del archivo .copy será incluido en el menú, con lo que debería utilizar un nombre descriptivo.

Page 209: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 209

22.6 Ayuda sensible al contexto. La mayoría de los programadores frecuentemente necesitan acceder a información acerca de las funciones que están utilizando en sus programas. Para encontrar las referencias a esa información tan rápido como sea posible, sitúe el cursor sobre el texto del código y presione el botón F1 para buscar información sobre este elemento en los manuales en línea de Oracle. Puede leer el capítulo 31 para más información sobre el sistema de ayuda de PL/SQL Developer.

22.7 Menú contextual de los objetos de la base de datos. Cuando su programa accede a los objetos de la base de datos, muy a menudo necesita obtener información sobre este objeto o quiere manipularlo. Puede querer conocer su descripción o sus propiedades. Para una tabla o vista podría consultar o editar los datos. Para una función o procedimiento quizá quiera probar una determinada situación. Si hace clic con el botón derecho sobre nombre de un objeto en el editor, verá el mismo menú contextual que si hiciese clic con el botón derecho sobre el Explorador de Objetos. Además, todas las funciones relevantes para este objeto se encuentran disponibles desde el propio editor.

22.8 Plan de ejecución. Para llamar a la ventana del plan de ejecución para una consulta en el editor, seleccione el texto de la consulta, haga clic con el botón derecho del ratón sobre él y seleccione el elemento Explain Plan del menú contextual. Si no ha seleccionado ningún texto, el código completo se llevará a la ventana del plan de ejecución. Si la consulta contiene código PL/SQL, debe modificar las instrucciones en la ventana del plan de ejecución como se describe en el capítulo 6.1.

22.9 Macros. El editor tiene una potente función de macros que le permite grabar y reproducir macros fácilmente, que pueden utilizarse para automatizar tareas repetitivas. Una macro grabada puede almacenarse en la librería de macros para ejecutarse posteriormente. Las macros en la librería normalmente realizarán algunas tareas repetitivas (como cambiar asignaciones a:=b; -> b:=a;), o pueden contener pequeños fragmentos de código. Por ejemplo, ¿porqué buscar como se declara un determinado tipo de cursor cuando puede teclearlo una vez y grabarlo para su posterior uso? Para grabar una macro, presione la tecla de función F11 o seleccione el elemento Record en el menú Macro del menú Herramientas. Todas las pulsaciones de teclado se graban. Presione F11 otra vez para finalizar la grabación de la macro. Presione F12 para reproducir la macro.

Page 210: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 210

Para almacenar una macro grabada en la librería de macros, seleccione el elemento Library en el menú Macro. Esta acción abrirá el cuadro de diálogo de la librería de macros:

Presione el botón Nuevo para añadir una nueva macro con la definición grabada. Puede introducir una descripción para la macro e indicar si debería aparecer en el menú Macro. De esta forma puede hacer que las macros estén fácilmente disponibles, y puede asignarles una tecla de función a cada macro a través de las preferencias Teclas. Si la opción Macros como elementos del menú está habilitada, el elemento Macro se sitúa en el menú principal. Si no esta habilitada, se encuentra localizada en el menú Herramientas. Cuando la opción Botón de la barra de herramientas esta habilitada, la herramienta externa puede incluirse de forma adicional en la barra de herramientas .La descripción se mostrará como sugerencia cuando mantenga el cursor del ratón sobre el botón de la barra de herramientas. Si deja esta descripción en blanco, la descripción principal de la macro (como se muestra en la librería y en el menú) se utilizará. Presione el botón Imagen para seleccionar un archivo de tipo bitmap (*.bmp ) para el botón de la barra de herramientas. El tamaño de la imagen debe ser preferiblemente de 20x20 píxeles. Observe que PL/SQL Developer siempre carga los archivos de bitmap desde su localización original, con lo cual no debería eliminar o cambiar el nombre sin cambiarlo también en la macro correspondiente. PL/SQL Developer viene con un número de archivos bitmap estándar que puede elegir. Esos archivos se encuentran en el directorio Icons en el directorio de instalación de PL/SQL Developer. Este es el directorio por defecto para el selector de imágenes. En la pestaña Teclas puede ver y cambiar las acciones del teclado para esta macro. Para ejecutar una macro almacenada, abra la librería de macros y haga doble clic sobre el nombre de la macro que desea ejecutar. La macro seleccionada puede ejecutarse si presiona la tecla F11. Cuando seleccione una macro en el menú, esta se ejecutará automáticamente, pudiendo ejecutarla de nuevo si presiona la tecla F12.

22.10 Marcadores. Para marcar una posición específica en un editor, puede añadir un marcador. Simplemente presione Ctrl-Kn (donde n es un numero desde el 0 hasta el 9) para añadir un marcador en dicha posición. Un marcador de color verde aparecerá en un lateral del editor, con el número correspondiente. Para navegar a ese marcador mas adelante, presione Ctrl-Qn. De forma alternativa puede utilizar los submenús Establecer marcador e Ir a marcador desde el menú Edición.

Page 211: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 211

El elemento Lista de marcadores del menú Edición mostrará una vista jerárquica con todos los marcadores de los editores:

En esta vista puede ver las ventanas, editores y líneas donde se encuentra un marcador. Si hace clic en un marcador se mostrara la ventana y el editor y se navegara a la posición del marcador. Puede acoplar la lista de marcadores para que sea accesible siempre sin bloquear ninguna otra ventana.

22.11 Marcador de color. Puede añadir marcas de color en un editor para resaltar secciones específicas. Para hacerlo, seleccione el texto que desee resaltar y presione el botón Marcador de color en la barra de herramientas:

El color de fondo del texto seleccionado cambiara al color seleccionado del marcador:

Para cambiar el color del marcador, presione la flecha situada al lado del botón y seleccione un Nuevo color. Para limpiar el texto seleccionado, sitúe el cursor dentro del texto marcado sin realizar ninguna selección, y presione el botón Marcador de color.

22.12 Contenido del código.

Page 212: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 212

La herramienta contenido del código esta restringida al editor de programas. Este muestra la estructura completa de una unidad de programa. Esto es útil para los cuerpos de los paquetes y tipos cuando estos son muy largos, extendiéndose miles de líneas de código PL/SQL. El contenido de código se muestra en un árbol jerárquico en la parte izquierda de la ventana de programas.

La herramienta contenido de código controla su posición en el código. Mientras navega a través del código, el elemento seleccionado le indicará donde se encuentra situado exactamente. Si mueve el cursor del ratón sobre un elemento en el contenido del código, el código correspondiente en el editor se resaltará como se muestra en la imagen superior. Si hace clic en el contenido del código inmediatamente navegará a la declaración de dicho elemento. Si hace doble clic en el elemento lo expandirá o lo colapsará. Si hace clic con el botón derecho del ratón sobre un elemento se mostrará un menú contextual que le permitirá seleccionar el código en el editor, copiar o cortarlo al portapapeles, comentarlo, expandir todos sus elementos o crear un archivo de prueba (en caso de que sea una unidad de programa de tipo público). El contenido puede ordenarse alfabéticamente si presiona el botón Ordenar contenido situado en la parte superior del panel de contenido. Sólo se ordenará el contenido principal: parámetros, variables locales, etc., no se ordenarán. El botón permanecerá presionado, y presionándolo otra vez cambiará el contenido a su orden original. Para cerrar el panel de contenido del código, haga clic en el botón Cerrar contenido situado en esquina superior derecha. También puede hacer clic con el botón derecho del ratón en el editor y seleccionar el elemento Mostrar contenidos para que aparezca o desaparezca, o seleccione el elemento Contenido del código en el menú Herramientas. Por defecto el panel de contenido del código está visible. Para cambiar esta opción por defecto cierre el contenido del código en la ventana de programa y seleccione el elemento Guardar organización de las ventanas en el menú Ventana.

22.13 Jerarquía del código.

Page 213: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 213

La jerarquía del código está restringida al editor de programas y muestra la estructura jerárquica del código PL/SQL en la posición del cursor. La jerarquía de código se encuentra situada en la parte superior del editor:

En el ejemplo anterior, el cursor se encuentra situado en una instrucción Select dentro de Code section dentro de Function .Si mueve el ratón sobre los elementos de la jerarquía del código, PL/SQ Developer resaltará el código correspondiente. Si hace clic con el ratón encima de un elemento se seleccionará el código fuente correspondiente. Si hace clic con el botón derecho del ratón sobre un elemento (como se muestra en la imagen superior), se mostrará un menú contextual que le permite seleccionar el código fuente, para cortar o copiar el código al portapapeles, para pegar el código del portapapeles sobre el elemento, para borrar el código o para comentar el código y viceversa.

22.14 Mostrar / Ocultar código. Esta funcionalidad le permite mostrar u ocultar secciones específicas de código fuente en PL/SQL Developer. De esta forma puede ocultar todos los procedimientos y funciones dentro de un paquete y mostrar única y exclusivamente solo los que sean de interés para usted. Como ejemplo puede ocultar estructuras de código como los loops y las instrucciones if..then..else…, para tener una visión global mejor de su programa si este es muy amplio. En el siguiente ejemplo se han ocultado varias funciones así como también una instrucción if..then..else..

Page 214: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 214

Para ocultar una sección de código simplemente haga clic sobre el símbolo menos “-“ situado en la parte derecha del editor de código. Puede hacer clic con el botón derecho del ratón sobre el margen izquierdo y seleccionar el elemento “Mostrar /ocultar todo” menú contextual. Si mueve el puntero del ratón sobre una línea de código oculta en el editor, la sección de código que se encuentra oculta se mostrará en un panel diferente.

22.15 División del editor de código. PL/SQL Developer le permite editar o ver 2 secciones separadas del mismo código fuente. Para poder utilizar esta nueva funcionalidad, simplemente haga clic y arrastre hacia la parte inferior del editor la barra de división que se encuentra situada en la parte superior del editor de código:

Así podrá navegar, editar y ver ambas secciones de código al mismo tiempo.

22.16 Navegación mediante vínculos.

Page 215: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 215

A menudo en su código PL/SQL puede tener referencias a otros elementos que se encuentran definidos en otra parte. Puede, por ejemplo, hacer referencia a un tipo de PL/SQL dentro del mismo cuerpo del paquete, dentro de la especificación del mismo, o dentro de otro paquete de la base de datos. Lo mismo ocurre con las llamadas a las funciones o procedimientos, variables, vistas, etc. Es fácil encontrar una declaración desde una ventana de programa, puede mover el puntero del ratón sobre dicha referencia, presionar la tecla Ctrl. y hacer clic con el botón izquierdo del ratón. Después de presionar la tecla Ctrl.; el identificador situado debajo del puntero del ratón se volverá azul claro y se subrayará, asemejándose a los vínculos de un documento HTML:

Si la declaración se encuentra dentro de la misma fuente, PL/SQL Developer navegará allí. Después de esto, se buscarán el resto de las unidades de programa dentro de la misma ventana de programa. Después buscará en todas las demás ventanas de programa que se encuentren abiertas. Finalmente intentará abrir una nueva ventana de programa o ventana de consulta SQL para el objeto que contenga la declaración y navegará allí. Por defecto la navegación mediante vínculos localizará una declaración en un paquete o en la especificación de un tipo, si es apropiado. Para abrir el paquete o el cuerpo del tipo en lugar de la especificación del mismo, puede hacer clic con el botón derecho del ratón sobre el vínculo.

22.17 Botones de navegación. Cada vez que cambia de posición en una ventana de programa, PL/SQL Developer creará un marcador para la posición anterior. Puede acceder a estos marcadores mediante los botones Volver a e Ir a...

Los marcadores se añadirán cuando navegue a través del contenido del código, utilice la función de búsqueda, haga clic en un error de compilación o se desplace a la parte inicial o final del editor, utilice la navegación mediante vínculos, abra una nueva ventana, etc.…

22.18 Refactorización. La función de refactorización le permite organizar rápidamente su código PL/SQL. Trabaja sobre el código seleccionado, o –si no se ha realizado ninguna selección – sobre la instrucción actual. Si hace

Page 216: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 216

clic con el botón derecho del ratón sobre una instrucción o sobre una selección aparecerán las siguientes opciones de refactorización en el submenú correspondiente: • Renombrar elemento - Renombra la variable, parámetro, constante o unidad de programa. Tanto

la declaración como la utilización serán renombradas. • Extraer procedimiento - Si una unidad de programa se ha hecho muy larga o muy compleja,

puede seleccionarla y convertirla en un procedimiento separado. Todas las variables utilizadas, tanto dentro como fuera de la selección se convertirán en parámetros. Sólo las variables incluidas dentro de la selección se moverán desde la unidad de programa actual a una nueva unidad de programa. La selección será reemplazada con una llamada a la nueva unidad de programa.

• Extraer constante local - Si una determinada expresión debería convertirse en una constante local, puede seleccionarla y proporcionar un nombre para la constante. Se creara una constante local dentro del subprograma actual, del tipo determinado por la expresión. Todas las ocurrencias de la expresión en el subprograma actual serán reemplazadas por el nombre de la constante.

• Extraer constante global - Si una determinada expresión debería convertirse en una constante global, puede seleccionarla y proporcionar un nombre para la constante. Se creará una constante global dentro del paquete actual, de un tipo que vendrá determinado por la expresión. Todas las coincidencias de la expresión en el paquete actual serán reemplazadas por el nombre de la constante.

• Reemplazar asignación con inicialización - Si la asignación de un valor a una variable local es exclusivamente para su inicialización, puede moverla a la declaración de la variable. Puede hacer clic con el botón derecho del ratón sobre una o varias instrucciones.

Si los resultados de la refactorización no son satisfactorios, puede simplemente, deshacerlo.

22.19 Barra de búsqueda. La barra de búsqueda se encuentra disponible en el menú Edición y puede mostrarse como una barra de herramientas flotante o anclada en la parte superior o inferior del área de trabajo. Cuando se encuentra acoplada, esta permanentemente disponible para realizar búsquedas a través de múltiples ventanas y editores:

Después de introducir una palabra a buscar, puede presionar el botón Buscar o presionar la tecla Enter. Los resultados de la búsqueda se resaltarán en el editor(es), puede presionar los botones de Buscar anterior / Buscar siguiente para navegar a través de los resultados de la búsqueda. Puede presionar la tecla Esc para mover el foco de la aplicación desde la barra de búsqueda al editor. Presione el botón Ocultar ocurrencias para limpiar los resultados resaltados en los editores.

Page 217: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 217

El botón Lista de resultados mostrará una representación jerárquica con los resultados de la búsqueda realizada.

En esta vista jerárquica puede ver las ventanas, editores y líneas donde se hayan encontrado resultados. Si hace clic en un resultado de la búsqueda se abrirá la ventana y el editor, navegara hasta el resultado y se seleccionara. Puede acoplar la lista de resultados para que sea accesible siempre sin bloquear ninguna otra ventana. En la barra de búsqueda, puede adicionalmente habilitar las opciones para buscar en todos los editores o en el editor actual, para que la búsqueda distinga entre mayúsculas y minúsculas, para buscar palabras completas únicamente o para utilizar expresiones regulares.

Page 218: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 218

23. El editor de datos. Puede utilizar el editor de datos siempre que necesite ver y editar columnas o variables de tipo long, long raw, CLOB, BLOB o BFILE. Puede utilizarlo adicionalmente para editar datos de tipo varchar2. El editor de datos analizará los datos e intentará mostrarlos en el formato correcto. Puede mostrar valores en formato texto, formato RTF, formato XML, formato HTML, imágenes (bmp, jpg, gif, tiff y otros) y datos en formato hexadecimal. Además puede abrir aplicaciones externas (ejemplo Microsoft Word o Acrobat Reader) para ver o editar los datos. Si utiliza el editor de datos para visualizar una imagen se mostrará la siguiente ventana:

La barra de herramientas situada en la parte superior del editor incluye los siguientes botones: • Abrir – Abre el contenido de un archivo en el editor. • Guardar – Guarda el contenido del editor en un archivo. • Imprimir – Imprime el contenido del editor en el formato seleccionado. • Cortar – Coloca el contenido del editor en el portapapeles, borrándolo posteriormente del editor. • Copiar - Copia el contenido del editor en el portapapeles en el formato seleccionado. • Pegar – Pega los datos del portapapeles en el editor en el formato seleccionado. • Limpiar – Borra el contenido del editor. Debajo de la barra de herramientas puede seleccionar la pestaña para el formato correcto del editor de contenidos. Múltiples formatos pueden aplicarse a algunos datos. Por ejemplo, un documento HTML puede verse en formato HTML o en formato de texto. Todos los datos pueden visualizarse en formato hexadecimal. Cuando realice cambios en el editor de contenido en un formato especifico, puede cambiar a un formato diferente para ver esos cambios. Por ejemplo cuando se encuentre visualizando un documento HTML puede cambiar a formato texto para realizar cambios y volver a la ventana formato HTML para ver esos cambios. Después de presionar el botón Aceptar los cambios se reflejarán donde haya llamado al editor de datos.

Page 219: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 219

23.1 Editar archivos de texto. Puede utilizar el editor de texto para ver o editar cualquier tipo de datos en formato de texto plano:

También puede ser utilizado para editar texto en formato XML y HTML. Si cambia entre las pestañas de XML y HTML se mostrarán de inmediato los resultados de esos cambios.

23.2 Editar datos en formato RTF. El editor RTF puede ser utilizado para ver y mantener texto en formato enriquecido. Esto le permite cambiar fácilmente el tipo de fuente, tamaño, color, estilo y alineación.

23.3 Editar datos en formato XML.

Page 220: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 220

Cuando visualice contenido XML, el editor cambiará a la pestaña XML:

Aquí puede ver la estructura de un documento XML en una vista jerárquica y editar los elementos individuales y sus atributos. Si presiona el botón Analizar XML analizará el documento XML y se visualizarán los errores. Esto requiere que tenga instalado Net8.1 o superior, y que el usuario tenga acceso al tipo SYS.XMLTYPE o al paquete XMLPARSER. Puede presionar el botón Formatear XML en la barra de herramientas para aplicar las reglas de formateo estándar en el documento. Si cambia a la pestaña de texto para visualizar un documento XML, se resaltará la sintaxis del mismo.

23.4 Editar HTML

Page 221: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 221

Cuando esté viendo contenido en formato HTML, el editor cambiará a la pestaña HTML:

Esta vista está siempre en modo de solo lectura. De todas formas, puede cambiar a la pestaña Texto para ver y editar los datos en formato texto plano, y volver a la pestaña HTML para ver los datos con el diseño formateado.

23.5 Editar imágenes. El editor de imágenes mostrará imágenes en los formatos más populares, como JPG, GIF, BMP, etc. Si una imagen es más larga de lo que el editor puede mostrar, se ajustará para que pueda visualizarse completamente. Este ajuste no afectará al contenido, siendo un efecto puramente visual. Debajo de la imagen podrá ver el formato de la imagen y su tamaño en píxeles. Para cambiar una imagen, puede presionar el botón Abrir situado en la barra de herramientas para cargar una imagen desde un archivo, o puede copiar la imagen desde otra fuente al portapapeles y presionar el botón Pegar. Observe que el formato de la imagen cambiará a BMP cuando lo copie o lo pegue desde el portapapeles. Para asegurarse de que se mantiene el formato original debería cargarlo desde un archivo.

23.6 Editar datos en formato hexadecimal.

Page 222: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 222

Para ver o editar contenidos en formato hexadecimal puede cambiar a la pestaña Hex:

En la parte izquierda puede ver 8 columnas con words (16 bits) de datos en formato hexadecimal. En la parte derecha puede ver la representación de los datos en modo texto. Puede editar ambos, el hexadecimal y el formato texto. Si hace clic con el botón derecho del ratón sobre el editor hexadecimal puede seleccionar un diseño de columna diferente.

23.7 Cargar un visor o un editor externo. Para muchos de los objetos que se almacenan en la base de datos podría ser necesario llamar a un visor o a un editor externo. Por ejemplo, si una columna de tipo BLOB contiene un archivo PDF (Portable Document File), podría ser necesario abrir el programa Acrobat Reader. Cuando llama al editor de datos para dicho contenido, se le llevará a la pestaña Texto o Hex. Después de esto puede cambiar a la pestaña Herr. Externa.

Aquí puede definir que programa debe ejecutarse. Primero necesita definir la extensión del archivo. Antes de ejecutar el programa, se creará un archivo temporal con los contenidos del editor con dicha

Page 223: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 223

extensión. A continuación necesitará definir que programas deberían ser ejecutados. Después puede presionar el botón Ejecutar para ver el contenido en el programa. Si cambia el archivo en un programa externo y lo guarda, el editor de datos le notificará los cambios y le permitirá importarlos al editor. Cuando se encuentre visualizando los datos de una columna, la asociación entre la tabla/columna y la aplicación externa será memorizada para la próxima vez que la visualice. Si activa la opción Ejecutar automáticamente la próxima vez, el editor de datos cargará directamente la aplicación externa. Para evitar esto puede presionar la tecla Ctrl la próxima vez que llame al editor. La mayoría de los programas tienen las extensiones registradas, en lugar de definir manualmente la extensión y el programa, puede seleccionarlo de una lista. Para ello presione el botón Mostrar extensiones registradas y después busque el archivo correcto y haga doble clic en él. Para los archivos PDF podría ser Adobe Acrobat:

Si hace clic con el botón derecho del ratón sobre la lista de tipos, puede ordenar la lista por extensión o por su descripción (valor por defecto).

Page 224: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 224

24. Constructor de consultas. El constructor de consultas le permite crear y modificar consultas de selección para sus archivos de código PL/SQL y SQL. Le proporciona un interface sencillo para crear la lista de campos, la lista de tablas, la cláusula Where y la cláusula Order By de las consultas de selección.

24.1 Crear una nueva consulta de selección. Para este ejemplo asumiremos que quiere crear una consulta de unión (join) entre la tabla dept y emp, y mostrar algunas columnas de ambas tablas: select e.empno, e.ename, d.deptno, d.dname from emp e, dept d order by e.empno

Para crear una nueva consulta, sitúe el cursor en la posición en la que quiera insertar el texto y presione el botón Constructor de consultas situado en la barra de herramientas (o seleccione el elemento Constructor de consultas en el menú Herramientas). Esto le mostrará una ventana vacía del Constructor de consultas:

En la parte izquierda puede ver un Explorador de Objetos con las tablas y vistas de la base de datos. En la parte inferior puede ver 3 paneles con la lista de campos (y de forma opcional la lista de elementos into), la cláusula Where y la cláusula Order By. La sección inferior contiene una pestaña que le permite cambiar para ver el texto SQL que se ha generado desde la definición de consulta actual. En la parte superior de la ventana, puede ver una barra de herramientas con los botones Nuevo, Abrir, para abrir un definición de una consulta previamente guardada., Guardar para archivar la definición actual a un archivo, el botón Parse para analizar la definición de la consulta, y un botón de preferencias. El botón Aceptar le devuelve al editor de SQL o PL/SQL e inserta la consulta que ha construido.

Page 225: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 225

Para incluir tablas o vistas en una consulta, arrástrelas desde el Explorador de Objetos hasta el área de trabajo. Cada vez que añada una nueva tabla, aparecerá el diálogo de propiedades de la tabla.

Desde aquí puede introducir un alias para la tabla. Para nuestro ejemplo queremos utilizar la ‘e’ para la tabla emp:

Después de añadir la tabla Dept de la misma forma, se le preguntará si desea unir las dos tablas utilizando las columnas de la clave foránea denominada EMP_FOREIGN_KEY:

Después de marcar esta opción, podrá ver la nueva condición de unión en la mitad inferior del formulario.

Page 226: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 226

Ahora ha añadido la tabla Dept y la condición de unión se verá en el área de trabajo:

Lo que necesitamos hacer ahora es incluir las columnas en la lista de campos de la consulta. Para ello haga clic en las casillas de selección situadas al lado de los nombres de las columnas. Las columnas se mostrarán en el panel Campos:

Si quiere crear una consulta para un procedimiento o función PL/SQL, necesita especificar los elementos de tipo into en la lista de elementos. La lista de selección mostrará las variables que se encuentran definidas en el código PL/SQL donde va a insertar la instrucción. En nuestro caso no queremos crear una lista de elementos into, con lo que dejamos esos elementos vacíos.

Page 227: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 227

Para crear la cláusula order by arrastre la columna empno sobre el panel Order By:

Puede presionar Aceptar para insertar la consulta en el editor.

24.2 Modificar una consulta de selección existente. Para modificar una consulta de selección existente en su código PL/SQ o SQL, haga clic con el botón derecho del ratón sobre la consulta y seleccione el elemento Constructor de consultas del menú contextual. La consulta será seleccionada en el editor y se mostrará el editor de consultas. Ahora puede cambiar la definición de la consulta como se ha descrito en el capítulo anterior.

24.3 Manipular la definición de la consulta. Las siguientes secciones describen como puede modificar la definición de la consulta. Para añadir un campo de una tabla en el área de trabajo para la consulta, puede hacer clic con el botón izquierdo del ratón en la casilla de selección situada al lado de la columna, o puede arrastrar la columna hasta la lista de campos. De forma alternativa, puede hacer doble clic en una columna si la lista de campos tiene el foco de la aplicación. Puede también arrastrar una columna o una carpeta de columnas directamente del Explorador de Objetos a la lista de campos. Las carpetas con las columnas se encuentran situadas debajo de la tabla, junto con las restricciones y los índices de dicha tabla. Puede teclear los nombres de las columnas y otras expresiones directamente en la lista de campos. Para borrar un campo de la lista de campos, haga clic con el botón derecho del ratón sobre el y seleccione el elemento Borrar elementos seleccionados del menú contextual. Si selecciona varios campos, puede eliminarlos de una sola vez. Puede mover campos a una posición diferente si los selecciona y los arrastra a una nueva posición. Si desea utilizar la cláusula distinct, marque la opción correspondiente en la lista de campos.

Utilizar alias para los nombres de campos. Para utilizar un alias para un campo, simplemente teclee el alias después de la expresión, de la misma forma que si estuviese escribiendo la consulta de forma manual.

Page 228: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 228

Cambiar la cláusula where. La cláusula where es un editor de texto normal, donde puede introducir las condiciones. Para incluir una columna, puede arrastrarla desde la tabla en el área de trabajo, o puede hacer doble clic sobre la columna si la cláusula where posee el foco de la aplicación. Para añadir una condición de unión basada en una clave foránea, haga clic con el botón derecho del ratón sobre la tabla en el área de trabajo y seleccione Foreign keys desde el menú contextual. No puede utilizar esta función para eliminar una condición de unión (join) existente, pero puede eliminar el texto en su lugar.

Cambiar la cláusula order by. Puede manipular la cláusula order by de la misma forma que la lista de campos, exceptuando que no puede utilizar las casillas de comprobación situadas junto a los nombres de columnas. Para cambiar el orden de un elemento entre ascendente o descendente, puede hacer clic en el botón situado al lado del elemento, el cual le mostrará la flecha correspondiente.

Utilizar un sinónimo para una vista o tabla. Puede utilizar una tabla o vista a través de un sinónimo, haga clic con el botón derecho del ratón y seleccione el elemento Añadir tabla desde el menú contextual. Teclee el nombre del sinónimo, introduzca un alias si fuese necesario y presione la tecla Aceptar.

24.4 Opciones del constructor de consultas.

Page 229: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 229

Si presiona el botón Preferencias situado en la barra de herramientas puede cambiar el comportamiento del constructor de consultas. Aparecerá el siguiente formulario:

La mayoría de estas preferencias afectan a la disposición de los elementos de la consulta generada. • Palabras reservadas - Determina la forma en que se insertan las palabras reservadas en una

consulta SQL. • Elementos - Determina la forma en la que se insertan los elementos en una consulta SQL. • Alinear palabras reservadas - Determina si las palabras reservadas del lenguaje SQL se alinean

a la izquierda o a la derecha. • Comas - Determina si la coma se coloca después del siguiente elemento o antes del elemento

actual. Esto es útil si la opción Single Item per line se encuentra habilitada. • Separador ‘AND’ - Determina cuando el separador ‘AND” se coloca antes de la siguiente

instrucción o después de la condición actual en la cláusula Where. • Añadir el propietario de la tabla como prefijo - Cuando esta opción está habilitada, a los

nombres de las tablas se les añade el nombre propietario como prefijo (ej. scott.emp en vez de emp). Cuando este deshabilitada, sólo se colocará el nombre del propietario si este no es el usuario actual.

• Palabras reservadas en una línea nueva - Cuando esta opción está habilitada, las palabras reservadas se sitúan en una nueva línea y todos los elementos se colocan en las líneas siguientes con una sangría de 2 caracteres. Si la opción se encuentra deshabilitada, los elementos se colocan inmediatamente en la misma línea.

• Sólo un elemento por línea - Cuando está habilitado, cada elemento se colocará en una nueva línea. Cuando deshabilite esta opción, los elementos se colocarán en una sola línea hasta alcanzar el margen derecho.

• Margen derecho - Determina la longitud máxima de cada línea cuando la opción un elemento por línea se encuentra deshabilitada.

• Mostrar siempre el editor de propiedades de la tabla - Cuando esta opción esta habilitada, el editor de propiedades de la tabla siempre se mostrará después de añadir una tabla a la definición de la consulta. Cuando esta opción se encuentra deshabilitada, el editor de propiedades de la tabla sólo se mostrará si añade una nueva tabla a la consulta que ya se ha utilizado con anterioridad ya que necesita introducir un alias para dicha tabla.

• Mostrar partes de la consulta SQL en una sola página - Determina si las 3 partes de una consulta SQL (Lista de elementos, cláusula Where y cláusula Order by) se muestran de forma conjunta en una sola pestaña. Si esta opción se encuentra desmarcada, cada parte de la consulta se muestra en una pestaña separada antes de la pestaña SQL.

24.5 Complementos del Constructor de Consultas.

Page 230: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 230

Si existe algún complemento instalado, el Constructor de Consultas cargará este complemento. Si hace clic con el botón derecho del ratón sobre el botón del Constructor de Consultas podrá seleccionar un constructor de consultas de una lista con todos los que se encuentre instalados. El complementos que haya sido utilizado más recientemente será el que se utilice la próxima vez que use el Constructor de Consultas

Page 231: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 231

25. PL/SQL Beautifier. Si desarrolla, mantiene y soporta código PL/SQL en un equipo de trabajo con varios programadores, es útil que todos los miembros del proyecto tengan el mismo estilo a la hora de codificar las instrucciones. Esto puede resultar beneficioso tanto para la calidad del código generado como para la productividad de sus programadores. Para asegurar esto, PL/SQL Developer incluye una herramienta que le permite formatear el código PL/SQL. Todo lo que necesita hacer es configurar las opciones y opcionalmente definir el estilo de código mediante las reglas que le ofrece PL/SQL Beautifier (pudiendo adoptar los valores por defecto). Después de esto, su código PL/SQL se formateará automáticamente a medida que vaya realizando el trabajo, o de forma explicita al activar la función de formateo.

25.1 Configurar PL/SQL Beautifier.

El Archivo de reglas determina que reglas se seguirán a la hora de formatear su código. Puede dejar este campo vacío para adoptar las reglas por defecto, que pueden definirse mediante el archivo default.bf localizado en el directorio de instalación de PL/SQL Developer. Vea la siguiente sección para más información sobre esas reglas. Además puede definir cuando PL/SQL Beautifier formateará su código automáticamente: • Después de crear – Cuando cree un programa nuevo utilizando una plantilla, o arrastre una nueva

instrucción DML, desde el Explorador de Objetos a la ventana de programa. • Después de cargar – Después de que cargue un archivo desde el sistema de ficheros. Esto no

afectará al código que abra desde una base de datos Oracle. • Antes de compilar – Cuando compile un programa en la ventana de programa, esto le asegura

que todo el código PL/SQL almacenado en la base de datos se ajuste a las reglas definidas. • Antes de guardar – Antes de que guarde un archivo en el sistema.

25.2 Definir las reglas de PL/SQL Beautifier.

Page 232: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 232

Si presiona el botón Editar, en la pantalla de preferencias, puede ver o editar las reglas del archivo seleccionado:

Después de realizar cambios en esas reglas, puede presionar los botones de Guardar o Guardar como, para salvar los cambios. Puede abrir otro archivo de reglas para ver su contenido o para editarlo, y puede restablecer las reglas por defecto si presiona el botón correspondiente. Si guarda el archivo con un nombre nuevo, o abre un archivo diferente, es necesario que seleccione ese archivo de reglas en la ventana de preferencias para hacer que esas reglas contenidas en dicho archivo sean efectivas. En la pestaña General puede cambiar las reglas que PL/SQL Beautifier aplicará a aspectos generales de su código PL/SQL. Todos los cambios que realice serán inmediatamente visibles en el panel de vista previa, situado en la parte inferior del cuadro de diálogo, la mayoría de las opciones son auto aclaratorias. Las siguientes opciones necesitan explicarse con más detalle: • Sangría – Número de espacios que se utilizarán en la sangría del texto para estructuras anidadas

como begin/end, if/then/else, loops, etc. • Margen derecho – Cuando el código necesite ajustarse a la siguiente línea, puede utilizar el

margen derecho como guía. A menudo pueden presentarse situaciones en las que el código exceda el margen derecho, por ejemplo cuando se han escrito cadenas de texto muy largas.

• Utilizar carácter de tabulado – Cuando esta habilitado, el código formateado contendrá el carácter del tabulado. Cuando esté deshabilitado PL/SQL Beautifier utilizará espacios en blanco.

• Tamaño del tabulado – Número de caracteres que representa un tabulado. No sólo es útil cuando la opción Utilizar carácter de tabulado, se encuentra habilitada, también puede ser útil para corregir la alineación de los tabulados que se ha realizado mediante espacios en blanco.

• Líneas en blanco – Puede definir que líneas en blanco pueden eliminarse y PL/SQL Beautifier insertará las líneas en blanco con sus propias reglas, o los grupos de líneas que deberían juntarse en una línea en blanco, o si todas las líneas en blanco se conservan tal cual se encuentran en el editor.

Page 233: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 233

• Listas de elementos – Estas reglas se aplican a todos los elementos que no se agrupan en ninguna de las categorías de las otras pestañas

• Mayúsculas / Minúsculas – Determina si las palabras reservadas del lenguaje PL/SQL y los identificadores se escriben en mayúsculas o minúsculas. La opción Utilizar sintaxis especial, le permite definir un número de palabras que se capitalizarán de la forma especificada. Si, por ejemplo, incluye la palabra DMBS_Output.Put_Line en la lista, esta se escribirá de la misma forma en todo el código PL/SQL. Puede utilizar los comodines % o *, de forma que para este ejemplo DBA_% convertirá a mayúsculas los 3 primeros caracteres para cualquier palabra que empiece con DBA_.

Las otras pestañas contienen reglas que puede aplicar a aspectos específicos de su código PL/SQL. Esas reglas son auto aclaratorias, puede ver el efecto que causan mediante el panel de vista previa.

25.3 Utilizando PL/SQL Beautifier. Si no ha seleccionado ninguno de los eventos en el cuadro de diálogo opciones, puede de forma explicita, formatear su código seleccionando el elemento PL/SQL Beautifier en el menú Edición, presionando el botón correspondiente en la barra de herramientas o utilizando la tecla de función asignada para ello. Por defecto, todo el código PL/SQL en el editor será formateado. Si existe un error crítico de sintaxis presente en el código, este no se formateará, y recibirá un mensaje de error. Puede seleccionar de forma alternativa un conjunto de instrucciones PL/SQL (función, procedimiento) y activar manualmente la herramienta de formateo.

25.4 Eliminando el formato aplicado por PL/SQL Beautifier. Si tiene código PL/SQL que desea formatear de forma manual y eliminar el formato aplicado por PL/SQL Developer, puede utilizar las directivas NoFormat Start y NoFormat End . Por ejemplo: ... TimeOut := 1000; -- NoFormat Start DBMS_Alert.WaitOne('SHUTDOWN', Message, Status, TimeOut); -- NoFormat End if Status = 0 then ...

Page 234: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 234

26. Plantillas. Cada vez que crea una nueva unidad de programa, su contenido inicial esta basado en una plantilla que contiene texto predefinido y variables. Cuando seleccione una plantilla, se le preguntará por los valores de esas variables, los cuales se reemplazarán después en el texto de la plantilla. También puede utilizar las plantillas para insertar fragmentos de código SQL o PL/SQL en código ya existente. Podrá crear, por ejemplo una plantilla un cursor for.. loop y utilizarla siempre que necesite dicha estructura de control. Las plantillas son archivos de texto plano que se encuentran en el directorio Templates y tienen la extensión .TPL. Existen plantillas predefinidas para todo tipo de unidades de programa, así como plantillas con construcciones comunes del lenguaje SQL y del lenguaje PL/SQL. Puede modificar y crear plantillas para cubrir necesidades específicas.

26.1 La ventana de plantillas. La ventana de plantillas muestra la estructura jerárquica del directorio de plantillas. Esto le permite organizar sus plantillas fácilmente. Cuando inicie PL/SQL Developer por primera vez, la ventana de plantillas se encontrará anclada debajo del Explorador de Objetos. De esta forma siempre se encuentra disponible y no obstaculiza la vista de otras ventanas de documentos:

Existe un número predefinido de plantillas que se encuentra organizado en las siguientes carpetas: • Constants – Plantillas para la declaración de constantes del lenguaje PL/SQL. • Default – Plantillas con los contenidos por defecto de la ventana de consulta SQL, la ventana de

prueba, la ventana de comandos y el Explain plan. También contiene las plantillas para crear nuevas vistas. Seguramente no utilice directamente estas plantillas, pero puede mantenerlas aquí.

• DML Statements – Plantillas para las instrucciones DML que puede utilizar en su código PL/SQL.

• Loops – Plantillas con la estructura de los diversos tipos de bucles existentes en el lenguaje PL/SQL.

• Package elementes – Plantillas para elementos que pueden utilizarse en las especificaciones o cuerpos de los paquetes.

• PLSQL Types – Plantillas para todos los tipos de datos que se pueden declarar en PL/SQL.

Page 235: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 235

• Program Units – Esta es una carpeta especial que contiene plantillas para las nuevas unidades de programa. Siempre que cree una nueva unidad de programa, se utilizará una plantilla de esta carpeta cuyo nombre corresponda con la unidad de programa que va a utilizar.

• SQL Functions – Plantillas con todas las funciones de SQL, como add_months, substr, etc. Estas plantillas pueden resultar útiles si no conoce el nombre exacto o el significado de los parámetros de una función determinada.

• Type elements – Plantillas para elementos que pueden utilizarse en las especificaciones de tipos o en el cuerpo de los mismos.

• Variables – Plantillas para la declaración de variables. Por defecto la ventana de plantillas se encuentra anclada debajo del Explorador de Objetos, puede convertirla en una ventana flotante si hace clic con el botón derecho del ratón sobre la misma y selecciona el elemento Flotante del menú contextual. Para anclar la ventana nuevamente, siga el mismo procedimiento. Puede guardar la disposición de las ventanas para la próxima vez que inicie PL/SQL Developer, utilizando el elemento Guardar organización de las ventanas del menú Ventana, que guardará la disposición actual de las ventanas. Esta función se explica con más detalle en el capítulo 32.2.

26.2 Utilizar las plantillas. Para insertar una plantilla en un fuente existente, simplemente haga doble clic sobre ella. Si la plantilla contiene variables que deben ser definidas por el usuario se mostrará un formulario antes de que se inserte el texto. Si, por ejemplo, hace doble clic en la plantilla Function implementation, se le mostrará la siguiente ventana:

Page 236: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 236

Después de rellenar el formulario y presionar el botón de Aceptar, la plantilla se insertará en el código, en la posición del cursor:

También puede arrastrar y soltar las plantillas desde la ventana de plantillas a una posición específica en el editor. Esta posición determinará la sangría del texto de la plantilla. De forma similar puede hacer clic con el botón derecho del ratón en cualquier parte del editor y seleccionar el submenú Plantillas del menú contextual.

26.3 Crear y modificar plantillas. Para modificar una plantilla existente, haga clic con el botón derecho del ratón sobre la misma y seleccione el elemento Modificar del menú contextual. Se abrirá un editor de texto con el texto de la plantilla. Este texto contiene la especificación completa de la plantilla, incluyendo variables, consultas, etc. El formato de la plantilla se describe en las siguientes secciones. Para crear una nueva plantilla, haga clic con el botón derecho del ratón sobre la carpeta en la que desee crear la plantilla y seleccione el elemento Nueva Plantilla en el menú contextual. PL/SQL Developer le preguntará primero por el nombre de la plantilla, para a continuación mostrarle el editor de plantillas. También puede crear una nueva carpeta, seleccionando el elemento Nueva carpeta desde el menú contextual.

Valores literales en la plantilla. La especificación de la plantilla contiene literales y variables. El texto de los literales simplemente se copiará en el archivo de destino sin ningún tipo de modificación. Imagínese una plantilla llamada Commit que sólo contenga el texto Commit;. Cuando haga doble clic sobre la plantilla, el texto Commit; se insertará en el código fuente, en la posición del cursor. Los corchetes indican la presencia de una variable en la plantilla (vea más abajo), por lo que si desea utilizar corchetes en el texto, debe utilizar dobles corchetes en su lugar. Por ejemplo: [[opción]]

Variables de usuario. Las variables son códigos en el texto de la plantilla, que se reemplazan por el texto de sustitución en el momento de utilizar la plantilla. Este texto puede tener un valor implícito, como la fecha o el usuario, o puede ser específico del usuario. Las variables definidas en la plantilla, aparecerán en el formulario de la plantilla cuando se cargue. El siguiente ejemplo define las variables Nombre y Tipo para la plantilla de una función:

Page 237: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 237

create or replace function [Nombre] return [Tipo] is begin return(resultado); end [Nombre];

Cuando se utilice esta plantilla, el usuario puede especificar los valores para las variables Nombre y Tipo. Como puede ver, la variable Nombre se utiliza dos veces. Al usuario sólo se le preguntará una vez por el valor y las dos variables utilizadas en la función se rellenarán con dicho valor. Las siguientes funcionalidades se encuentran disponibles para las variables de usuario: • Valor por defecto - Puede establecer un valor por defecto para una variable justo después de su

nombre. Para definir el texto varchar2 como el tipo por defecto de la función creada en el ejemplo anterior, puede emplear la siguiente declaración: [Tipo = varchar2]

• Listas de restricción - Para restringir los posibles valores de una variable, puede definirla como una lista de valores. Para limitar los tipos de una función a varchar2, number y date, puede utilizar la siguiente declaración: [Tipo = varchar2, *number, date] El valor precedido con un asterisco se utilizará como valor por defecto.

• Listas de sugerencias - Puede proporcionar al usuario una lista con los valores sugeridos para una variable, permitiéndole utilizar el uso de otros valores, para ello utilice… después del último elemento de la lista: [Tipo = varchar2, number, date,...]

• Listas de descripción - En lugar de utilizar el mismo texto para los elementos y el texto de sustitución, puede utilizar una lista de descripción para cada elemento. Después de la descripción coloque el carácter “:” y el valor que almacenará la variable: [Nivel = Write No Database State: WNPS, Read No Database State: RNDS,...]

• Casillas de verificación - Para variables que pueden contener dos valores, puede utilizar una casilla de verificación. Coloque una barra (/) entre el valor desmarcado (izquierda) y el valor marcado (derecha). La siguiente variable insertará el texto for each row cuando se encuentre desmarcada y for each statement cuando se encuentre marcada. [Nivel de la instrucción = for each row / for each statement]

Si desea utilizar caracteres especiales (comas, corchetes, etc.) en el texto de substitución, puede colocarlos entre comillas dobles. El siguiente ejemplo muestra una plantilla para un disparador (trigger) de la base de datos, que utiliza variables de usuario.

create or replace trigger [Name] [Fires = before, after, instead of] [Event = insert, update, delete, ...] on [Table or view] [Statement level? = for each row/for each statement] declare -- variables locales begin ; end [Name];

Nota: Puede crear varias unidades de programa en una única plantilla si las separa entre sí con el carácter (/). De esta forma puede juntar las plantillas de especificación y el cuerpo de un paquete en una sola plantilla.

Page 238: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 238

Cuando utilice la plantilla, se le preguntará al usuario los valores de las variables como se muestra a continuación:

Variables implícitas. Además de las variables de usuario puede utilizar variables implícitas. El texto de sustitución para esas variables no lo especifica el usuario, sino el sistema (fecha, hora, usuario), o el programador de la plantilla (consultas, texto).

Variables de sistema. Las siguientes cuatro variables de sistema están definidas en PL/SQL Developer: • $OSUSER – El nombre del usuario del sistema operativo. • $DBUSER – El nombre de la base de datos en la que el usuario se encuentra conectado. • $DATE – La fecha actual. • $TIME – La hora actual. Las dos primeras líneas de la siguiente plantilla de ejemplo, insertan el usuario de Windows y la fecha y hora en un fuente:

-- Autor : $OSUSER -- Fecha de creación : $DATE $TIME -- Propósito : [Propósito] procedure [Nombre] is begin ; end [Nombre];

Nota: las variables de sistema no utilizan corchetes en el texto de la plantilla, se preceden del carácter $. Si desea utilizar el nombre de una variable de sistema en el texto resultante en vez del valor de sustitución, puede colocar un segundo símbolo de $ antes del nombre de la variable. Por ejemplo:

-- $$Date$ $Revision$

El texto resultante debería ser $Date$ $Revision$.

Posición del cursor. La variable de posición del cursor determina el lugar donde se colocará el cursor después de que se inserte el texto de la plantilla en el editor. Simplemente coloque el carácter [#] donde desee.

loop [#] end loop;

Page 239: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 239

Variables basadas en consultas. Puede utilizar consultas para rellenar las listas de selección de una plantilla. El siguiente ejemplo define la consulta seq_query, que se utilizará después como una lista de sugerencias para la variable Sequence:

[$QUERY seq_query = select lower(object_name) from user_objects where object_type = 'SEQUENCE' order by object_name] select [Sequence=$seq_query,...].nextval into [Variable name] from dual;

La variable Sequence es una lista de selección, porque va seguido de “,…”, permitiendo que el usuario pueda introducir otros valores. Los resultados de la consulta se pueden ver como una lista de valores separados por comas.

Incluir y excluir texto. Puede incluir o excluir texto de una plantilla, dependiendo del valor de otra variable. En el siguiente ejemplo, se añade la palabra where si el usuario introduce una condición de búsqueda:

select [Item list] into [Variable list] from [Table list] [+Search condition=where] [Search condition];

Como resultado, el usuario no tiene que teclear ‘where’ en la condición de búsqueda. Para excluir un texto, utilice –Variable name en vez de +Variable syntax.

Variables de texto. Puede definir variables de texto en una plantilla y referirse a las mismas en otras partes de la misma. Será particularmente útil si quiere incluir de forma condicional largas piezas de texto. El siguiente ejemplo incluye una excepción si el usuario así lo indica:

[$TEXT exception_block= exception when no_data_found then ... when too_many_rows then ... when others then ... end;] select [Item list] from [Table list] into [Variable list] where [Search condition]; [Exception block =/$exception_block]

Iconos de las plantillas. El árbol de directorios de la ventana de plantillas muestra un icono por cada plantilla. La ventana de plantillas buscará el archivo bitmap que tenga el mismo nombre que la plantilla dentro del directorio donde se encuentra situada la plantilla. Para la plantilla Cursor.tpl, mostrará el archivo Cursor.bmp del mismo directorio, si se encuentra presente, si no se encuentra el archivo, buscara un archivo Cursor.bmp en los directorios situados por debajo del directorio actual. Si el archivo bitmap no se encuentra, buscará un archivo default.bmp en el directorio actual y en los subdirectorios por debajo. Los archivos de bitmap que se mostrarán como iconos de las plantillas deben tener un tamaño de 16x16 con 16 colores.

Page 240: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 240

27. Lista de ventanas. La lista de ventanas permite una navegación fácil y directa sobre las múltiples ventanas de la aplicación. Esta característica es especialmente útil si le gusta trabajar con las ventanas maximizadas y mantiene muchas ventanas abiertas al mismo tiempo. Por defecto la lista de ventanas se encuentra anclada bajo el Explorador de objetos y el Explorador de archivos, en la misma área de anclaje que la lista de plantillas. Esta lista sólo es visible si una o más ventanas se encuentran abiertas y muestra el título, el estado y el indicador de conexión de esas ventanas:

Si hace clic en uno de los elementos de la lista activará la ventana correspondiente. Si hace clic con el botón derecho del ratón en un elemento de la lista de ventanas, se mostrará un menú contextual:

Desde el menú contextual usted puede activar, cerrar o cambiar el estado de la ventana (normal o minimizada). Puede cerrar la ventana directamente haciendo clic con el botón izquierdo del ratón mientras mantiene pulsada la tecla de mayúsculas sobre un elemento de la lista. Puede cambiar la conexión de una ventana si la selecciona desde el submenú Cambiar conexión. Además puede renombrar una ventana, Esto puede ser útil en el caso de que cree una nueva ventana y necesite emplear un título más descriptivo en lugar de, por ejemplo, Consulta – Nuevo. El elemento de menú Acortar texto hará que se muestren las descripciones de forma acortada. Por ejemplo, la descripción “Program Window - employee.pck” se acortará a “P - employee.pck”. El elemento de menú Nuevo le permite crear una nueva ventana de programa, de consulta SQL, de prueba, de comandos, de plan de ejecución, de diagrama o de un nuevo objeto de la base de datos. Para ejecutar un determinado tipo de ventana, seleccione el elemento Ejecutar. Para cerrar la lista de ventanas, seleccione el botón Cerrar. Para volver a mostrar la lista de ventanas seleccione el elemento Lista de ventanas del menú Herramientas. Puede guardar la organización de las ventanas para la próxima vez que ejecute PL/SQL Developer. Haga clic en el elemento Guardar organización de las ventanas en el menú Ventana, esto guardará la disposición actual de las ventanas. Esta función se describe con más detalle en el capítulo 32.2.

Page 241: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 241

28. Barras de herramientas. Las siguientes herramientas pueden anclarse o permanecer flotantes en la pantalla: • Explorador de Objetos. • Explorador de Archivos. • Lista de conexiones. • Lista de ventanas. • Lista de plantillas. • Lista de marcadores. • Barra de búsqueda. • Lista de resultados. • Elementos pendientes. • Elementos de proyectos Puede anclar las diferentes herramientas que forman el entorno de desarrollo de PL/SQL Developer, en la parte superior o inferior y al lado derecho o izquierdo del área de trabajo.

Para anclar una herramienta de PL/SQL Developer, simplemente arrástrela a la zona deseada del área de trabajo. Tan pronto como se acerque a un borde del área de trabajo, se mostrará un marco, indicando la posición de anclaje. Si otra herramienta se encuentra anclada en esta posición puede arrastrar la nueva herramienta encima, debajo, a la izquierda o a la derecha o incluso dentro de la otra herramienta. Si arrastra una herramienta dentro de otra, las dos estarán disponibles en la misma posición en distintas pestañas (vea la Lista de ventanas y la Lista de plantillas en la parte inferior izquierda, en la captura de pantalla superior). Observe que solo puede anclar una herramienta en la parte izquierda o derecha solo si el panel no se encuentra dividido verticalmente.

Page 242: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 242

Para hacer una herramienta flotante, arrástrela desde su posición de anclaje a la nueva posición. Una vez anclada una herramienta en el entorno de desarrollo de PL/SQL Developer, podrá ver 3 botones en la parte superior derecha:

Este botón le permite maximizar o restaurar el tamaño de la ventana de la herramienta anclada.

Este botón le permite mantener visible u ocultar la ventana de la herramienta anclada. Cuando el botón se encuentre pulsado la ventana estará siempre visible y las herramientas siempre estarán accesibles. Cuando no se encuentre pulsado, la ventana de la herramienta se ocultará siempre que no tenga el puntero del ratón encima.

Este botón le permite cerrar la herramienta anclada.

Page 243: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 243

29. Autorizaciones. Después de instalar PL/SQL Developer todos los usuarios puede utilizar todas las funciones del programa, dentro de los límites de los privilegios del sistema y de los privilegios sobre objetos que se le hayan asignado al usuario conectado a la base de datos. Por ejemplo, si el usuario no tiene el privilegio de sistema de create user, el usuario de PL/SQL Developer puede iniciar la función de creación de usuarios en PL/SQL Developer, pero recibirá el mensaje de error del servidor “ORA-01031, insufficient privileges”. Puede autorizar todas las funciones relevantes de PL/SQL Developer a usuarios y roles específicos. En una base de datos de desarrollo puede permitir que los desarrolladores tengan acceso a todas las funciones, mientras que en una base de datos de producción normalmente deshabilitará todas las funciones de la mayoría de los usuarios que pueden alterar la base de datos o consumir muchos recursos y afectar de forma considerable al rendimiento del sistema. Autorizando los privilegios de PL/SQL Developer a roles puede personalizar el nivel de autorización para determinados grupos de usuarios. Puede hacer uso de los roles existentes para un grupo de usuarios (como DBA y RESOURCE) o puede crear roles específicos para grupos de usuarios de PL/SQL Developer.

29.1 Habilitar el sistema de autorizaciones. La información sobre los niveles de autorización se guarda en la tabla plsqldev_authorization en el esquema SYS. Mientras esta tabla no esté creada en la base de datos, todos los usuarios pueden acceder a todas las funciones de PL/SQL Developer. Si se encuentra conectado a una base de datos donde la autorización no se ha habilitado y selecciona el elemento Autorización desde el menú Archivo, PL/SQL Developer le realizará la siguiente pregunta:

Si selecciona Sí, se creará una tabla de autorizaciones vacía. Observe que debe conectarse a la base de datos como DBA para poder crear esta tabla. Tan pronto como cree uno o más privilegios en esta tabla se habilitara el sistema de autorizaciones, y solo los usuarios a los que se les hayan asignado privilegios podrán utilizar PL/SQL Developer en esta base de datos. Por defecto sólo el propietario de la tabla (SYS) u otro DBA pueden modificar la tabla o actualizar su contenido. Todos los usuarios deben tener privilegios de selección sobre la tabla.

29.2 Definir autorizaciones.

Page 244: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 244

Para definir el nivel de autorización debe conectarse a la base de datos como DBA e iniciar la función de Autorización desde el menú Archivo. PL/SQL Developer le mostrará el siguiente cuadro de diálogo:

En la parte superior puede ver todos los usuarios y roles a los cuales ha asignado uno o más privilegios del programa PL/SQL Developer. En la parte inferior puede ver los privilegios para el usuario o rol seleccionado. Para añadir un nuevo usuario o rol, presione el botón Nueva autorizado, en la parte derecha de la lista de roles y usuarios. Al hacerlo se mostrará una lista con los usuarios y los roles. Puede seleccionar uno o varios roles (Ctrl.-clic o Shift-clic) y presionar el botón Aceptar para añadirlos a la lista. En este momento los nuevos elementos no tienen ningún privilegio asignado todavía. Para conceder privilegios, seleccione el usuario o rol de la lista y presione el botón Añadir privilegios que se encuentra situado en la parte derecha de la lista de privilegios. PL/SQL Developer le mostrará una lista con todos los privilegios disponibles en la que podrá seleccionar uno o más privilegios. Existen 3 categorías: • Privilegios del sistema – Funciones del sistema de PL/SQL Developer (Ejemplo Logon). • Privilegios sobre objetos – Privilegios específicos de objetos de la base de datos (Ejemplo Drop

Table). • Privilegios de menú – Privilegios para utilizar las funciones de menú de PL/SQL Developer

(Ejemplo Herramientas > Monitor de sesiones). Nota: Si un usuario no tiene el privilegio System.Logon o el privilegio All, no podrá utilizar PL/SQL Developer en la instancia de la base de datos. Puede seleccionar privilegios individuales o seleccionarlos desde un conjunto jerárquico de privilegios. • All – Concede todos los privilegios de PL/SQL Developer. • Objects.All – Concede todos los privilegios de PL/SQL Developer que hacen referencia a objetos

de la base de datos. • Objects.Rename All – Concede todos los privilegios de PL/SQL Developer que hacen referencia

a renombrar objetos de la base de datos (rename table, view, sequence y synonym). • Objects.Rename Table – Concede el privilegio de PL/SQL Developer para renombrar una tabla.

Page 245: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 245

Observe que para los objetos de la base de datos, el usuario o rol deben tener los privilegios de sistema necesarios para realizar la operación. El hecho de autorizar el privilegio Objets.Drop User de PL/SQL Developer requiere tener el privilegio de sistema drop user. Nota: Si un usuario tiene el privilegio de sistema Drop User, todavía puede ejecutar el comando Drop user desde una consulta SQL o un archivo PL/SQL.

29.3 Deshabilitar el sistema de autorizaciones. Para deshabilitar de forma permanente la autorización, puede eliminar la tabla sys.plsqldev_authorization, o borrar todos los registros. Para deshabilitar de forma temporal la autorización puede revocar los privilegios sobre la tabla o bien renombrarla (haciendo que sea invisible para los usuarios de PL/SQL Developer). Para volver a habilitar de nuevo, puede dar privilegios de select sobre la tabla.

Page 246: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 246

30. Sistema de archivos de Oracle. Este sistema le permite almacenar todos sus archivos (código fuente, informes, descripciones, etc.)dentro de la propia base de datos. La ventaja de utilizar este sistema radica en que tanto los objetos de la base de datos y los archivos que interactúan con ella, pueden almacenarse en la misma base de datos, y pueden ser utilizados por todos los usuarios que tengan acceso a esa base de datos. Además, de esta forma, se garantiza que los objetos de la base de datos y los distintos archivos almacenados en la misma son consistentes, pudiéndose realizar copias de seguridad y recuperaciones de los mismos de una forma consistente. Los archivos se pueden abrir y guardar de la forma habitual, mediante el cuadro de dialogo de abrir y guardar con algunas extensiones.

30.1 Organizador OFS. Antes de que se pueda utilizar el sistema OFS desde PL/SQL Developer, el usuario tiene que utilizar el programa de gestión de OFS para definir un directorio de localización con una o más localizaciones OFS. Para cada una de ellas es necesario instalar los objetos OFS de la base de datos.

Crear un directorio de localización OFS . Para iniciar el programa de gestión de OFS, vaya a las Preferencias del programa PL/SQL Developer y seleccione la página de Directorios. Al final de esta página encontrara un botón para ejecutar el programa de gestión de OFS. Después de pulsarlo obtendrá la siguiente pantalla:

Este es un directorio de localización OFS vacío, para el que puede añadir localizaciones, y que puede guardar en un archivo de localización de directorio OFS (.ldf). Este archivo se emplea desde PL/SQL Developer para explorar el directorio y los archivos y conectar a las localizaciones.

Page 247: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 247

Añadir localizaciones OFS. Para añadir una localización OFS, seleccione el botón Añadir localización (+). Ahora puede introducir la siguiente información:

• Nombre – El nombre que se mostrara en el selector de localizaciones. • Base de datos – La base de datos donde se almacenaran los ficheros. • Esquema – El esquema que contendrá los objetos de la base de datos (tablas, paquetes, etc.). Este

usuario necesita el privilegio resource y el privilegio de sistema quert rewrite para crear sus objetos.

• Usuario - El nombre del usuario que se utilizara para acceder al OFS. Si no especifica un nombre de usuario, el usuario que intente acceder al sistema necesitara especificar un nombre de usuario y una contraseña o se utilizará el usuario que se encuentre conectado actualmente con PL/SQL Developer.

• Contraseña – La contraseña del usuario de Oracle que se utilizará para acceder al sistema OFS. Solo es útil si se introducen datos en el campo Usuario.

Después de crear una o mas localizaciones, puede grabarlas si presiona el botón Guardar. Si guarda el archivo en el directorio de instalación de PL/SQL Developer con el nombre OFS.ldf, PL/SQL Developer seleccionara automáticamente este directorio. Sino el usuario de PL/SQL Developer tendrá que indicarle el archivo de localización de directorios OFS en las preferencias del programa.

Instalar los objetos OFS en la base de datos. Después de añadir una localización al directorio, necesita instalar los objetos de la base de datos. Si el esquema de OFS y el usuario (opcional) todavía no existen en la base de datos, necesitara crearlos primero: create user OFS identified by <password>; grant connect, resource, query rewrite to OFS; create user OFS_USER identified by <password>; grant connect to OFS_USER;

Después de esto podrá instalar los objetos OFS de la base de datos presionando el botón Instalar objetos de la base de datos. Después de proporcionar la contraseña del usuario del esquema, se crearan los objetos de la base de datos, y la localización estará preparada para su uso.

Page 248: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 248

30.2 Utilizar OFS. Después de la creación de un directorio de localización OFS, instalar las localizaciones y hacer el directorio disponible para PL/SQL Developer, puede utilizar el elemento Guardar OFS como desde el menú Archivo para guardar el archivo dentro del OFS. Aparecerá el siguiente cuadro de dialogo:

Primero necesita abrir una localización, después de lo cual podrá guarda el archivo o crear un directorio:

Para abrir un archivo desde un sistema OFS, puede utilizar el elemento Abrir OFS desde el menú Archivo o utilizar el menú Reabrir. Los archivos de localización tienen la ruta OFS:\Localización\Ruta (ejemplo: OFS:\Chicago\Programs\Employee.bdy).Un archivo OFS abierto previamente puede guardarse utilizando la función estándar Guardar. Puede utilizar la función Guardar Como para guardar un archivo OFS en el sistema de archivos estándar. La función Guardar como puede utilizarse para guardar un archivo en el sistema con un nombre diferente o en un directorio diferente. Cuando guarde o abra un archivo, puede seleccionar la opción Mantener el archivo bloqueado para bloquearlo. De esta forma otros usuarios no podrán sobrescribir o bloquear un archivo que se encuentra bloqueado. Si hace clic con el botón derecho sobre un archivo del selector de ficheros se muestra el menú contextual con las opciones Copiar, Pegar, Borrar o Renombrar el fichero. Puede ver y cambiar las

Page 249: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 249

propiedades del objeto desde el menú. Las propiedades que puede cambiar incluyen el estado del fichero, el estado de bloqueo y la compresión del fichero. Los archivos solo pueden comprimirse a partir de la versión 10g de Oracle y posterior, ya que utiliza el paquete utl_compress. Dicho paquete solo se encuentra disponible a partir de la versión 10g.

Page 250: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 250

31. Sistema de ayuda. Puede configurar PL/SQL Developer para que se integre con los archivos de ayuda y los manuales distribuidos con el software de Oracle. En este capítulo se describe como puede configurar y utilizar el sistema de ayuda de PL/SQL Developer.

31.1 Archivos de ayuda MS Help. Hasta la versión 7.2 de Oracle los manuales entregados con el programa estaban escritos en formato MS Help. Estos archivos de ayuda pueden ser utilizados para proporcionar ayuda sensible al contexto en el editor, haciendo clic con el botón derecho del ratón sobre una palabra en el editor o seleccionando los elementos SQL Help o PL/SQL Help en el menú de ayuda o también presionando la tecla de función que tengan asignados esos dos elementos de menú. PL/SQL Developer busca los archivos de ayuda en dos directorios:

1. En el directorio de instalación de PL/SQL Developer. 2. En el directorio de instalación de SQL*Plus.

PL/SQL Developer asume que el archivo de ayuda del lenguaje SQL es sqlhelp.hlp y que el archivo de ayuda del lenguaje PL/SQL es plshelp.hlp. Si dichos archivos no se encuentran disponibles, o tiene otros archivos de ayuda que desee utilizar para SQL y PL/SQL, puede colocar esos archivos en el directorio de instalación de PL/SQL Developer y renombrarlos, como se mencionó anteriormente.

31.2 Manuales HTML. A partir de la versión 7.3 de Oracle los manuales en línea se encuentran disponibles en formato HTML y en formato PDF. Puede configurar PL/SQL Developer para utilizar los manuales en formato HTML, haciendo clic con el botón derecho del ratón en el editor, seleccionando el elemento Manuales HTML en el menú Ayuda o presionando la tecla de función F1.Además puede presionar el botón de Ayuda en un mensaje de error en el caso de una excepción de Oracle, lo que le dirigirá automáticamente al párrafo adecuado del manual Oracle Error Messages. Si hace doble clic con el botón izquierdo del ratón en un error de compilación en la ventana de programa también se mostrará esta información. Nota: La documentación de algunas versiones del servidor Oracle tienen archivos HTML que sobrepasan 1 mega bite de tamaño. Cargar estos archivos puede llevar mucho tiempo. Si esto ocurre puede utilizar la documentación en línea del servidor Oracle en la que los capítulos se encuentran divididos en archivos más pequeños. Oracle ha reducido el tamaño de los archivos para la documentación de la versión 8.1.5

Configuración de los manuales HTML. La primera vez que utilice los manuales HTML bajo cualquiera de las formas descritas anteriormente, necesita indicarle a PL/SQL Developer donde se encuentran los archivos HTML.

Page 251: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 251

Seleccione el directorio principal y presione el botón Crear para crear los índices de las palabras reservadas que se encuentran en los manuales. Dichos índices se almacenarán en el subdirectorio Books del directorio de instalación de PL/SQL Developer. El proceso de creación de los índices puede llevar varios minutos. Si no tiene disponible la documentación HTML de Oracle, puede presionar el botón Descargar. Esto le mostrará un archivo local en formato HTML donde puede seleccionar la versión apropiada del servidor Oracle y descargar un archivo comprimido con la documentación en formato HTML. Esta descarga requiere que tenga una cuenta en Oracle Technology Network. Si no dispone de una cuenta OTN, puede crear una gratuitamente. Una vez terminada la construcción de los índices, se le presentará una lista con todos los manuales que se han localizado. Ahora puede seleccionar los libros que desee utilizar para la ayuda sensible al contexto. Por defecto esta selección incluirá los manual Error Messages, SQL Reference y PL/SQL Reference, todos ellos contienen información importante para el desarrollo de código SQL y PL/SQL. El manual Error Messages es necesario, si quiere obtener respuestas rápidas, en caso de que se produzca una excepción o un error de compilación. El manual que se encuentra disponible de la versión 7 de Oracle no está correctamente indexado para permitir esta característica de PL/SQL Developer, el manual distribuido con la versión 8 funciona correctamente si ningún tipo de problema.

Page 252: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 252

Presione el botón Aplicar para hacer efectiva la selección. Después de esto se mostrará la página de búsqueda, de la que encontrará explicación en el siguiente capítulo. Si presiona el botón Instalar puede seleccionar un directorio diferente donde buscar los manuales HTML. Utilización de los manuales HTML. Después de cargar los manuales HTML, puede teclear una palabra reservada que necesite buscar en la pestaña Buscar. Las dos listas muestran las palabras reservadas que se han encontrado y los temas en los manuales en los que aparece dicha palabra reservada:

En el panel de Opciones de búsqueda situado a la derecha de la lista de palabras reservadas, puede definir los criterios de búsqueda. Acto seguido puede hacer doble clic en un elemento de la lista de

Page 253: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 253

temas en la parte inferior de la página de búsqueda para mostrar el correspondiente párrafo del manual HTML.

La pestaña de búsqueda mostrará una página HTML por la que puede navegar mediante vínculos de forma normal. Los botones de la parte superior de la ventana pueden utilizarse para navegar en la página anterior o en la página siguiente que haya visitado antes, para cancelar la carga de la página o para volver a la página inicial antes de la navegación. Puede volver a la pestaña Buscar para buscar diferentes palabras reservadas o ir a la pestaña Books para seleccionar otros libros. Cada nueva búsqueda que realice creará una nueva pestaña de resultados, de esta forma puede tener todos los resultados de la búsqueda disponibles. Para cerrar todas las pestañas, presione el botón Limpiar resultados en la página de búsqueda. Por defecto la ventana de HTML, permanecerá situada por encima de las demás ventanas en el entorno de desarrollo de PL/SQL Developer, así que la información permanecerá siempre visible. Para ocultar temporalmente la ventana, puede utilizar el botón verde que se encuentra en la parte derecha de la ventana.

Page 254: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 254

32. Personalizar PL/SQL Developer. Puede personalizar muchos de las funciones de PL/SQL Developer para que se ajusten a sus necesidades como usuario. Estas funciones, se describen en las siguientes secciones:

32.1 Preferencias. El elemento Preferencias, que se encuentra en el menú Herramientas, le permite establecer las preferencias de PL/SQL Developer. Estas preferencias se describen con más detalle en el capítulo 20.

32.2 Disposición de las ventanas. Existen varios parámetros en la disposición de las ventanas, que puede modificar para adaptarlos a sus necesidades. Seleccione el elemento Guardar organización de las ventanas en el menú Ventana para guardar la configuración. • Tamaño y posición de la ventana principal de la aplicación. • Presencia y tamaño del Explorador de objetos. • Presencia y tamaño del asistente de código en la ventana de programa. • Presencia, estado (anclada o flotante) y posición de la lista de ventanas y de plantillas. • Tamaño de la ventana de programa, la ventana de pruebas, la ventana de consulta SQL, Explain

Plan, la ventana de comandos, la ventana de informes, la ventana de compilación de objetos no validos, la ventana de búsqueda de objetos y la ventana de comparación de objetos.

Cuando guarde la disposición de las ventanas, se guardará el tamaño de la última ventana abierta .Si una ventana de un determinado tipo no se encuentra abierta en el momento de guardar la disposición de las ventanas, la configuración del tamaño de esa ventana permanecerá intacta.

32.3 Documentación en línea. La mayor parte de la documentación ofrecida por Oracle está disponible como documentación en línea. A lo largo del tiempo esta documentación ha tenido distintos formatos, desde archivos de ayuda de Windows en formato MS HELP hasta archivos Oracle Book, pasando por archivos PDF y HTML. Es muy probable que en el futuro, Oracle escoja un nuevo tipo de formato. Por otra parte, también es probable, que tenga en su trabajo estándares corporativos y documentos de proyectos con el formato de un procesador de texto y necesite acceder a ellos en repetidas ocasiones. Todos esos documentos en línea pueden ser integrados dentro del entorno de desarrollo de PL/SQL Developer, incluyéndolos en el menú Documentos. Haciendo que se encuentren disponibles con un simple clic de ratón. Para configurar la documentación en línea seleccione el elemento Configurar documentos… en el menú Herramientas. El siguiente cuadro de diálogo le permitirá definir la configuración de cada uno de los documentos definidos y como visualizarlos:

Page 255: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 255

En la parte de la derecha de la ventana, puede ver cuatro botones, que le permitirán crear un nuevo documento, borrar un documento o variar su ubicación en el menú desplazándolos hacia arriba o abajo según le convenga. Cuando crea o modifica un documento debe proporcionar la siguiente información: La Descripción, es el nombre a mostrar en el menú. Para crear una tecla de acceso directo para el elemento de menú del documento, añádale el carácter “ampersand” (&) delante de la letra que quiera utilizar como acceso directo. Si desea utilizar un “ampersand” (&) en la descripción utilice dos caracteres “ampersand” (&&) en vez de uno. Si emplea un “-“ en la descripción, convertirá el elemento en un separador de menús, permitiéndole organizar la documentación en grupo lógicos. El campo Ejecutable debe contener la ruta completa del programa que desee emplear para ver la documentación. Si el tipo de documento se encuentra registrado por Windows (como por ejemplo un documento HTML o un archivo msHelp), puede introducir la ruta del documento. Los parámetros pueden utilizarse para pasar información al archivo ejecutable si este es un programa. Debería incluir como mínimo la ruta del documento, pero pueden ser empleados para dar información al programa. Si la opción Documentos como elemento de menú se encuentra seleccionada, el menú Documentos aparecerá en el menú principal de la aplicación, si no se encuentra seleccionada, el elemento Documentos aparecerá bajo el menú Herramientas. En el ejemplo anterior, el Manual de Referencia de PL/SQL (P:\O9DOC\A89856_01.pdf), es un tipo de archivo registrado por Windows, con lo que sólo debe introducir la ruta en el campo Ejecutable. La letra “P” se utiliza como acceso directo en el menú. El menú Documentos debería parecerse a la imagen que se muestra a continuación:

Page 256: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 256

Cuando la opción Establecer como botón de la barra de herramientas está seleccionada, el documento se añadirá también a la barra de herramientas. En este caso la Descripción se mostrará como sugerencia cuando pase el ratón por encima del botón de la barra de herramientas. Si deja en blanco la descripción, PL/SQL Developer utilizará la descripción principal del documento (tal como se muestra en el menú). Presione el botón Imagen para seleccionar un archivo bitmap de Windows (*.bmp) como imagen del botón. El tamaño de este archivo debe ser preferiblemente de 20 x 20 píxeles. Observe que PL/SQL Developer siempre cargará la imagen desde su localización original, por lo tanto no debería renombrar o borrar el archivo sin cambiar el documento correspondiente. PL/SQL Developer viene con un conjunto de archivos BMP que puede utilizar. Esos archivos están localizados en el subdirectorio Icons que se encuentra en el directorio de instalación de PL/SQL Developer. Es el directorio por defecto para seleccionar imágenes.

32.4 Parámetros de la línea de comandos. Los parámetros de PL/SQL Developer que se muestran a continuación, pueden utilizarse desde la línea de comandos. El acceso directo por defecto, que se crea durante el proceso de instalación, no incluye ningún tipo de parámetro, simplemente llama al programa plsqldev.exe desde el directorio de instalación de PL/SQL Developer. Puede definir un conjunto de parámetros a través del archivo param.ini, que se encuentra en el directorio de instalación de PL/SQL Developer. Puede editar este archivo con su editor de texto favorito. El archivo param.ini contiene, en su interior, una descripción con la explicación de la utilidad de cada uno de los parámetros. Si define un parámetro en el archivo param.ini y define ese mismo parámetro en la línea de comandos, esta última definición tiene preferencia sobre el archivo de parámetros.

userid Cada vez que inicia PL/SQL Developer aparece automáticamente la ventana de inicio de sesión. Para evitar este comportamiento de la aplicación, puede utilizar el parámetro userid con el formato usuario/contraseña@basededatos. plsqldev.exe userid=scott/tiger@chicago

Observe que también puede utilizar la siguiente entrada en el registro de Windows para proporcionar una conexión por defecto. HKEY_CURRENT_USER\Software\Allround Automations\PL/SQL Developer\Logon En esta entrada puede añadir el usuario, la contraseña y la base de datos. Este último método le permite realizar el inicio de sesión de forma automática cada vez que hace doble-clic sobre un archivo cuya extensión esté registrada por PL/SQL Developer.

nologon El parámetro nologon evita la aparición del cuadro de diálogo de inicio de sesión de PL/SQL Developer. Este parámetro no requiere ningún argumento: plsqldev.exe nologon

oraclehome Puede especificar el nombre del directorio Oracle Home en la línea de comandos, invalidando de esta forma la ruta por defecto y la ruta establecida en las preferencias de PL/SQL Developer. plsqldev.exe oraclehome=ora817

Page 257: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 257

Observe que el nombre de Oracle Home, esté tal y como se encuentra en el registro en ORACLE_HOME_NAME. Este nombre es el utilizado por el selector de Oracle. No

dontadjustpath

es una sección del registro o un nombre de directorio

Con este parámetro PL/SQL Developer no modificará temporalmente la ruta de inicialización de Oracle Net: plsqldev.exe dontadjustpath

nosplash El parámetro nosplash evita que se muestre la ventana de presentación de PL/SQL Developer. Este parámetro no requiere ningún argumento. plsqldev.exe nosplash

noplugins Al especificar este parámetro, está obligando a PL/SQL Developer a omitir la carga de los complementos, que se encuentran dentro del directorio Plugins. plsqldev.exe noplugins

library Especifica la ruta donde se encuentran las librerías de estilo para los informes. plsqldev.exe library=p:\standard.lib

prefpath Especifica la ruta donde se encuentra el archivo de preferencias. plsqldev.exe prefpath=u:\userdata

Puede ver el capítulo 20.34 para más detalles.

defaultprefpath Especifica la ruta por defecto donde se encuentra el archivo de preferencias. plsqldev.exe defaultprefpath=p:\common\plspfref

commandfile Ejecuta el archivo de comandos especificado en la ventana de comandos.

plsqldev.exe userid=scott/tiger commandfile=”u:\sql scripts\demo_build.sql”

Page 258: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 258

Este comando se conectará primeramente a la base de datos y acto seguido ejecutará el archivo demo_build.sql.

viewobject Este parámetro le permite ver la información del objeto de la base de datos especificado. Este parámetro requiere que especifique también el parámetro userid. plsqldev.exe userid=scott/tiger@chicago viewobject=emp

Este comando se conectará primeramente a la base de datos y acto seguido mostrará la información de definición de la tabla EMP. Recuerde que en la especificación del objeto puede incluir también el propietario del mismo (por ejemplo: SCOTT.EMP).

editobject Edita el objeto de la base de datos especificado. Este parámetro requiere que especifique también el parámetro userid. Por ejemplo: plsqldev.exe userid=scott/tiger@chicago editobject=emp

Este comando se conectará primeramente a la base de datos y acto seguido mostrará la información de definición de la tabla EMP. Observe que en la especificación del objeto puede incluir también el propietario del mismo (por ejemplo: SCOTT.EMP)

registry Para utilizar distintas configuraciones en el entorno integrado de desarrollo puede utilizar el parámetro registry. plsqldev.exe registry=home

Este comando provocará que todas las configuraciones de PL/SQL Developer (tamaño de las ventanas, posiciones, historial de archivos, historial de conexiones, etc.) se carguen y se almacenen bajo el nombre home. sesssionmode Le permite definir el modo de sesión que va a utilizar: simple, doble o múltiple. Los valores válidos son SINGLE,DUAL o MULTI. También puede utilizar 1,2 o 3.

plsqldev.exe sessionmode=dual

noscwarning Cuando introduzca este parámetro, PL/SQL Developer no le mostrará ningún tipo de alerta cuando el contrato de su licencia esté a punto de terminar plsqldev.exe noscwarning

hexedit

Page 259: Manual Pl SQL

Guía del usuario de PL/SQL Developer 9.0 259

Le permite abrir en el editor hexadecimal el archivo indicado. plsqldev.exe hexedit=c:\temp\blob.dat

project Abre el proyecto especificado. plsqldev.exe project=u:\userdate\projects\deptemp.prj

noconnectionlist Elimina la lista de conexión al iniciar la aplicación y muestra el viejo cuadro de dialogo de inicio de sesión en su lugar. Por ejemplo: plsqldev.exe noconnectionlist

32.5 SQL, PL/SQL y palabras reservadas y comandos. Las palabras reservadas que se resaltan en el editor de SQL de PL/SQL Developer y en la ventana de comandos, se encuentran definidas en un archivo. Puede encontrar este archivo, denominado default.kwf, en el directorio de instalación de PL/SQL Developer. Este archivo contiene tres secciones: • [PLSQL] - Esta sección contiene las palabras reservadas del lenguaje PL/SQL. • [SQL] - Esta sección contiene las palabras reservadas del lenguaje SQL. • [COMMAND] - Esta sección contiene las palabras reservadas de los comandos. Puede cambiar, añadir o eliminar palabras reservadas simplemente con editar las secciones apropiadas en su editor de texto favorito.

32.6 Complementos. Puede programar sus propios complementos para extender la funcionalidad de PL/SQL Developer. Las funciones de los complementos se pueden agregar a los menús de PL/SQL Developer y pueden realizar cualquier tipo de acción: acceder a la base de datos, el explorador de objetos, el editor, etc.… Un complemento es una biblioteca de vínculos dinámicos (DLL) que expone una interfaz específico de PL/SQL Developer. Para crear un complemento puede utilizar cualquier lenguaje de programación que permita la creación de archivos DLL. Para instalar un plugo-in muévalo al directorio Plumines dentro del directorio principal de PL/SQL Developer, PL/SQL Developer lo detectará automáticamente, haciendo que la distribución de los complementos sea un sencillo proceso. Puede construir complementos para su uso propio o para uso público. En el sitio Web de Allround Automations se encuentran disponibles algunos complementos estándar que pueden resultarle útiles, así como también están disponibles complementos desarrollados por terceras personas. La documentación, así como diferentes ejemplos, se encuentran disponibles en el subdirectorio PluginDoc, en el directorio principal de PL/SQL Developer.