Download - ORACLE SQL DBA Leccion 07 (Español)
7Copyright © Oracle Corporation, 2001. Todos los derechos reservados.
Producción de una Salida Legiblecon iSQL*Plus
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
7- Copyright © Oracle Corporation, 2001. Todos los derechos reservados.
Variables de Sustitución
Deseo consultar distintos valores ... salary = ? …
… department_id = ? … ... last_name = ? ...
Usuario
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
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 ;
7- Copyright © Oracle Corporation, 2001. Todos los derechos reservados.
Uso de la Variable de Sustitución &
12
101
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.
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
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
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
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
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
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 &&
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;
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
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
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]
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]]
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.
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
7- Copyright © Oracle Corporation, 2001. Todos los derechos reservados.
Uso del Comando BREAK
Utilice el comando BREAK para suprimir duplicados.
BREAK ON job_id
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'
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.
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.
7- Copyright © Oracle Corporation, 2001. Todos los derechos reservados.
Informe de Ejemplo
…
7- Copyright © Oracle Corporation, 2001. Todos los derechos reservados.
Informe de Ejemplo
…
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
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