Oracle processes PL/SQL program units (procedures, functions, packages, anonymous
blocks, and database triggers) much the same way it processes individual SQL
statements. Oracle allocates a shared area to hold the parsed, compiled form of a
program unit. Oracle allocates a private area to hold values specific to the session that
runs the program unit, including local, global, and package variables (also known as
package instantiation) and buffers for executing SQL. If more than one user runs the
same program unit, then a single, shared area is used by all users, while each user
maintains a separate copy of his or her private SQL area, holding values specific to his
or her session.
Individual SQL statements contained within a PL/SQL program unit are processed as
described in the previous sections. Despite their origins within a PL/SQL program
unit, these SQL statements use a shared area to hold their parsed representations and a
private area for each session that runs the statement.
Oracle分配一个私有区域来保存会话执行的程序块的值 , 包括本地, 全局 , 变量, 执行SQL的buffers
来自 “ ITPUB博客 ” ，链接：http://blog.itpub.net/10599713/viewspace-978368/，如需转载，请注明出处，否则将追究法律责任。