SlideShare una empresa de Scribd logo
1 de 12
2. Escribiendo instrucciones




    El lenguaje PL/SQL
                                                 1




                           Objetivos

• Describir la relevancia de la sección de
  ejecución
• Emplear identificadores correctamente
• Escribir instrucciones en la sección de
  ejecución
• Describir las reglas de los bloques anidados
• Ejecutar y comprobar un bloque PL/SQL
• Empleo de convenciones de código

                                                 2




                                                     1
Sintaxis y guía de uso

• Las instrucciones pueden tener su continuación a
  través de varias líneas de código, no ocurriendo lo
  mismo con las palabras reservadas del lenguaje
• Las unidades léxicas se pueden clasificar como:
   –   Delimitadores
   –   Identificadores
   –   Literales
   –   Comentarios




                                                        3




                            Delimitadores




                                                        4




                                                            2
Identificadores

• Pueden contener hasta 30 caracteres
• Deben comenzar con un carácter alfanumérico
• Pueden contener números, signos de dólar, guión bajo
  y símbolos de número
   – Identificadores válidos: money$$$tree, SN##,
     try_again_
• No pueden contener caracteres tales como guiones,
  barras, y espacios
   – Identificadores no válidos: dots&dashes, debit-
     amount, on/off, user id

                                                             5




                              Identificadores
• No deberían tener el mismo nombre que el de una
  columna de una tabla de la base de datos
   – Si los identificadores de PL/SQL presentes en una
     sentencia SQL tienen el mismo nombre que una columna,
     entonces Oracle asume que es la columna la que está
     siendo referenciada.
• No deberían tener el mismo nombre que las palabras
  reservadas
   – Las palabras reservado no se pueden utilizar como
     identificadores a menos que se encierren entre dobles
     comillas: “SELECT”


                                                             6




                                                                 3
Sintaxis y guía de uso

• Literales
   – Los literales de cadena de caracteres y fecha deben estar
     encerrados entre comillas simples

   – Los números pueden expresarse como valores simples o en
     notación científica (-32.5, 2E5)
• Una barra (/) ejecuta el bloque PL/SQL en un fichero
  guión o en algunos entornos tales como iSQL*PLUS.




                                                                 7




                                 Comentarios

• Los comentarios de única línea se implementan
  usando el doble guión (--)
• Para emplear comentarios de varias líneas, éstas se
  colocan entre /* y */.




                                                                 8




                                                                     4
Funciones SQL en PL/SQL

• Disponibles
  – Funciones numéricas (ABS, STR, TRUNC, MOD, …)
  – Funciones de caracteres (CHR, UPPER, LOWER,
    LENGTH, …)
  – Funciones de conversión de tipos (TO_CHAR, TO_DATE,
    TO_NUMBER)
  – Funciones de fecha (LAST_DAY, NEXT_DAY, …)
  – Funciones de marca de tiempo
  – GREATEST, LEAST
  – Funciones varias


                                                                         9




                         Funciones SQL en PL/SQL

• No Disponibles
  – DECODE
  – Funciones agregadas (AVG, MIN, MAX, COUNT, SUM,
    STDDEV, VARIANCE, …)
     • Las funciones agregadas se aplican a grupos de registros en una
       tabla y por tanto sólo están disponibles como instrucciones SQL
       dentro de un bloque PL/SQL.




                                                                         10




                                                                              5
Funciones SQL en PL/SQL: Ejemplos



• Construcción de la lista de correo para una compañía



   – CHR es una función SQL que convierte un código ASCII
     en su carácter correspondiente; 10 es el código del salto de
     línea
• Convertir el nombre de un empleado a minúsculas




                                                                    11




                         Conversión de tipos de datos


• PL/SQL intenta convertir los tipos de datos de manera
  dinámica si estos se mezclan en una instrucción
• Dentro de una expresión deberíamos asegurarnos de que todos
  los tipos de datos son iguales.
• Funciones de conversión:
   – TO_CHAR
   – TO_DATE
   – TO_NUMBER




                                                                    12




                                                                         6
Conversión de tipos de datos


• Almacenar una cadena de caracteres que representa una fecha
  en una variable declarada como DATE provoca un error de
  sintaxis

• Para corregir el error, hay que emplear la función de
  conversión TO_DATE




                                                                   13




                         Bloques anidados y alcance de variables



• Los bloques PL/SQL se pueden anidar en cualquier
  punto en el que se pueda introducir una instrucción
  ejecutable
• Un bloque anidado se convierte en una instrucción
• La sección de manejo de errores pueden contener
  también bloques anidados
• El alcance de un identificador se define como la
  región de dicha unidad de programación (bloque,
  subprograma, o paquete) en la cual dicho
  identificador puede ser referenciado


                                                                   14




                                                                        7
Bloques anidados y alcance de variables



• Ejemplo:




                                                                 15




                         Alcance de un identificador


• Un identificador es visible en aquellas regiones en las
  que se puede referenciar dicho identificador sin tener
  que cualificarlo:
   – Un bloque puede mirar hacia el bloque que lo engloba
   – Un bloque no puede mirar dentro de los bloques que
     engloba variable




                                                                 16




                                                                      8
Cualificar un identificador


• El cualificador puede ser la etiqueta del bloque que
  engloba a otro bloque
• Se puede cualificar el identificador empleando como
  prefijo la etiqueta del bloque




                                                              17




                      Determinar el alcance de una variable




                                                              18




                                                                   9
Operadores en PL/SQL


•   Lógicos
•   Aritméticos
•   Concatenación
•   Paréntesis

• Operador exponencial (**)




                                                       19




                         Operadores en PL/SQL


• Incrementar un contador en un lazo

• Establecer el valor de una variable booleana

• Validar si un número de empleado contiene un valor




                                                       20




                                                            10
Operadores en PL/SQL


• Las comparaciones que involucran valores nulos
  siempren dan como resultado NULL
• Si se aplica el operador NOT a un nulo el resultado es
  NULL
• En sentencias de control condicional, si la condición
  es NULL, entonces la secuencia de instrucciones
  asociada no se ejecuta




                                                           21




                       Consejos de programación


• Documentar el código con comentarios
• Utilización de mayúsculas (instrucciones SQL,
  palabras clave PL/SQL, tipos de datos) y minúsculas
  (identificadores y parámetros, tablas y columnas de
  las bases de datos)
• Empleo de convenciones de notación para
  identificadores y otros objetos
• Mejora de la lectura mediante el uso del sangrado



                                                           22




                                                                11
Consejos de programación




                           23




                                12

Más contenido relacionado

La actualidad más candente

La actualidad más candente (17)

Unid2 transact sql 1
Unid2  transact sql 1Unid2  transact sql 1
Unid2 transact sql 1
 
Presentacion PL/SQL
Presentacion PL/SQLPresentacion PL/SQL
Presentacion PL/SQL
 
Intro sql y plsql
Intro sql y plsqlIntro sql y plsql
Intro sql y plsql
 
Equivalencias Vb Net Y C
Equivalencias Vb Net Y CEquivalencias Vb Net Y C
Equivalencias Vb Net Y C
 
103305862 t-sql
103305862 t-sql103305862 t-sql
103305862 t-sql
 
Cap I Plsql
Cap I PlsqlCap I Plsql
Cap I Plsql
 
1. introduccion a transact-sql
1.  introduccion a transact-sql1.  introduccion a transact-sql
1. introduccion a transact-sql
 
Pl Sql
Pl SqlPl Sql
Pl Sql
 
Introduccion al java script
Introduccion al java scriptIntroduccion al java script
Introduccion al java script
 
Apunte plsql
Apunte plsqlApunte plsql
Apunte plsql
 
Presentación1
Presentación1Presentación1
Presentación1
 
Examen Sandra U Israel Oracle
Examen Sandra U Israel OracleExamen Sandra U Israel Oracle
Examen Sandra U Israel Oracle
 
Elementos de una variable trabajo grupal computacion
Elementos de una variable trabajo grupal computacionElementos de una variable trabajo grupal computacion
Elementos de una variable trabajo grupal computacion
 
Yungan geovanny 6_s_ti_2
Yungan geovanny 6_s_ti_2Yungan geovanny 6_s_ti_2
Yungan geovanny 6_s_ti_2
 
Diseño Agile
Diseño AgileDiseño Agile
Diseño Agile
 
Curso de pl sql básico
Curso de pl sql básicoCurso de pl sql básico
Curso de pl sql básico
 
PL/SQL
PL/SQLPL/SQL
PL/SQL
 

Similar a 02 instrucciones (20)

PLSQL y paquetes
PLSQL y paquetesPLSQL y paquetes
PLSQL y paquetes
 
Diapositivas transact sql
Diapositivas transact sqlDiapositivas transact sql
Diapositivas transact sql
 
Unidad 1
Unidad 1Unidad 1
Unidad 1
 
Unidad4 sql
Unidad4 sqlUnidad4 sql
Unidad4 sql
 
Act4 screencast-bdatos cmch
Act4 screencast-bdatos cmchAct4 screencast-bdatos cmch
Act4 screencast-bdatos cmch
 
Pricipales bases de datos
Pricipales bases de datosPricipales bases de datos
Pricipales bases de datos
 
Analisis comparativo de base de datos
Analisis comparativo de base de datosAnalisis comparativo de base de datos
Analisis comparativo de base de datos
 
Ansi Sql
Ansi SqlAnsi Sql
Ansi Sql
 
Ansi Sql
Ansi SqlAnsi Sql
Ansi Sql
 
Ansi Sql
Ansi SqlAnsi Sql
Ansi Sql
 
Conceptos basicos de programacion con pl sql
Conceptos basicos de programacion con pl sqlConceptos basicos de programacion con pl sql
Conceptos basicos de programacion con pl sql
 
Clean code
Clean codeClean code
Clean code
 
Ansi Sql
Ansi SqlAnsi Sql
Ansi Sql
 
Estructura Sintactica
Estructura SintacticaEstructura Sintactica
Estructura Sintactica
 
Lenguaje Transact sql
Lenguaje Transact sqlLenguaje Transact sql
Lenguaje Transact sql
 
Tsql
TsqlTsql
Tsql
 
Instrucciones Transact Sql
Instrucciones Transact SqlInstrucciones Transact Sql
Instrucciones Transact Sql
 
Instrucciones Transact S Q L
Instrucciones Transact  S Q LInstrucciones Transact  S Q L
Instrucciones Transact S Q L
 
Historia del sql
Historia del sqlHistoria del sql
Historia del sql
 
Bases de datos
Bases de datosBases de datos
Bases de datos
 

Más de avalver2

Más de avalver2 (7)

Tema 3 0
Tema 3 0Tema 3 0
Tema 3 0
 
Tema 3 3
Tema 3 3Tema 3 3
Tema 3 3
 
Tema 3 2
Tema 3 2Tema 3 2
Tema 3 2
 
Tema 3 0
Tema 3 0Tema 3 0
Tema 3 0
 
Tema 3 1
Tema 3 1Tema 3 1
Tema 3 1
 
Tema 2
Tema 2Tema 2
Tema 2
 
Tema 1
Tema 1Tema 1
Tema 1
 

Último

Factores ecosistemas: interacciones, energia y dinamica
Factores ecosistemas: interacciones, energia y dinamicaFactores ecosistemas: interacciones, energia y dinamica
Factores ecosistemas: interacciones, energia y dinamicaFlor Idalia Espinoza Ortega
 
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Carlos Muñoz
 
Manual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfManual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfMaryRotonda1
 
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADOJosé Luis Palma
 
RETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxRETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxAna Fernandez
 
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptxPRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptxinformacionasapespu
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdfBaker Publishing Company
 
Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoFundación YOD YOD
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMarjorie Burga
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.José Luis Palma
 
Informatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosInformatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosCesarFernandez937857
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PCCesarFernandez937857
 
6° SEM30 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
6° SEM30 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx6° SEM30 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
6° SEM30 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docxCeciliaGuerreroGonza1
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIACarlos Campaña Montenegro
 
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxLINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxdanalikcruz2000
 
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFAROJosé Luis Palma
 

Último (20)

Factores ecosistemas: interacciones, energia y dinamica
Factores ecosistemas: interacciones, energia y dinamicaFactores ecosistemas: interacciones, energia y dinamica
Factores ecosistemas: interacciones, energia y dinamica
 
Sesión de clase: Defendamos la verdad.pdf
Sesión de clase: Defendamos la verdad.pdfSesión de clase: Defendamos la verdad.pdf
Sesión de clase: Defendamos la verdad.pdf
 
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
 
Manual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfManual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdf
 
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
 
RETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxRETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docx
 
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptxPRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf
 
Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativo
 
Power Point: "Defendamos la verdad".pptx
Power Point: "Defendamos la verdad".pptxPower Point: "Defendamos la verdad".pptx
Power Point: "Defendamos la verdad".pptx
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grande
 
La Trampa De La Felicidad. Russ-Harris.pdf
La Trampa De La Felicidad. Russ-Harris.pdfLa Trampa De La Felicidad. Russ-Harris.pdf
La Trampa De La Felicidad. Russ-Harris.pdf
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.
 
Informatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosInformatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos Básicos
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PC
 
Unidad 4 | Teorías de las Comunicación | MCDI
Unidad 4 | Teorías de las Comunicación | MCDIUnidad 4 | Teorías de las Comunicación | MCDI
Unidad 4 | Teorías de las Comunicación | MCDI
 
6° SEM30 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
6° SEM30 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx6° SEM30 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
6° SEM30 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
 
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxLINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
 
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
 

02 instrucciones

  • 1. 2. Escribiendo instrucciones El lenguaje PL/SQL 1 Objetivos • Describir la relevancia de la sección de ejecución • Emplear identificadores correctamente • Escribir instrucciones en la sección de ejecución • Describir las reglas de los bloques anidados • Ejecutar y comprobar un bloque PL/SQL • Empleo de convenciones de código 2 1
  • 2. Sintaxis y guía de uso • Las instrucciones pueden tener su continuación a través de varias líneas de código, no ocurriendo lo mismo con las palabras reservadas del lenguaje • Las unidades léxicas se pueden clasificar como: – Delimitadores – Identificadores – Literales – Comentarios 3 Delimitadores 4 2
  • 3. Identificadores • Pueden contener hasta 30 caracteres • Deben comenzar con un carácter alfanumérico • Pueden contener números, signos de dólar, guión bajo y símbolos de número – Identificadores válidos: money$$$tree, SN##, try_again_ • No pueden contener caracteres tales como guiones, barras, y espacios – Identificadores no válidos: dots&dashes, debit- amount, on/off, user id 5 Identificadores • No deberían tener el mismo nombre que el de una columna de una tabla de la base de datos – Si los identificadores de PL/SQL presentes en una sentencia SQL tienen el mismo nombre que una columna, entonces Oracle asume que es la columna la que está siendo referenciada. • No deberían tener el mismo nombre que las palabras reservadas – Las palabras reservado no se pueden utilizar como identificadores a menos que se encierren entre dobles comillas: “SELECT” 6 3
  • 4. Sintaxis y guía de uso • Literales – Los literales de cadena de caracteres y fecha deben estar encerrados entre comillas simples – Los números pueden expresarse como valores simples o en notación científica (-32.5, 2E5) • Una barra (/) ejecuta el bloque PL/SQL en un fichero guión o en algunos entornos tales como iSQL*PLUS. 7 Comentarios • Los comentarios de única línea se implementan usando el doble guión (--) • Para emplear comentarios de varias líneas, éstas se colocan entre /* y */. 8 4
  • 5. Funciones SQL en PL/SQL • Disponibles – Funciones numéricas (ABS, STR, TRUNC, MOD, …) – Funciones de caracteres (CHR, UPPER, LOWER, LENGTH, …) – Funciones de conversión de tipos (TO_CHAR, TO_DATE, TO_NUMBER) – Funciones de fecha (LAST_DAY, NEXT_DAY, …) – Funciones de marca de tiempo – GREATEST, LEAST – Funciones varias 9 Funciones SQL en PL/SQL • No Disponibles – DECODE – Funciones agregadas (AVG, MIN, MAX, COUNT, SUM, STDDEV, VARIANCE, …) • Las funciones agregadas se aplican a grupos de registros en una tabla y por tanto sólo están disponibles como instrucciones SQL dentro de un bloque PL/SQL. 10 5
  • 6. Funciones SQL en PL/SQL: Ejemplos • Construcción de la lista de correo para una compañía – CHR es una función SQL que convierte un código ASCII en su carácter correspondiente; 10 es el código del salto de línea • Convertir el nombre de un empleado a minúsculas 11 Conversión de tipos de datos • PL/SQL intenta convertir los tipos de datos de manera dinámica si estos se mezclan en una instrucción • Dentro de una expresión deberíamos asegurarnos de que todos los tipos de datos son iguales. • Funciones de conversión: – TO_CHAR – TO_DATE – TO_NUMBER 12 6
  • 7. Conversión de tipos de datos • Almacenar una cadena de caracteres que representa una fecha en una variable declarada como DATE provoca un error de sintaxis • Para corregir el error, hay que emplear la función de conversión TO_DATE 13 Bloques anidados y alcance de variables • Los bloques PL/SQL se pueden anidar en cualquier punto en el que se pueda introducir una instrucción ejecutable • Un bloque anidado se convierte en una instrucción • La sección de manejo de errores pueden contener también bloques anidados • El alcance de un identificador se define como la región de dicha unidad de programación (bloque, subprograma, o paquete) en la cual dicho identificador puede ser referenciado 14 7
  • 8. Bloques anidados y alcance de variables • Ejemplo: 15 Alcance de un identificador • Un identificador es visible en aquellas regiones en las que se puede referenciar dicho identificador sin tener que cualificarlo: – Un bloque puede mirar hacia el bloque que lo engloba – Un bloque no puede mirar dentro de los bloques que engloba variable 16 8
  • 9. Cualificar un identificador • El cualificador puede ser la etiqueta del bloque que engloba a otro bloque • Se puede cualificar el identificador empleando como prefijo la etiqueta del bloque 17 Determinar el alcance de una variable 18 9
  • 10. Operadores en PL/SQL • Lógicos • Aritméticos • Concatenación • Paréntesis • Operador exponencial (**) 19 Operadores en PL/SQL • Incrementar un contador en un lazo • Establecer el valor de una variable booleana • Validar si un número de empleado contiene un valor 20 10
  • 11. Operadores en PL/SQL • Las comparaciones que involucran valores nulos siempren dan como resultado NULL • Si se aplica el operador NOT a un nulo el resultado es NULL • En sentencias de control condicional, si la condición es NULL, entonces la secuencia de instrucciones asociada no se ejecuta 21 Consejos de programación • Documentar el código con comentarios • Utilización de mayúsculas (instrucciones SQL, palabras clave PL/SQL, tipos de datos) y minúsculas (identificadores y parámetros, tablas y columnas de las bases de datos) • Empleo de convenciones de notación para identificadores y otros objetos • Mejora de la lectura mediante el uso del sangrado 22 11