Oracle PL/SQL es uno de los lenguajes más usados en ambientes de bases de datos a nivel mundial. En Neuronet ofrecemos Servicios de desarrollo Oracle PL SQL Chile, para apoyar a las empresas en el uso y mejores prácticas de este lenguaje. Este es un lenguaje que ha evolucionado mucho y hoy es usado ampliamente como una extensión de la capa de lógica de negocio en la base de datos.
Características clave de PL/SQL
Su capacidad de programación procedural y sus extensiones como lenguaje orientado al objeto, lo hacen muy versátil, productivo y de buen desempeño.
PL/SQL no solo es un lenguaje con un fuerte tipado, sino que tiene características avanzadas para la ejecución segura de código. Por ejemplo, antes de Oracle Database 12c, PL/SQL no podía evitar que una sesión usara todos y cada uno de los subprogramas en paquetes a los que se les habían otorgado privilegio de EXECUTE ON al esquema de esa sesión.
Los desarrolladores tuvieron que aceptar la posibilidad de violaciones de sus subprogramas o, de lo contrario, escribir código para restringir el acceso. A partir de Oracle Database 12c, ahora se puede incluir una cláusula en el encabezado de su unidad de programa que especifique una lista aprobada de otras unidades PL/SQL que pueden acceder a la unidad PL/SQL que se está creando o modificando. Esta es lo que permite la cláusula ACCESSIBLE_BY. Por ejemplo, el siguiente código:
CREATE PACKAGE my_package
ACCESSIBLE BY (your_package)
IS
PROCEDURE my_proc;
END;
/
Si cualquier programa diferente a un suprograma que se encuentre en el Package your_package intenta ejecutar my_package.my_proc, obtendrá un error:
PLS-00904: insufficient privilege to access object MY_PACKAGE
La capacidad maravillosa de combinar un lenguaje procedural, con SQL (no procedural) le dio a este lenguaje una potencia enorme. Sin embargo, también creó problemas de rendimiento ya que el código PL/SQL se ejecuta en un engine PL/SQL y SQL se ejecuta en un engine separado para procesar SQL (engine SQL). Cuando se ejecuta SQL desde un bloque PL/SQL se genera un cambio de contexto, lo que tiene costo de rendimiento. Si esto se hace en ciclo con muchas iteraciones, el efecto en el rendimiento puede ser fatal. Entre más cambios de contextos, más costo de rendimiento.
Es por esta razón, que ayudamos y asesoramos a los clientes en estas y otras materias de optimización de código PL/SQL (Tuning PL/SQL), por medio de nuestros Servicios de desarrollo Oracle PL SQL Chile.
Si desea comunicarse con nuestro equipo de ventas para obtener más información sobre este servicio, escríbanos a [email protected]
Lea lo último de nuestro blog «Principios de Seguridad en Bases de Datos Oracle».