Blog

Programación, desarrollo web y SEO

Introducción a SQL Plus | Comandos básicos


El fichero spool almacena los resultados de consultas en un fichero .lst o lo manda a una impresora:

SPOOL fichero ( puedes ponerle el nombre con la extensión que tú quieras). Guarda el resultado al fichero.  

SPOOL OUT  Manda el resultado la impresora.

SPOOL OFF  Cierra el fichero.

EXIT  Si cerramos, se cierran automáticamente los ficheros.

Los archivos de comandos son para los comandos SQL y SQL*Plus. Estos se pueden editar, guardar y ejecutar. Su extensión es sql.

DEFINE_EDITOR: Se indica a SQL PLUS el editor de textos que se va a usar.

define_editor = vi –>Si estás usando Oracle de UNIX

define_editor = notepad –> Si estás usando Oracle para Windows

EDIT (ed): Editar fichero , con lo indicado anteriormente, sino se hace crea un fichero temporal (AFIEDT.BUF)

EXIT: Sale de SQL PLUS

GET: Lleva al buffer el fichero. GET <fichero>

HELP: Muestra la ayuda (si está disponible). Si ponemos help index ( nos dará un índice con la ayuda de la que disponemos.

LIST (l): Sirve para ver último comando metido sin ejecutar.

QUIT: Sale de SQL PLUS

RUN (r ó /):  Ejecuta el último comando metido. (hay que usarlo cuando el comando o select  indicada no acaba en ; )

SAVE: Graba el  fichero. La opción REPLACE sirve para sobreescribir el fichero.

Formato: SAVE <nombre> [REPLACE]  Ejemplo: SAVE C:prueba.txt REPLACE

START (sta) : Ejecuta un fichero de texto con ordenes SQL. Si la extensión del fichero no es .SQL hay que indicarlo.

Formato: START <fichero> <parametros>

CONNECT: para conectarse como otro usuario.

HOST o !: para ejecutar un comando del Sistema Operativo

Estas otras son bastante útiles:

PROMPT: Escribe un  mensaje en pantalla.

ACCEPT: Pide un valor y lo almacena en la variable que se indique.

PAUSE: Se para la ejecución hasta que se da al intro.

prompt Introduzca código

pause

accept codigo prompt ¿Código? ‘

select * from prueba where codigo=’&codigo;

Comandos de edición para la select:

Supongamos que tenemos esta select:

SQL> select distinct(cddni) from prueba;

Si queremos añadir una condición más, ponemos:

SQL> 2  where cdhabil = ‘DEM’;

Y al ejecutar la select veremos que se ha transformado en:

1  select distinct(cddni) from bperret

2  where cdhabil = ‘DEM’

Podemos trabajar y cambiar las líneas con sólo indicar el número de línea que vamos a añadir o cambiar o borrar.

Por ejemplo si ponemos  SQL>  2 where cdhabil = ROS’

1  select distinct(cddni) from prueba

2  where cdhabil = ‘ROS’

Lo mismo ocurrirá si escribimos:

SQL> a  and cdclasnm = ’02′ genera:

1  select distinct(cddni) from prueba

2  where cdhabil = ‘DEM’  and cdclasnm = ’02′

Aquí os dejo unos cuantos comandos para editarla, su versión abreviada entre paréntesis:

append (a) Añade texto al final de la línea:

SQL> a   and and cdclasnm = ’02′ genera:

1  select distinct(cddni) from bperret

2  where cdhabil = ‘DEM’  and cdclasnm = ’02′

change (c)  Cambia una expresión por otra (c/antigua/nuevo)

SQL> c /02/03

3* and cdclasnm = ’03′

Sino ponemos nada en nuevo, nos eliminará esa expresión.

clear buffer (cl buff)  Limpia el buffer

del  Para borrar líneas. Tiene varias opciones:

del   Borra la línea actual

del n Borra la línea número n

del * Borra la línea actual

del n * Borra desde la línea n hasta la actual

del last Borra la última línea

del m n Borra las líneas situadas entre ellas.

del * n Borra la actual línea hasta la línea n.

input (i) Inserta el texto que quieras

list  (l) Muestra las líneas que hay en el buffer. Puede tener las siguientes combinaciones:

list n Muestra la línea n

list * Muestra la línea actual.

list n * Muestra las líneas entre la actual y el final

list last  Muestra la última línea

list  m n  Muestra las líneas entre m y n

 

Variables de usuario

Se pueden definir Variables de usuario con el comando DEFINE

DEFINE Variable = valor

Para borrar una variable se utiliza el comando UNDEFINE

UNDEFINE variable

 

Variables de Sustitución

Las variables de sustitución son un nombre de variable de usuario con el símbolo & delante. Cuando SQL*Plus detecta una variable de sustitución en un comando,  ejecuta el comando tomando el valor de la variable si ya está definida ( ver punto anterior ) o lo solicita por pantalla.

Si sólo quiere que el valor se solicite una vez pon &&nombrevariable.

SQL> define tabla=dual

SQL> select 2 from &tabla;

old   1: select 2 from &tabla

new   1: select 2 from dual

Sino lo hubiéramos asignado nos pondría por pantalla:

Enter value for tabla:

Share this post

1 comment

Join the conversation
  • iDark_L - 7 agosto, 2013 reply

    Hola trabajo en un despacho que tiene una base de datos en SQL. Tengo que hacer informes y me gustaria saber cual es el mejor programa para extraer los datos y poder realizar informes estadisticos en excel. Hasta ahora lo hago con el ms query pero la verdad es muy pobre. ¿algún consejo?

Join the conversation


+ siete = 15