sql >> Base de Datos >  >> RDS >> Oracle

¿Por qué se llama SQL Engine para la llamada PL/SQL desde la aplicación cliente?

No siempre es necesario llamar al motor SQL; depende del cliente y de si el cliente tiene el motor PLSQL incorporado. Por ejemplo, Oracle Forms tiene un motor PLSQL incorporado, por lo tanto, al llamar a un procedimiento PLSQL, la llamada completa se puede pasar al motor y no se produce ningún cambio de contexto. Sin embargo, con PRO*C siempre está ejecutando instrucciones SQL que luego ejecutan "bloques" de llamadas PLSQL como esta:

begin
   call_proc;
end;

Esto ha invocado el analizador SQL que luego cambia al motor PLSQL tan pronto como se ejecuta el bloque anónimo de "inicio". Esta es solo la forma en que se diseña el cliente. SQL*Plus es similar, ejecuta el motor SQL para llamar a los bloques PLSQL.