- Advanced Oracle PL/SQL Developer's Guide(Second Edition)
- Saurabh K. Gupta
- 280字
- 2021-08-20 10:43:51
Oracle Database 12c enhancements to PL/SQL subprograms
Oracle Database Release 12c includes a number of PL/SQL feature enhancements. These enhancements are focused on improving the usability of PL/SQL as a language. Although the next chapter will discuss many more new features in detail, it is worthwhile to mention a few of them that are exclusively related to Oracle PL/SQL subprograms.
- Defining PL/SQL subprograms in the
SELECT
statement: Although PL/SQL allows the invoking of a function from theSELECT
statement, the context switch from SQL to the PL/SQL engine degraded the performance. Oracle 12c allows creating PL/SQL units in theWITH
clause of a subquery and using it in theSELECT
statement. The new approach to calling functions in SQL statements enhances the performance as there is no context switching across the engines. In addition, these functions are not stored in the database schema. - Granting roles to program units: One of the challenges in PL/SQL before Oracle 12c was that a program unit had to be created with definers rights, if it was intended to be executed by all users. A user with a lower set of privileges could perform the unauthorized changes. With Oracle 12c, granting roles to PL/SQL program units adds a levels of safety. You can now create program units with invoker's rights and control the privileges, which are required to run the program, through a role.
- Protecting PL/SQL unit access through the
ACCESSIBLE
BY
clause: With Oracle 12c, you can restrict access to a PL/SQL unit by unauthorized programs. A subprogram (a procedure, function or a package) can optionally include anACCESSIBLE
BY
clause to define a white list of PL/SQL program units that can invoke it.
推薦閱讀
- Debian 7:System Administration Best Practices
- Power Up Your PowToon Studio Project
- C語言程序設計實踐教程
- JSP開發案例教程
- Unity Game Development Scripting
- Getting Started with NativeScript
- JavaScript入門經典
- 執劍而舞:用代碼創作藝術
- PHP+Ajax+jQuery網站開發項目式教程
- Extreme C
- 算法圖解
- Sails.js Essentials
- SQL Server 2008實用教程(第3版)
- Storm Real-Time Processing Cookbook
- 面向對象程序設計及C++實驗指導(第3版)