Una guía completa sobre el procedimiento y la función en PL SQL

Publicado: 2023-01-30
Una guía completa sobre el procedimiento y la función en PL SQL

Los lenguajes de programación son un sistema para escribir programas de computadora. Si bien muchos lenguajes de programación se basan en texto, otros también pueden ser gráficos. Estos lenguajes ayudan a los programadores a comunicarse con la computadora. El lenguaje de consulta estructurado (SQL) es uno de esos lenguajes de programación que ayuda a almacenar, manipular y recuperar datos almacenados en una base de datos relacional. En la guía de hoy, compartiremos detalles sobre la ejecución de los bloques de nombres (procedimientos y funciones) que son subprogramas para PL SQL. Entonces, si ha estado buscando una guía completa sobre el procedimiento y la función en PL SQL, ha llegado a la página correcta. En este documento, además de cubrir el tema del procedimiento almacenado PL SQL, también aprenderá sobre el ejemplo del procedimiento PL SQL. Sin mencionar el procedimiento de llamada de PL SQL, el procedimiento de salida de PL SQL y el ejemplo de función de PL SQL que son igualmente importantes para aprender si es un programador en ciernes. Entonces, comencemos con nuestra guía completa sobre PL SQL.

Una guía completa sobre el procedimiento y la función en PL SQL

Contenido

  • Una guía completa sobre el procedimiento y la función en PL SQL
  • ¿Qué es PL SQL?
  • ¿Qué es el procedimiento y la función en PL SQL?
  • ¿Cómo crear un procedimiento almacenado y una función en PL SQL?
  • Ventajas del procedimiento almacenado y la función en PL SQL
  • Sintaxis para crear un procedimiento almacenado
  • Ejemplo de procedimiento SQL PL
  • Sintaxis para crear funciones en PL SQL
  • Ejemplo de función SQL PL
  • ¿Qué es el procedimiento de salida de PL SQL?
  • Diferencia entre procedimiento almacenado y de función

Una guía completa sobre el procedimiento y la función en PL SQL

Aquí, hemos mostrado los procedimientos y funciones de PL SQL con ejemplos en detalle.

¿Qué es PL SQL?

  • PL SQL es una forma abreviada de extensiones de lenguaje de procedimiento para SQL .
  • PL SQL es un lenguaje estructurado en bloques para programadores que les ayuda a combinar el poder de SQL con declaraciones de procedimiento.
  • Es la extensión procesal de Oracle Corporation .
  • Este lenguaje de procedimiento está disponible en la base de datos Oracle , la base de datos en memoria Times Ten e IBM Db2 .
  • En tiempo de ejecución, tanto PL/SQL como SQL brindan una eficiencia óptima al ejecutarse dentro del mismo proceso de servidor .
  • PL SQL garantiza un procesamiento eficaz y sin interrupciones de las sentencias SQL al mejorar la portabilidad , la seguridad y la solidez de la base de datos.
  • PL SQL simplemente significa instruir al compilador sobre qué hacer a través de SQL y cómo hacerlo a través de su forma de procedimiento .
  • PL SQL da más control a los programadores con el uso de bucles , condiciones y conceptos orientados a objetos .

¿Qué es el procedimiento y la función en PL SQL?

  • PL SQL tiene dos subprogramas, conocidos como procedimientos y funciones .
  • Por lo general, se utiliza un procedimiento para realizar una acción y una función para calcular un valor .
  • Los subprogramas en PL SQL tienen una parte declarativa , una parte ejecutable y una parte opcional de manejo de excepciones .
  • Estos subprogramas se pueden crear y guardar en la base de datos como objetos de base de datos.
  • Los subprogramas de procedimientos y funciones en PL SQL devuelven un único valor que se utiliza principalmente para calcular y devolver un valor .
  • Estos subprogramas son simplemente una colección de sentencias PL/SQL y SQL que pueden ejecutar una tarea específica .

¿Cómo crear un procedimiento almacenado y una función en PL SQL?

Cuando se escribe un bloque de código para un procedimiento almacenado o una función PL SQL, el motor de Oracle los compila. Una vez compilado, se almacena como un objeto de base de datos. El procedimiento almacenado o bloque de función de código se compone de tres partes:

  • Parte declarativa : en esta parte se declaran variables, constantes, cursores o excepciones que van a ser utilizadas por el procedimiento o la función.
  • Parte Ejecutable : En esta parte se escribe la definición del procedimiento o función que se crea. Esta parte también consta de sentencias PL/SQL o SQL que asignan valores, manipulan datos y controlan la ejecución.
  • Parte de manejo de excepciones : esta última parte es opcional y en ella se escriben las excepciones esperadas que pueden surgir durante la ejecución del código escrito en la parte ejecutable.

Ventajas del procedimiento almacenado y la función en PL SQL

Antes de descubrir el ejemplo del procedimiento PL SQL, primero debe familiarizarse con las ventajas de los subprogramas de procedimientos y funciones.

  • Mejore el rendimiento de la base de datos : el motor de Oracle ayuda en la compilación automática. Además, cada vez que se realiza una función o procedimiento de llamada PL SQL, el motor de Oracle carga el código compilado en SGA, System Global Area, lo que ayuda a una ejecución más rápida.
  • Reutilización y sin redundancia : la cantidad de líneas de código no se puede escribir repetidamente porque el mismo bloque de código para un procedimiento o función se puede llamar cualquier cantidad de veces en múltiples datos.
  • Seguridad : la seguridad de la base de datos también se mantiene con el uso de funciones o procedimientos almacenados, ya que ayuda a controlar el uso y su acceso al otorgar permisos a los usuarios. Aunque, el permiso para editar o manipular la base de datos no se otorga a los usuarios.
  • Integridad : otra ventaja del uso de la función o el procedimiento almacenado PL SQL es que garantiza la integridad, ya que el motor de Oracle los almacena como objetos de base de datos.
  • Guardar memoria: uno de los muchos beneficios de los procedimientos o funciones almacenados es que comparten memoria, lo que ayuda a guardar memoria como una sola copia de un procedimiento o una función que pueden cargar varios usuarios que tienen permiso para hacer lo mismo.

Lea también: Cómo corregir el error javascript:void(0)

Sintaxis para crear un procedimiento almacenado

Puede ver la siguiente sintaxis que se utiliza para crear un procedimiento almacenado en Oracle:

 CREAR O REEMPLAZAR PROCEDIMIENTO <nombre_procedimiento>
(<nombre_variable>IN/OUT/IN OUT <tipo de datos>,
<nombre_variable>IN/OUT/IN OUT <tipo de datos>,...) ES/AS
declaración de variable/constante;
COMENZAR
-- cuerpo del subprograma PL/SQL;
EXCEPCIÓN
-- Bloque de manejo de excepciones ;
END <nombre_procedimiento>; 

sintaxis para crear un procedimiento almacenado en Oracle

En el código anterior:

  • Procedimiento_nombre representa el nombre del procedimiento.
  • Variable_name representa el nombre de la variable utilizada en el procedimiento almacenado.
  • Crear o reemplazar procedimiento representa una palabra clave utilizada para especificar el nombre del procedimiento que se creará.
  • Begin , Exception y End representan palabras clave utilizadas para indicar que se crean diferentes secciones del procedimiento.
  • IN/OUT/IN OUT representa modos de parámetros en los que IN se refiere al modo de SÓLO LECTURA que se utiliza para una variable a través de la cual aceptará el valor del usuario. Este es el modo de parámetro predeterminado.
  • OUT se refiere al modo WRITE ONLY que se utiliza para una variable que devuelve el valor al usuario.
  • IN OUT se refiere al modo de LECTURA y ESCRITURA que se usa para una variable que aceptará un valor o devolverá un valor al usuario.
  • <procedure_name> representa el final de la definición del procedimiento. También puede simplemente usar END en su lugar.

Ejemplo de procedimiento SQL PL

Para el siguiente código de procedimiento, aquí hay un ejemplo simple que demostrará claramente el uso del procedimiento almacenado para sumar dos números:

 activar la salida del servidor;
CREAR O REEMPLAZAR PROCEDIMIENTO Suma (donde un número IN, b número IN) ES un número c;
COMENZAR
c := a+b;
dbms_output.put_line ('Suma de dos números = '|| c);
FIN Suma;

En caso de llamar al procedimiento se ejecutará el siguiente código:

 activar la salida del servidor;
DECLARAR
número x;
número y;
COMENZAR
x := &x;
y := &y;
Suma(x,y);
FIN;
Donde:
Introduzca valor para x: 10
Ingrese el valor para y: 20
Suma de dos números: 30

Procedimiento PL SQL creado con éxito.

Sintaxis para crear funciones en PL SQL

Ahora que sabe cómo crear sintaxis para el procedimiento almacenado y su ejemplo, es hora de arrojar algo de luz sobre la creación de funciones en PL/SQL:

 CREAR O REEMPLAZAR FUNCIÓN <nombre_función>
(<nombre_variable> IN <tipo de datos>,
<nombre_variable> IN <tipo de datos>,...)
RETURN <tipo de datos> ES/AS
declaración de variable/constante;
COMENZAR
-- cuerpo del subprograma PL/SQL;
EXCEPCIÓN
-- Bloque de manejo de excepciones ;
END <nombre_función>; 

sintaxis para crear funciones

En el código anterior:

  • Function_name representa el nombre de la función.
  • Variable_name representa el nombre de variable para la variable utilizada en la función.
  • La función Crear o Reemplazar representa una palabra clave utilizada para el nombre de la función que se va a crear.
  • IN representa el modo de SÓLO LECTURA que se utiliza para una variable por la cual aceptará el valor del usuario. Este es el parámetro predeterminado.
  • Return representa una palabra clave seguida de un tipo de datos que especifica el tipo de datos de un valor que la función va a devolver.

Lea también: El comando de reparación falló con el código de error 1 Python Egg Info

Ejemplo de función SQL PL

A continuación se muestra un ejemplo de la función PL SQL que demuestra el uso de la función para sumar dos números:

 activar la salida del servidor;
CREAR O REEMPLAZAR FUNCIÓN Suma (un número de ENTRADA, b número de ENTRADA) RETORNO Número ES
número c;
COMENZAR
c := a+b;
RETORNO c;
FIN; 

función para sumar dos números sintaxis

En caso de llamar a la función suma, se ejecutará el siguiente código:

 activar la salida del servidor;
DECLARAR
número n° 1;
número 2;
número de resultado;
COMENZAR
nº1 := &no1;
nº2 := &no2;
resultado := Suma(no1,no2);
dbms_output.put_line('Suma de dos números='||resultado);
FIN;
Donde:
Ingrese el valor para no1: 5
Ingrese el valor para no2: 5
Suma de dos números: 10

Procedimiento PL SQL creado con éxito.

sintaxis para llamar a la función suma

Lea la siguiente sección para conocer el procedimiento de salida de PL SQL.

¿Qué es el procedimiento de salida de PL SQL?

Exit ayuda cuando la declaración sale de la iteración actual del ciclo una vez que se cumple la condición en su cláusula WHEN, y transfiere el control al final del ciclo que se está ejecutando actualmente. Las declaraciones de salida no se pueden usar fuera de los bucles y están destinadas a salir de un ciclo incondicionalmente usando las declaraciones Exit y Continue o condicionalmente usando las declaraciones Exit When y Continue When.

Diferencia entre procedimiento almacenado y de función

Ahora que conoce el procedimiento y la función en PL SQL, finalmente es hora de conocer la diferencia básica entre los dos también:

  • El procedimiento almacenado puede o no devolver un valor a la parte del programa que llama, mientras que la función devuelve un valor a la parte del programa que llama.
  • El procedimiento almacenado devuelve un valor usando el parámetro OUT mientras que la función devuelve el valor usando RETURN.
  • El procedimiento almacenado usa el parámetro IN, OUT, IN OUT mientras que la función usa solo el parámetro IN.
  • El procedimiento almacenado no especifica el tipo de datos del valor si va a regresar después de que se le haga una llamada, mientras que la función especifica el tipo de datos del valor que va a regresar después de que se le haga una llamada.
  • El procedimiento almacenado no se puede llamar desde el bloque de código de función, mientras que la función se puede llamar desde el bloque de código de procedimiento.

Recomendado:

  • DDR4 vs DDR5 RAM: ¿Cuál es mejor para jugar?
  • ¿Cuáles son los tipos de placa de pruebas?
  • Cómo analizar texto
  • 4 formas de dividir cadenas por delimitador en SQL

Esperamos que nuestro documento sobre procedimiento y función en PL SQL haya sido útil y exitoso para responder todas sus dudas sobre PL SQL y sus subprogramas, procedimiento y función, procedimiento de salida de PL SQL y más. Si lo ayudamos de alguna manera o si hay más consultas de su parte, deje sus comentarios a continuación para informarnos.