oracle sql dba leccion 07 (español)

28
7 Copyright © Oracle Corporation, 2001. Todos los derechos reservados. Producción de una Salida Legible con iSQL*Plus

Upload: diego

Post on 12-Jun-2015

2.627 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: ORACLE SQL DBA Leccion 07 (Español)

7Copyright © Oracle Corporation, 2001. Todos los derechos reservados.

Producción de una Salida Legiblecon iSQL*Plus

Page 2: ORACLE SQL DBA Leccion 07 (Español)

7- Copyright © Oracle Corporation, 2001. Todos los derechos reservados.

Objetivos

Al finalizar esta lección, debería estar capacitado para:• Producir consultas que requieran una variable de

sustitución • Personalizar el entorno iSQL*Plus • Producir una salida más legible • Crear y ejecutar archivos de comandos

Page 3: ORACLE SQL DBA Leccion 07 (Español)

7- Copyright © Oracle Corporation, 2001. Todos los derechos reservados.

Variables de Sustitución

Deseo consultar distintos valores ... salary = ? …

… department_id = ? … ... last_name = ? ...

Usuario

Page 4: ORACLE SQL DBA Leccion 07 (Español)

7- Copyright © Oracle Corporation, 2001. Todos los derechos reservados.

Variables de Sustitución

Utilice las variables de sustitución iSQL*Plus para:• Almacenamiento temporal de valores

– Ampersand sencillo (&) – Ampersand doble (&&)– Comando DEFINE

• Transferencia de valores de variables entre sentencias SQL

• Modificación dinámica de cabeceras y pies de página

Page 5: ORACLE SQL DBA Leccion 07 (Español)

7- Copyright © Oracle Corporation, 2001. Todos los derechos reservados.

Uso de la Variable de Sustitución &

Utilice una variable con un prefijo ampersand (&) para solicitar un valor al usuario.

SELECT employee_id, last_name, salary, department_idFROM employeesWHERE employee_id = &employee_num ;

Page 6: ORACLE SQL DBA Leccion 07 (Español)

7- Copyright © Oracle Corporation, 2001. Todos los derechos reservados.

Uso de la Variable de Sustitución &

12

101

Page 7: ORACLE SQL DBA Leccion 07 (Español)

7- Copyright © Oracle Corporation, 2001. Todos los derechos reservados.

SELECT last_name, department_id, salary*12FROM employeesWHERE job_id = '&job_title' ;

Valores de Caracteres y de Fecha con Variables de Sustitución

Utilice comillas simples para valores de fecha y de caracteres.

Page 8: ORACLE SQL DBA Leccion 07 (Español)

7- Copyright © Oracle Corporation, 2001. Todos los derechos reservados.

Especificación de Nombres de Columna, Expresiones y Texto

Utilice variables de sustitución como suplemento para:• Condiciones WHERE

• Cláusulas ORDER BY • Expresiones de columna • Nombres de tabla • Sentencias SELECT completas

Page 9: ORACLE SQL DBA Leccion 07 (Español)

7- Copyright © Oracle Corporation, 2001. Todos los derechos reservados.

SELECT employee_id, last_name, job_id, &column_nameFROM employeesWHERE &conditionORDER BY &order_column ;

Especificación de Nombres de Columna, Expresiones y Texto

Page 10: ORACLE SQL DBA Leccion 07 (Español)

7- Copyright © Oracle Corporation, 2001. Todos los derechos reservados.

Definición de Variables de Sustitución

• Puede predefinir variables mediante el comando DEFINE de iSQL*Plus. DEFINE variable = value crea una variable de

usuario con el tipo de dato CHAR.• Si tiene que predefinir una variable que incluya

espacios, debe escribir el valor entre comillas simples al utilizar el comando DEFINE.

• Una variable definida está disponible para la sesión

Page 11: ORACLE SQL DBA Leccion 07 (Español)

7- Copyright © Oracle Corporation, 2001. Todos los derechos reservados.

Comandos DEFINE y UNDEFINE

• Una variable permanece definida hasta que:– Utiliza el comando UNDEFINE para borrarla; o – Sale de iSQL*Plus.

• Puede verificar los cambios con el comando DEFINE.

DEFINE job_title = IT_PROGDEFINE job_titleDEFINE JOB_TITLE = "IT_PROG" (CHAR)

UNDEFINE job_titleDEFINE job_titleSP2-0135: symbol job_title is UNDEFINED

Page 12: ORACLE SQL DBA Leccion 07 (Español)

7- Copyright © Oracle Corporation, 2001. Todos los derechos reservados.

SELECT employee_id, last_name, salary, department_idFROM employeesWHERE employee_id = &employee_num ;

Uso del Comando DEFINE con la Variable de Sustitución &

• Cree la variable de sustitución mediante el comando DEFINE.

• Utilice una variable con un prefijo ampersand (&) para sustituir el valor en la sentencia SQL.

DEFINE employee_num = 200

Page 13: ORACLE SQL DBA Leccion 07 (Español)

7- Copyright © Oracle Corporation, 2001. Todos los derechos reservados.

SELECT employee_id, last_name, job_id, &&column_nameFROM employeesORDER BY &column_name;

Utilice el ampersand doble (&&) si desea reutilizar el valor de la variable sin preguntar al usuario cada vez.

Uso de la Variable de Sustitución &&

Page 14: ORACLE SQL DBA Leccion 07 (Español)

7- Copyright © Oracle Corporation, 2001. Todos los derechos reservados.

old 3: WHERE employee_id = &employee_numnew 3: WHERE employee_id = 200

Uso del Comando VERIFY

Utilice el comando VERIFY para conmutar la visualizaciónde la variable de sustitución, antes y después de queiSQL*Plus sustituya las variables de sustitución con valores.

SET VERIFY ONSELECT employee_id, last_name, salary, department_idFROM employeesWHERE employee_id = &employee_num;

Page 15: ORACLE SQL DBA Leccion 07 (Español)

7- Copyright © Oracle Corporation, 2001. Todos los derechos reservados.

Personalización del Entorno iSQL*Plus

• Utilice los comandos SET para controlar la sesión actual.

• Verifique lo que ha definido mediante el comando SHOW.

SET ECHO ON

SHOW ECHOecho ON

SET system_variable value

Page 16: ORACLE SQL DBA Leccion 07 (Español)

7- Copyright © Oracle Corporation, 2001. Todos los derechos reservados.

Variables de Comando SET

• ARRAYSIZE {20 | n}

• FEEDBACK {6 | n |OFF | ON}

• HEADING {OFF | ON}

• LONG {80 | n}| ON | text}

SET HEADING OFF

SHOW HEADINGHEADING OFF

Page 17: ORACLE SQL DBA Leccion 07 (Español)

7- Copyright © Oracle Corporation, 2001. Todos los derechos reservados.

Comandos de Formato iSQL*Plus

• COLUMN [column option]• TTITLE [text | OFF | ON]• BTITLE [text | OFF | ON]• BREAK [ON report_element]

Page 18: ORACLE SQL DBA Leccion 07 (Español)

7- Copyright © Oracle Corporation, 2001. Todos los derechos reservados.

El Comando COLUMN

Controla la visualización de una columna:

• CLE[AR]: Borra los formatos de columna.• HEA[DING] text: Define la cabecera de columna.

• FOR[MAT] format: Cambia la visualización de la columna mediante un modelo de formato.

• NOPRINT | PRINT

• NULL

COL[UMN] [{column|alias} [option]]

Page 19: ORACLE SQL DBA Leccion 07 (Español)

7- Copyright © Oracle Corporation, 2001. Todos los derechos reservados.

Uso del Comando COLUMN

• Cree cabeceras de columna.

COLUMN last_name HEADING 'Employee|Name' COLUMN salary JUSTIFY LEFT FORMAT $99,990.00COLUMN manager FORMAT 999999999 NULL 'No manager'

COLUMN last_name

COLUMN last_name CLEAR

• Muestre la definición actual de la columna LAST_NAME.

• Borre los valores de la columna LAST_NAME.

Page 20: ORACLE SQL DBA Leccion 07 (Español)

7- Copyright © Oracle Corporation, 2001. Todos los derechos reservados.

Modelos de Formato COLUMN

Resultado

1234

001234

$1234

L1234

1234.00

1,234

Ejemplo

999999

099999

$9999

L9999

9999.99

9,999

Elemento

9

0

$

L

.

,

Descripción

Dígito de supresión de ceros único

Fuerza ceros a la izquierda

Signo de dólar flotante

Divisa local

Posición de la coma decimal

Separador de miles

Page 21: ORACLE SQL DBA Leccion 07 (Español)

7- Copyright © Oracle Corporation, 2001. Todos los derechos reservados.

Uso del Comando BREAK

Utilice el comando BREAK para suprimir duplicados.

BREAK ON job_id

Page 22: ORACLE SQL DBA Leccion 07 (Español)

7- Copyright © Oracle Corporation, 2001. Todos los derechos reservados.

Uso de los Comandos TTITLE y BTITLE

• Muestre cabeceras y pies de página.

• Defina la cabecera del informe.

• Defina el pie de página del informe.

TTI[TLE] [text|OFF|ON]

TTITLE 'Salary|Report'

BTITLE 'Confidential'

Page 23: ORACLE SQL DBA Leccion 07 (Español)

7- Copyright © Oracle Corporation, 2001. Todos los derechos reservados.

Creación de un Archivo de Comandos para Ejecutar un Informe

1. Cree y pruebe la sentencia SQL SELECT.2. Guarde la sentencia SELECT en un archivo de

comandos.3. Cargue el archivo de comandos en un editor.4. Agregue comandos de formato delante de la sentencia

SELECT.5. Verifique que el carácter de terminación siga a la

sentencia SELECT.

Page 24: ORACLE SQL DBA Leccion 07 (Español)

7- Copyright © Oracle Corporation, 2001. Todos los derechos reservados.

Creación de un Archivo de Comandos para Ejecutar un Informe

6. Borre los comandos de formato detrás de la sentencia SELECT.

7. Guarde el archivo de comandos.8. Cargue el archivo de comandos en la ventana de

texto iSQL*Plus y haga clic en el botón Execute.

Page 25: ORACLE SQL DBA Leccion 07 (Español)

7- Copyright © Oracle Corporation, 2001. Todos los derechos reservados.

Informe de Ejemplo

Page 26: ORACLE SQL DBA Leccion 07 (Español)

7- Copyright © Oracle Corporation, 2001. Todos los derechos reservados.

Informe de Ejemplo

Page 27: ORACLE SQL DBA Leccion 07 (Español)

7- Copyright © Oracle Corporation, 2001. Todos los derechos reservados.

Resumen

En esta lección, debería haber aprendido a: • Utilizar variables de sustitución iSQL*Plus para

almacenar valores temporalmente • Utilizar comandos SET para controlar el entorno

iSQL*Plus actual • Utilizar el comando COLUMN para controlar la

visualización de una columna • Utilizar el comando BREAK para suprimir duplicados y

dividir filas en secciones • Utilizar los comandos TTITLE y BTITLE para mostrar

cabeceras y pies de página

Page 28: ORACLE SQL DBA Leccion 07 (Español)

7- Copyright © Oracle Corporation, 2001. Todos los derechos reservados.

Visión General de la Práctica 7

Esta práctica cubre los siguientes temas:• Creación de una consulta que muestre valores

mediante variables de sustitución • Inicio de un archivo de comandos que contiene

variables