gpt4 book ai didi

c++ - 为什么从客户端应用程序调用 SQL 引擎来调用 PL/SQL?

转载 作者:行者123 更新时间:2023-11-28 02:11:50 25 4
gpt4 key购买 nike

在我的应用程序中,我只是为数据库相关事件调用存储过程。

我已经发布了一个问题 here用于与性能相关的查询。

Rob Mascaro 回答了我的问题,他的回答中有这样一句话

*您的 C++ 应用程序调用中的每个 PLSQL 调用都会调用 SQL 引擎,然后该引擎会为过程调用调用 PLSQL 引擎*

我的问题是为什么调用PL/SQL的时候需要调用sql引擎?为什么我的客户端应用程序不能直接调用 PL/SQL 引擎来处理 PL/SQL?

最佳答案

SQL 引擎并不总是需要被调用——它取决于客户端以及客户端是否嵌入了 PLSQL 引擎。例如,Oracle Forms 有一个嵌入式 PLSQL 引擎,因此在调用 PLSQL 过程时,整个调用可以传递给引擎,并且不会发生上下文切换。然而,对于 PRO*C,您总是在执行 SQL 语句,然后执行 PLSQL 调用的“ block ”,如下所示:

begin
call_proc;
end;

这调用了 SQL 解析器,一旦执行了“开始”匿名 block ,它就会切换到 PLSQL 引擎。这就是客户端的架构方式。 SQL*Plus 类似,您运行 SQL 引擎来调用 PLSQL block 。

关于c++ - 为什么从客户端应用程序调用 SQL 引擎来调用 PL/SQL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35402262/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com