En este tema se verá el lenguaje de programación PL/SQL que es altamente utilizado en bases de datos de Oracle y que fue desarrollado por la misma empresa, está conformado por conceptos que ayudan a la optimización y en la extracción funcional de los datos almacenados en dichas bases de datos, por lo que es importante que un administrador de bases de datos, pueda no solamente conocer su sintaxis, sino adquirir todos los conocimientos posibles para hacer código que sea de valor agregado para las áreas que lo demanden.
El objetivo principal de PL/SQL, es realización la manipulación exitosa de datos y la automatización de los procesos en un base de datos, sin embargo, se requiere de experiencia previa en el uso de bases de datos para poder utilizar todo su potencial y desarrollar aplicaciones y procedimientos eficientes que brinden información sólida para la toma de decisiones.
Comandos básicos en PL/SQL
De acuerdo con Peterson (2024), PL/SQL es una extensión del lenguaje SQL que combina la manipulación de datos de SQL con el alto procesamiento del lenguaje de procedimientos para poder crear consultas más completas y eficientes, lo que garantiza un procesamiento más fluido de las declaraciones hechas en SQL y mayor seguridad, portabilidad y solidez de la base de datos. En otras palabras, PL/SQL indica el “qué hacer” a través de SQL y “cómo hacerlo” a través de su formato de procedimientos, aunado a que permite el uso de bucles, condiciones y orientación a objetos.
Hoy en día, las empresas requieren un manejo más eficiente de datos y su toma decisiones debe basarse en información que permita conocer las tendencias de compras de los clientes, sus patrones de comportamiento, así como todos los datos que puedan conocerse de ellos con el fin de lograr una ventaja competitiva frente a otras empresas. Por lo tanto, los comandos PL/SQL cobran relevancia al crear soluciones optimizadas y enfocadas a las necesidades específicas de los departamentos.
De esta manera, se vuelve crucial que los administradores de bases de datos tengan una profunda comprensión de las funciones y cómo ponerlas en práctica para poder garantizar que la información esté lo más completa posible y, de esta manera, optimizar la gestión de procesos que ayuden al éxito de las organizaciones. Las principales características de PL/SQL son las siguientes (Maestríaenlínea, 2024):
A continuación, se presentan los comandos básicos para el uso de PL/SQL:
Creación de un procedimiento
De acuerdo con PLSQL (2021), los procedimientos o funciones PLSQL son dinámicos, ya que admiten parámetros antes de su ejecución. Así, un procedimiento o función puede realizar diferentes tareas dependiendo de los parámetros que le hayan pasado. Usualmente se componen por una sección donde se definen variables y cursores y la otra parte, que es ejecutable, se integra por sentencias SQL y PLSQL. También puede existir otra parte opcional integrada por las excepciones y los errores que pueden ocurrir durante la ejecución.
Los pasos para la ejecución de un procedimiento se presentan a continuación:
Según PLSQL (2021), se goza de las siguientes ventajas al usar procedimientos en lugar de scripts:
Se presenta a continuación la sintaxis de un PROCEDIMIENTO PLSQL:
CREATE OR REPLACE PROCEDURE [esquema].nombre-procedim
(nombre-parámetro {IN, OUT, IN OUT} tipo de dato, ..) {IS, AS}
Declaración de variables;
Declaración de constantes;
Declaración de cursores;
BEGIN
Cuerpo del subprograma PL/SQL;
EXCEPTION
Bloque de excepciones PL/SQL;
END;
Y la siguiente es la sintaxis de una FUNCIÓN PLSQL:
CREATE OR REPLACE FUNCTION [esquema].nombre-funcion
(nombre-parámetro {IN, OUT, IN OUT} tipo-de-dato, ..)
RETURN tipo-de-dato {IS, AS}
Declaración de variables;
Declaración de constantes;
Declaración de cursores;
BEGIN
Cuerpo del subprograma PL/SQL;
EXCEPTION
Bloque de excepciones PL/SQL;
END;
Ahora bien, ya que se está utilizando MySQL Workbench, debes saber que los procedimientos PL/SQL se pueden crear en la sección "Editor SQL". En dicha sección, también se puede llevar a cabo la ejecución del código. Para crear un procedimiento PL/SQL en MySQL Workbench, sigue estos pasos:
Esta pantalla se obtuvo directamente del software que se está explicando en la computadora, para fines educativos.
Ejecución de un procedimiento
Para la ejecución de un procedimiento, considera la tabla “empleados” que se ha trabajado en ejercicios anteriores.
Esta pantalla se obtuvo directamente del software que se está explicando en la computadora, para fines educativos.
Supón que deseas identificar a los empleados que ganan un salario mayor a una cierta cantidad; para ello, podrías usar el siguiente código:
Esta pantalla se obtuvo directamente del software que se está explicando en la computadora, para fines educativos.
En este ejemplo, se define un procedimiento llamado “obtener_empleados_con_sueldo_mayor_que”, que toma como parámetro de entrada a “sueldo” y, al realizar el procedimiento, se presentará un listado de empleados que cumpla con la especificación de un sueldo mayor que ‘1000’ en este caso, arrojando los resultados en la consola.
Esta pantalla se obtuvo directamente del software que se está explicando en la computadora, para fines educativos.
Con base en lo anterior, MySQL daría una salida como esta:
Esta pantalla se obtuvo directamente del software que se está explicando en la computadora, para fines educativos.
Este es solamente un ejemplo de los procedimientos que pueden realizarse. Es necesario recordar que la sintaxis puede variar según las necesidades de especificaciones para el manejo de volúmenes de datos, teniendo sintaxis más complejas como la del siguiente ejemplo de procedimiento que permite ver el número de empleados con un salario máximo a un valor predeterminado. Se permite el uso de condicionantes para el manejo de bucles de acuerdo con las condiciones que se cumplan (PLSQL, 2021). Revisa el ejemplo de creación de un procedimiento PL/SQL:
CREATE OR REPLACE PROCEDURE
procedimiento1 (a IN NUMBER, b IN OUT NUMBER) IS
vmax NUMBER;
BEGIN
SELECT salario, maximo
INTO b, vmax
FROM empleados
WHERE empleado_id=a;
IF b < vmax THEN
b:=b+100;
END IF;
EXCEPTION
WHEN NO_DATA_FOUND THEN
b:=-1;
RETURN;
WHEN OTHERS THEN
RAISE;
END;
En este tema, revisaste los conceptos básicos de programación de PL/SQL, así como los comandos que utiliza y la sintaxis adecuada para realizar los procedimientos, los cuales serán ejecutados de acuerdo con las necesidades y parámetros que se especifiquen con el fin de ofrecer información más específica a los departamentos que lo soliciten. De esta manera, se busca la automatización de procesos más complejos que permitan el manejo óptimo de grandes volúmenes de información.
Recuerda que el uso de las funciones también ayuda a garantizar consultas más eficientes cuando se acceda a las bases de datos complejas, por lo que un gestor de bases de datos deberá conocer las diferentes opciones que se pueden manejar para brindar los resultados esperados y obtener ventajas competitivas más relevantes.
Asegúrate de:
Tecmilenio no guarda relación alguna con las marcas mencionadas como ejemplo. Las marcas son propiedad de sus titulares conforme a la legislación aplicable, estas se utilizan con fines académicos y didácticos, por lo que no existen fines de lucro, relación publicitaria o de patrocinio.
Los siguientes enlaces son externos a la Universidad Tecmilenio, al acceder a ellos considera que debes apegarte a sus términos y condiciones.
Lecturas
Videos
Tecmilenio no guarda relación alguna con las marcas mencionadas como ejemplo. Las marcas son propiedad de sus titulares conforme a la legislación aplicable, estas se utilizan con fines académicos y didácticos, por lo que no existen fines de lucro, relación publicitaria o de patrocinio.
La obra presentada es propiedad de ENSEÑANZA E INVESTIGACIÓN SUPERIOR A.C. (UNIVERSIDAD TECMILENIO), protegida por la Ley Federal de Derecho de Autor; la alteración o deformación de una obra, así como su reproducción, exhibición o ejecución pública sin el consentimiento de su autor y titular de los derechos correspondientes es constitutivo de un delito tipificado en la Ley Federal de Derechos de Autor, así como en las Leyes Internacionales de Derecho de Autor.
El uso de imágenes, fragmentos de videos, fragmentos de eventos culturales, programas y demás material que sea objeto de protección de los derechos de autor, es exclusivamente para fines educativos e informativos, y cualquier uso distinto como el lucro, reproducción, edición o modificación, será perseguido y sancionado por UNIVERSIDAD TECMILENIO.
Queda prohibido copiar, reproducir, distribuir, publicar, transmitir, difundir, o en cualquier modo explotar cualquier parte de esta obra sin la autorización previa por escrito de UNIVERSIDAD TECMILENIO. Sin embargo, usted podrá bajar material a su computadora personal para uso exclusivamente personal o educacional y no comercial limitado a una copia por página. No se podrá remover o alterar de la copia ninguna leyenda de Derechos de Autor o la que manifieste la autoría del material.