En iSql*Plus es posible definir variables que se pueden utilizar más adelante en el propio programa. Piense en una variable como en una columna de tabla con una sola fila de datos. Al igual que la columna de una tabla, una variable tiene asignada un tipo de dato (númerico o de caracteres) y contiene datos. Lo importante aquí es es recordar que en un archivo de órdenes puede tener una o más consultas SQL.
Comando define:
DEFINE empleado=’KING’
http://liang.armstrong.edu:5560/isqlplus
Confirmación de la variable:
DEFINE empleado
Listar la definición de todas las variables:
DEFINE
Eliminar Variable de Usuario:
Comando Undefine
UNDEFINE empleado
Debe recordar que:
Todas las variables, independientemente del tipo de dato asignado, son datos de tipo carácter.
Las palabras define y undefine se pueden abreviar a def y undefine.
Variable de Sustitución
Muchas veces, cuando se ejecuta una consulta, no se conoce de antemano qué valor quiere utilizar el usuario para el ínforme (o programa), sino que se desea introducir un valor cuando se inicia la realización del ínforme. Las variables de sustitución son variables de usuarios precedidos por los símbolos & o &&.
Ejemplo:
- Defina 2 variables de usuario
DEFINE columna=job
DEFINE tabla=emp
Ejemplo:
Select &columna, sal From &tabla
Order By &columna;
En Oracle 10g se presenta las línea old y new cuando sustituye los valores de las variables.
Se puede suprimir esta presentanción con la orden iSql*Plus Set Verify Off ó ( Set Ver Off).
Las variables pueden en cualquier parte de un comando SQL o iSql*Plus excepto como primera palabra del comando.
Cuando se define una variable con convenio &&, en este caso se evita que Oracle pida multiples veces el valor de una variable (Oracle implícitamente define la variable).
Para dar un valor diferente a la variable definida con &&, hay que eliminar (undefine) la variable.
No hay comentarios:
Publicar un comentario