En este apartado nos vamos a centrar en conocer cuáles son las unidades léxicas que podemos utilizar para escribir código en PL/SQL. Al igual que en nuestra lengua podemos distinguir diferentes unidades léxicas como palabras, signos de puntuación, etc. En los lenguajes de programación también existen diferentes unidades léxicas que definen los elementos más pequeños que tienen sentido propio y que al combinarlos de manera adecuada, siguiendo las reglas de sintaxis, dan lugar a sentencias válidas sintácticamente.
PL/SQL es un lenguaje no sensible a las mayúsculas, por lo que será equivalente escribir en mayúsculas o minúsculas, excepto cuando hablemos de literales de tipo cadena o de tipo carácter.
Cada unidad léxica puede estar separada por espacios (debe estar separada por espacios si se trata de 2 identificadores), por saltos de línea o por tabuladores para aumentar la legibilidad del código escrito.
IF A=CLAVE THEN ENCONTRADO:=TRUE;ELSE ENCONTRADO:=FALSE;END IF;
Sería equivalente a escribir la siguiente línea:
if a=clave then encontrado:=true;else encontrado:=false;end if;
Y también sería equivalente a este otro fragmento que es más legible y facilita su comprensión.
IF a = clave THEN
encontrado := TRUE;
ELSE
encontrado := FALSE;
END IF;
Las unidades léxicas se pueden clasificar en:
- Delimitadores.
- Identificadores.
- Literales.
- Comentarios.
Vamos a verlas más detenidamente.
Delimitadores.
PL/SQL tiene un conjunto de símbolos denominados delimitadores utilizados para representar operaciones entre tipos de datos, delimitar comentarios, etc. En la siguiente tabla puedes ver un resumen de los mismos.
Delimitadores Simples. | Delimitadores Compuestos. | ||
---|---|---|---|
Símbolo. | Significado. | Símbolo. | Significado. |
+ | Suma. | ** | Exponenciación. |
% | Indicador de atributo. | <> | Distinto. |
. | Selector. | ¡= | Distinto. |
/ | División. | <= | Menor o igual. |
( | Delimitador de lista. | >= | Mayor o igual. |
) | Delimitador de lista. | .. | Rango. |
: | Variable host. | || | Concatenación. |
, | Separador de elementos. | << | Delimitador de etiquetas. |
* | Producto. | >> | Delimitador de etiquetas. |
" | Delimitador de identificador acotado. | -- | Comentario de una línea. |
= | Igual relacional. | /* | Comentario de varias líneas. |
< | Menor. | */ | Comentario de varias líneas. |
> | Mayor. | := | Asignación. |
@ | Indicador de acceso remoto. | => | Selector de nombre de parámetro. |
; | Terminador de sentencias. | ||
- | Resta/negación. |