Está en la página 1de 13

SQLTools en 5 etapes

ver. 0.1
Tomasz Drzewiecki - Traducido y adaptado del Ingles por Oswaldo Enriquez
1 de marzo de 2006

Indice
1. Connexion 2
2. Ventana Principal 3
3. Lista de objetos 6
4. Y ahora los ejercicios! 9
4.1. Haga los siguientes ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
4.2. Suggestions (Obviamente que existen varias maneras de encontrar el mismo resultado) . . 10
5. Utilizacion avanzada - Personalizar SQLTools 11
5.1. Y luego ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1
1. Connexion
Empecemos por ejecutar el programa. Veremos la ventana de conexion a la base de datos.
Al lado izquierdo encontramos una lista de las conexiones anteriores de las distintas bases. En pantalla,
la lista esta ordenada por fecha de la ultima utilizacion, sin embargo, es posible ordenarla con respecto a
cualquier otra columna. Un doble-click en una conexion la reestablece.
Para conectarse a una nueva base de datos, provea su ID usuario y contrasena y luego escoja una de
las bases de la lista TNS (Para ser mas preciso - la lista de los SID).
Que hacer si no tenemos un archivo tnsnames.ora correcto, o si no lo tenemos del todo? Se puede
corregir los parametros manualmente! Escoja la opcion Bypass tnsnames.ora e introduzca el nombre del
ordenador (o su direccion IP), la base de datos y el puerto de conexion (habitualmente: 1521).
El boton Test connection es muy util al intentar una conexion. Este ultimo controla la existencia de
una instancia Oracle al igual que la exactitud de los datos de acceso sin embargo, no abre una sesion de
la base.
En caso de conexion con SYSDBA o SYSOPER para efectuar tareas de administracion, seleccionar la
opcion apropiada en la lista Mode.
2
Al conectarse a la base se pueden ver los parametros de conexion y dos botones en la barra de her-
ramientas Estos dos botones nos permiten conectar y desconectar una instancia Oracle, o abrir una sesion
con otro usuario.
2. Ventana Principal
Vemos aqui la ventana principal del programa.
En la ventana de edicion, es posible ejecutar SQL, paquetes, procedimientos y triggers. La ventana
inferior contiene los resultados de la consulta. Hagamos un ejemplo simple. En la ventana superior, escriba
:
SELECT 5+10 FROM DUAL;
Presione la tecla F5. El resultado aparece abajo !
3
Intentemos algo mas complicado:
SELECT * FROM user tables;
Note que cuando se escriba en min uscula, las palabras clave de SQL se transforman automaticamente
en may uscula. El men u Tools Application/Editor Settings Normalize keywords permite escoger esta
opcion. Si la ventana de edicion contiene codigo sin formato, esto se resuelve gracias al comando siguiente
Text Normalize Keyword.
Ejecute la consulta citada anteriormente presionando F5. Dependiendo del contenido de USER TABLES,
el resultado se presentara en diez o mas lineas.
En pantalla, la barra de estatus inferior indica que el programa solo ha producido las primeras 100 lineas
en 0,481s. Las lineas restantes se presentaran si se baja el cursos en los resultados. El n umero de lineas de
resultado inicial se puede modicar en la opcion de men u Tools Session/DDL/Grid Settings Data
Grid Row prefetch.
Escojamos ahora la opcion de men u Session Enable Session Statistics. Ejecute de nuevo la consulta.
Luego, haga un simple click en la segunda pestana Statistics.
4
En esta pestana podemos observar las estadsticas de la ultima consulta. (Normalmente, veriamos las
estadsticas de todo la sesion, sin embargo solo hemos ejecutado una consulta desde que recolectamos las
estadsticas). En esta pantalla, el cursor del raton se encuentra sobre un boton muy util. - Desactivar el
cambio de pestana automatico (Congelar la pestana). Por defecto, la pestana Query se abrira automatica-
mente si ejecutamos otra consulta. Presione F5 para vericar este comportamiento. Luego seleccione otra
vez la pestana Statistics y haga click en el boton. Presione F5 de nuevo. C ual es el resultado ?
Reactive el boton y presione F9. El plan de ejecucion de la consulta se visualiza en la pestana Plan.
En la ventana superior, haga click en cualquier lugar de la palabra USER TABLES. Presione F12.
5
Una ventana que describe la estructura de la tabla o de la vista aparecera. De la misma manera en
esta ventana se pueden visualizar los objetos que dependen de la tabla o vista y la lista de objetos en
que se basa la construccion de esta tabla o vista. Es una manera muy practica y rapida de buscar las
dependencias entre objetos.
3. Lista de objetos
Posicione el cursor dentro de la ventana de edicion y presione Alt+3 . Se abrira el navegador de
objetos.
6
Esta ventana enumera todos los objetos del esquema de la base. Seleccione cualquier tabla (en la pes-
tana Tables), por ejemplo la tabla COUNTRIES del esquema HR. Haga un Click derecho y seleccione
Query.
Hemos creado une nueva ventana de edicion y ejecutado la consulta :
SELECT * FROM hr.countries;
Escoja el mismo objeto en la lista de objetos (Alt+3) y seleccione la opcion Load a partir del men u (o
simplemente haga un doble click en el objeto). La ventana Local DDL Preferences aparece. Seleccione las
opciones como en la imagen y presione OK.
7
Una nueva ventana de edicion aparece, con el script de creacion de la tabla. Esto funciona igualemente
para los demas objetos.
Esto permite crear de nuevo facilmente el objeto. Por ejemplo, cambie algo menor, como la descripcion
de una columna y presione F5. Si no hay errores, las modicaciones se tomaran en cuenta en la base de
datos. La ventana de resultados Output permite visualizar los errores de ejecucion de los scripts con un
icono rojo y los comandos exitosos con un icono azul.
8
Una opicion muy util en la herramienta Object list es la posibilidad de cambiar imediatamente en el
editor varios objetos (como los Paquetes) en un mismo script. Por ejemplo, seleccione varios paquetes y
escoja Load all in one a partir del men u de click derecho.
Una nueva ventana de edicion aparece, con un script que contiene todos los paquetes (packages
bodies) seleccionados. Esta funcionalidad puede ser utilizada, por ejemplo, para buscar un mensaje de
error en todos los paquetes.
4. Y ahora los ejercicios!
Una de las ventajas de SQLTools (independientemente de su precio) es que no esta saturado de asis-
tentes y botones magicos. Aun para proyectos complejos, este entorno valiente, es suciente.
-Suciente cotilleo - pasemos a los ejercicios. Supongamos que estamos en Orcale8i o superior y que
tenemos derechos de creacion y supresion de objetos, asi como derechos a todas las operaciones de los
objetos del esquema.
4.1. Haga los siguientes ejercicios
1. Cree una copia de la tabla USER TABLES, pero solamente con las tres primeras columnas.
9
2. Copie los datos en una nueva tabla, utilizando un INSERT a partir de la tabla USER TABLES.
3. Cree su propio package o paquete con un procedimiento p ublico utilizando el asistente de entrada de
datos (utilise el modelo put+CTRL+SPACE - escriba la palabra put luego <CTRL+SPACE>).
El resultado debe contener los datos extraidos de la nueva tabla.
4. Cree un nuevo procedimiento que llamara un procedimiento de su paquete package.
5. Cree un bloque anonimo :
BEGIN
our created procedure;
END;
6. Ejecute el script presionando F5. Grabe el script.
7. Seleccione el nombre de la tabla en el editor y presione F12. De cuales objetos depende? Cuales
objetos utilizan esta tabla?
8. Cierre todo. Abra de nuevo la lista de objetos presionando (Alt+3). Destruya la nueva tabla con el
boton DROP.
9. Vaya a la pestana Package bodies. Pesione el boton Refresh y observe el lado izquierdo del paquete
package.
10. Vaya a la ventana del editor y cargue el script. Intente ejecutarlo. Porque no ha funcionado?
11. Finalemente, regrese a la lista de objetos y elimine el procedimiento y el paquete. Ha terminado !
4.2. Suggestions (Obviamente que existen varias maneras de encontrar el mis-
mo resultado)
1. CREATE TABLE . . . AS SELECT table name, tablespace name, cluster name FROM user tables
WHERE 1=0;
2. INSERT INTO . . . SELECT . . . ;
3. Abra la lista de objetos, cargue cualquier paquete (especacion + body), elimine todo excepto el
procedimiento y agregue estas tres lineas:
Declaracion de variable(s);
SELECT . . . INTO . . . ;
Dbms Output.Put Line();
10
4,5,6,7. Ejemplo de realizacion.
8,9. El package no valido y los mensajes de error estan indicados en ingles.
5. Utilizacion avanzada - Personalizar SQLTools
Porque tomar tiempo para responder a esta pregunta ? Tenemos opciones en el men u :
Text File Settings & Information
Tools Session / DDL / Grid Settings
Tools Application / Editor Settings
Los accesos directos del teclado se pueden congurar en el archivo Data / custom.keymap.
11
5.1. Y luego ?
17/02/2005 Por el momento, el programa no es modular - Es un gran archivo *.exe. En el futuro,
estamos estudiando la posibilidad de extensiones (plugins), que cada uno podra crear sin conocer el codigo
de fuente principal. SQLTools y OpenEditor (que representa la mayor parte del codigo de SQLTools)
fueron puestos ambos en SourceForge. Esperamos que esto permita acelerar el desaarrollo del programa.
De igual forma esperamos que todas las personas que consulten este documento apoyen a nuestro equipe
de desarrollo aunque sea probando las nuevas versiones para senalar anomalias. Se lo agradeceremos!
12

También podría gustarte