En windows ejecutar sqlplusw /nolog, lo cual mostrará la siguiente pantalla:
Se debe setear la instancia con el siguiente comando
SQL> set instance nombre_instancia
donde nombre_instance es el nombre del servicio definido en el archivo tnsname.ora ubicado en $ORACLE_HOME\network\admin\, es importante que si el nombre del servicio esta definido con dominio, este también sea usado. Ejemplo prueba.oracle.com.ve; esto te mostrara la siguiente pantalla:
La imagen muestra la conexión a ORACLE 9I de 64 bit y el ultimo release es 9.2.0.7.0
Para visualizar la instancia seteada deben usar el siguiente comando:
SQL> show instance
Para conectarse deben utilizar el comando connect, en sqlplus es posible solo colocando las primera cuatro letras
SQL> conn nombre_usuario
donde nombre_usuario es un usuario creado en la base de datos con privilegio al menos de connect, de lo contrario arrojara error de privilegio. Al darle enter al comando antes mencionado le solicitará la clave del usuario.
Para ver el usuario con que están conectados deber usar:
SQL> show user
Con set se pueden definir toda una serie de variables de entorno
SET
ARRAYSIZE{20|n} Define el tamaño del Fetch de la BB.DD.
COLSEP{_|text} Define el texto a imprimir entre columnas. Por defecto un espacio en blanco
FEEDBACK{6|N|OFF|ON} Define el número de registros devueltos por una consulta
HEADING{OFF|ON} Define si se pone o no la cabecera de las columnas
LINESIZE{80|n} Define el núnero de carácteres por linea para informes. (El ancho de la página)
LONG{80|n} Define el ancho máximo para visualizar valores LONG
PAGESIZE{24|n} Define el tamaño de la página. (A cada nueva página pone las caveceras)
PAUSE{OFF|ON|text} Permite controlar el desplazamiento entre pantallas. Presionando intro se continua
TERMOUT{OFF|ON} Determina si resutado se muestra en pantalla o no.
Se puede formatear la forma en que SQL*Plus de devuelve los datos.
COLSEP{_|text} Define el texto a imprimir entre columnas. Por defecto un espacio en blanco
FEEDBACK{6|N|OFF|ON} Define el número de registros devueltos por una consulta
HEADING{OFF|ON} Define si se pone o no la cabecera de las columnas
LINESIZE{80|n} Define el núnero de carácteres por linea para informes. (El ancho de la página)
LONG{80|n} Define el ancho máximo para visualizar valores LONG
PAGESIZE{24|n} Define el tamaño de la página. (A cada nueva página pone las caveceras)
PAUSE{OFF|ON|text} Permite controlar el desplazamiento entre pantallas. Presionando intro se continua
TERMOUT{OFF|ON} Determina si resutado se muestra en pantalla o no.
Se puede formatear la forma en que SQL*Plus de devuelve los datos.
COLUMN [opciones] Controla el formato de la columna
TITLE [texto|OFF|ON] Especifica una cabecera al principio de cada página
BTITLE [texto|OFF|ON] Especifica una texto al pie de cada página
BREAK [ON elemento de informe] Suprime la visualización de duplicados
COLUMN
CLEAR Limpia cualquier formato
FORMAT formato Define la visualizacion de una columna
HEADING texto Define la cebecera de la columna
JUSTIFY alineación justifica LA CABECERA de la columna
NOPRINT Oculta la columna
PRINT muestra la columna
TRUNCATE Trunca la cadena de caracteres al final de la primera linea
WRAPPED Continua escribiendo en la linea siguiente
Formatos de columna
An Establece el ancho de columna en número de caracteres n
9 Digitos con supresión de ceros
0 Digitos dejando los ceros
$ Simbolo de dolar $
L Moneda local
. Posicion del punto decimal
, Separador de miles
| Inserta un salto de linea
An Establece el ancho de columna en número de caracteres n
9 Digitos con supresión de ceros
0 Digitos dejando los ceros
$ Simbolo de dolar $
L Moneda local
. Posicion del punto decimal
, Separador de miles
| Inserta un salto de linea
Ejemplo:
COLUMN FIRST_NAME HEADING 'Empleado | Nombre' FORMAT A8
COLUMN SALARY JUSTIFY LEFT FORMAT $99,999.00
COLUMN MANAGER_ID FORMAT 99999999 NULL 'No Format'
select EMPLOYEE_ID, FIRST_NAME, SALARY, MANAGER_ID from EMPLOYEES;
resultado:
Empleado Empleado
Nombre Nombre SALARY MANAGER_ID
---------- -------- ----------- ----------
198 Donald $2,600.00 124
199 Douglas $2,600.00 124
200 Jennifer $4,400.00 101
201 Michael $13,000.00 100
202 Pat $6,000.00 201
203 Susan $6,500.00 101
204 Hermann $10,000.00 101
205 Shelley $12,000.00 101
206 William $8,300.00 205
Otro comando util es SPOOL, permite guardar un archivo en una ruta especificada para luego ser ejecutado. Es importante ampliar la cantidad de lineas si el volumen de datos a escribir es elevado. Ejemplo para guardar la hora de la base de datos en el disco C.
SQL> set pagesize 100
SQL> set line 1000
SQL> set serveroutput on size 10000
SQL> spool c:/hora_bd.txt
SQL> select sysdate from dual;
SQL> resultado de la consulta
SQL> spool off
Es importante utilizar el spool off para cerrar el archivo una vez escrito de lo contrario todo lo que se siga escribiendo en la interfaz se escribirá en el archivo creado. El serveroutput permite ampliar el buffer de sqlplus para una cantidad de lineas especificas.
Otro punto importante es que se puede generar un archivo .sql para luego ser ejecutado desde una ruta especifica. Ejemplo
SQL> @'c:/permisos.sql';
donde permisos.sql puede ser un archivo creado con un spool.
Es posible también realizar el spool y que el resultado sea una hoja de excel, para ello deben usar el siguiente comando antes del spool
SQL> set markup html on
y luego despues del spool off colocar set markup html off, la extensión que se le debe colocar al archivo a crear es .xls.
Ejemplo:
SQL> set feed off
1 set line 1000
2 set pagesize 1000
3 set markup html on
4 spool c:/prueba.xls
5 select username,terminal,maquina from v$session;
6 spool off
7 set markup html off
8 set feed on
No hay comentarios:
Publicar un comentario