0% encontró este documento útil (0 votos)
52 vistas

PLSQL 2 2

seccion 2.2

Cargado por

Nadia Fino
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
52 vistas

PLSQL 2 2

seccion 2.2

Cargado por

Nadia Fino
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 25

Programación de bases de datos con PL /

SQL
2-2
Reconociendo PL / SQL Lexical Uni

Copyright © 2020, Oracle y / o sus afiliados. Reservados todos los derechos.


Objetivos
•Esta lección cubre los siguientes objetivos:
-Enumere y defina los diferentes tipos de unidades léxicas disponibles en PL / SQL
-Describir identificadores e identificar identificadores válidos e inválidos en PL / SQL
-Describir e identificar palabras reservadas, delimitadores, literales y
comentarios en PL / SQL

PLSQL 2-2 Copyright © 2020, Oracle y / o sus afiliados. Reservados todos los derechos. 3
Reconocimiento de unidades léxicas PL /SQL
Propósito

•Un idioma hablado tiene diferentes partes del habla.


•Cada parte del discurso (como un adjetivo, sustantivo y verbo) se usa
de manera diferente y debe seguir reglas
•De manera similar, un lenguaje de programación tiene diferentes partes del
habla que se usan de manera diferente y deben seguir reglas.

•Estas partes del discurso se denominan unidades léxicas.

PLSQL 2-2 Copyright © 2020, Oracle y / o sus afiliados. Reservados todos los derechos. 4
Reconocimiento de unidades léxicas PL /SQL
Unidades léxicas en un bloque PL / SQL

•Unidades léxicas:
-¿Son los componentes básicos de cualquier bloque PL / SQL?

-Son secuencias de caracteres que incluyen letras, dígitos, tabulaciones,


devoluciones y símbolos

•Puede clasificarse como:


-Identificadores

-Palabras reservadas
-Delimitadores
-Literales
-Comentarios

PLSQL 2-2 Copyright © 2020, Oracle y / o sus afiliados. Reservados todos los derechos. 5
Reconocimiento de unidades léxicas PL /SQL
Identificadores

•Un identificador es el nombre dado a un objeto PL / SQL,


incluyendo cualquiera de los siguientes:

Procedimiento Función Variable

Exception Constant Package

Record PL / SQL table Cursor

•No se preocupe si no sabe lo que todos los


los objetos de arriba son

•Aprenderá sobre los objetos PL / SQL a lo largo de este curso.

PLSQL 2-2 Copyright © 2020, Oracle y / o sus afiliados. Reservados todos los derechos. 6
Reconocimiento de unidades léxicas PL /SQL
Identificadores resaltados
•Varios identificadores están resaltados en el código PL / SQL que se muestra a
continuación

CREATE PROCEDURE print_date IS

v_date VARCHAR2(30);

BEGIN
SELECT TO_CHAR(SYSDATE,'Mon DD, YYYY’)
INTO v_date
FROM DUAL;
DBMS_OUTPUT.PUT_LINE(v_date);
END;

•Clave: Funciones de Procedimientos de Paquetes de Variables

PLSQL 2-2 Copyright © 2020, Oracle y / o sus afiliados. Reservados todos los derechos. 7
Reconocimiento de unidades léxicas PL /SQL
Propiedades del identificador

•Identificadores:
-Máximo 30 caracteres de longitud
-Debe comenzar con una letra
-Puede incluir $ (signo de dólar), _ (guión bajo) o #
(hashtag)
-No puede contener espacios

- Los identificadores NO distinguen entre mayúsculas y minúsculas

•Asegúrese de nombrar sus objetos con cuidado


•Idealmente, el nombre del identificador debe describir el objeto y su
propósito.
•Evite el uso de nombres de identificadores como A, X, Y1, temp, etc.,
porque hacen que su código sea más difícil de leer.

PLSQL 2-2 Copyright © 2020, Oracle y / o sus afiliados. Reservados todos los derechos. 8
Reconocimiento de unidades léxicas PL /SQL
Identificadores válidos e inválidos

•Ejemplos de identificadores válidos:


Primer nombre Apellido Dirección 1

ID# Total_ $ contacto_departamento_primario

•Ejemplos de identificadores no válidos:


Primer nombre Contiene un espacio

Last-Name Contiene un símbolo no válido "-"

1st_address_line Empieza con un número

Total_% Contiene un símbolo no válido "%"

Primary_building_department_contact Más de 30 caracteres

PLSQL 2-2 Copyright © 2020, Oracle y / o sus afiliados. Reservados todos los derechos. 9
Reconocimiento de unidades léxicas PL /SQL
Palabras reservadas

•Las palabras reservadas son palabras que tienen un significado especial para la
base de datos de Oracle.

•Las palabras reservadas no se pueden utilizar como identificadores en un programa


PL / SQL

PLSQL 2-2 Copyright © 2020, Oracle y / o sus afiliados. Reservados todos los derechos. 10
Reconocimiento de unidades léxicas PL /SQL
Lista parcial de palabras reservadas

•La siguiente es una lista parcial de palabras reservadas

•Nota: Para obtener más información, consulte la "Guía y


referencia del usuario de PL / SQL".

PLSQL 2-2 Copyright © 2020, Oracle y / o sus afiliados. Reservados todos los derechos. 11
Reconocimiento de unidades léxicas PL /SQL
Uso de palabras reservadas

•¿Qué sucede cuando intentas usar una palabra reservada como


un identificador en un programa PL / SQL?

DECLARE
date DATE;
BEGIN
SELECT ADD_MONTHS(SYSDATE,3) INTO date
FROM dual;
END;
ORA-06550: line 4, column 37:
PL/SQL: ORA-00936: missing expression
ORA-06550: line 4, column 3:
PL/SQL: SQL Statement ignored
2. date DATE;
3. BEGIN
4. SELECT ADD_MONTHS(SYSDATE,3) INTO date
5. FROM DUAL;
6. END;

PLSQL 2-2 Copyright © 2020, Oracle y / o sus afiliados. Reservados todos los derechos. 12
Reconocimiento de unidades léxicas PL /SQL
Delimitadores

•Los delimitadores son símbolos que tienen un significado especial


•Los delimitadores simples constan de un carácter

Símbolo Significado

+ operador de adición
- operador de resta / negación

* operador de multiplicación

/ operador de división
= operador de igualdad

' terminador de sentencia delimitador

; de cadena de caracteres

PLSQL 2-2 Copyright © 2020, Oracle y / o sus afiliados. Reservados todos los derechos. 13
Reconocimiento de unidades léxicas PL /SQL
Delimitadores

•Los delimitadores compuestos constan de dos caracteres

Símbolo Significado

<> operador de desigualdad


!= operador de desigualdad
|| operador de concatenación
-- indicador de comentario de una sola
/* línea delimitador de comentario inicial
*/ delimitador de comentario final
** exponente
:= operador de asignación

PLSQL 2-2 Copyright © 2020, Oracle y / o sus afiliados. Reservados todos los derechos. 14
Reconocimiento de unidades léxicas PL /SQL
Literales

•Un literal es un número explícito, una cadena de caracteres, una fecha o una
Valor booleano que podría almacenarse en una variable.

•Los literales se clasifican como:


-Carácter (también conocido como literales de cadena)
-Numérico
-Booleano

PLSQL 2-2 Copyright © 2020, Oracle y / o sus afiliados. Reservados todos los derechos. 15
Reconocimiento de unidades léxicas PL /SQL
Literales de caracteres

•Puede incluir cualquier carácter imprimible en el juego de


caracteres PL / SQL: letras, números, espacios y símbolos

•Normalmente se define mediante el tipo de datos VARCHAR2


•Debe estar entre delimitadores de cadena de caracteres (')
•Puede estar compuesto por cero o más caracteres
•Son sensibles a mayúsculas y minúsculas; por lo tanto, PL / SQL NO es equivalente a pl / sql

PLSQL 2-2 Copyright © 2020, Oracle y / o sus afiliados. Reservados todos los derechos. dieciséis

Reconocimiento de unidades léxicas PL /SQL


Literales de caracteres

•Los siguientes son ejemplos de caracteres literales


asignados a variables
•Los literales son los caracteres entre las comillas simples (los
delimitadores de cadenas de caracteres) y se muestran
aquí en texto rojo para enfatizar

DECLARE
v_firstname VARCHAR2(30) := 'John’;
v_classroom VARCHAR2(4) := '12C’;
v_course_id VARCHAR2(8 := 'CS 101’;
BEGIN
….

PLSQL 2-2 Copyright © 2020, Oracle y / o sus afiliados. Reservados todos los derechos. 17
Reconocimiento de unidades léxicas PL /SQL
Literales numéricos

•Los literales que representan números son literales numéricos


•Los literales numéricos pueden ser un valor simple (por
ejemplo, 5, -32.5, 127634, 3.141592)

•También se puede utilizar notación científica


(ej. 2E5, que significa 2 * (10 elevado a 5)
•Normalmente se define mediante el tipo de datos NUMBER

PLSQL 2-2 Copyright © 2020, Oracle y / o sus afiliados. Reservados todos los derechos. 18
Reconocimiento de unidades léxicas PL /SQL
Literales numéricos

•Los siguientes son ejemplos de literales numéricos que se


asignan a variables (y una constante)
•Los literales se muestran aquí en texto rojo para enfatizar

DECLARE
v_classroom NUMBER(3) := 327;
v_grade NUMBER(3) := 95;
v_price NUMBER(5) := 150;
v_salary NUMBER(8) := 2E5;
c_pi CONSTANT NUMBER(7,6) := 3.141592;
BEGIN
…..

PLSQL 2-2 Copyright © 2020, Oracle y / o sus afiliados. Reservados todos los derechos. 19
Reconocimiento de unidades léxicas PL /SQL
Literales booleanos
•Los valores que se asignan a las variables booleanas son literales
booleanos
•VERDADERO, FALSO y NULO son los literales booleanos

DECLARE
v_new_customer BOOLEAN := FALSE;
v_fee_paid BOOLEAN := TRUE;
v_diploma BOOLEAN := NULL;
BEGIN

•Tenga en cuenta que no se requieren delimitadores de cadenas de caracteres

PLSQL 2-2 Copyright © 2020, Oracle y / o sus afiliados. Reservados todos los derechos. 20
Reconocimiento de unidades léxicas PL /SQL
Comentarios
•Los comentarios explican lo que intenta lograr un fragmento de código
•Los comentarios bien ubicados son extremadamente valiosos para el código
legibilidad y mantenimiento futuro del código
•Los comentarios deben describir el propósito y el uso de cada
bloque de código

•Es una buena práctica de programación comentar el código


•Los comentarios son ignorados por PL / SQL
•No hacen ninguna diferencia en cómo se ejecuta un bloque PL / SQL o en
los resultados que muestra.

PLSQL 2-2 Copyright © 2020, Oracle y / o sus afiliados. Reservados todos los derechos. 21
Reconocimiento de unidades léxicas PL /SQL
Sintaxis para comentar código
•Dos formas de indicar comentarios en PL / SQL
•Al comentar una sola línea, use dos guiones (-)
•Al comentar varias líneas, comience el comentario
con / * y terminar el comentario con * /
DECLARE
-- converts monthly salary to annual salary
v_montly_sal NUMBER(9,2);
v_annual_sal NUMBER(9,2);
BEGIN -- begin executable section

/* Compute the annual salary based on the
monthly salary input from the user */
v_annual_sal := v_monthly_sal * 12;
END; -- end block

PLSQL 2-2 Copyright © 2020, Oracle y / o sus afiliados. Reservados todos los derechos. 22
Reconocimiento de unidades léxicas PL /SQL
Terminología
•Los términos clave utilizados en esta lección incluyen:
-Unidades léxicas

-Identificadores
-Palabras reservadas
-Delimitadores
-Literales
-Comentarios

PLSQL 2-2 Copyright © 2020, Oracle y / o sus afiliados. Reservados todos los derechos. 23
Reconocimiento de unidades léxicas PL /SQL
Resumen
•En esta lección, debería haber aprendido a:
-Enumere y defina los diferentes tipos de unidades léxicas disponibles en PL / SQL
-Describir identificadores e identificar identificadores válidos e inválidos en PL / SQL
-Describir e identificar palabras reservadas, delimitadores, literales y
comentarios en PL / SQL

PLSQL 2-2 Copyright © 2020, Oracle y / o sus afiliados. Reservados todos los derechos. 24
Reconocimiento de unidades léxicas PL /SQL

También podría gustarte