0

For instance, if I write:

            select employee_id,last_name from employees;

I will get all the rows existing in "EMPLOYEES" table. If I write:

            declare
                id employee_id.employees%type;
                ln last_name.employees%type;
            begin
                select employee_id,last_name into id,ln
                from employees
                where employee_id = 100;
                dbms_output.put_line(id||' '||ln);
            end;

I get -

            100 King

If I want to retrieve multiple rows, then I will use CURSOR. But these multiple rows can be retrieved using simple SQL statement I mentioned previously. Then, what's the use of using PL/SQL Declare..Begin..End statement ?

4

3 回答 3

0

PL/SQL 用于编写需要过程逻辑的过程、函数和程序,这些过程逻辑不能方便地表示为 SQL 语句的集合。

分享和享受。

于 2013-06-20T11:07:32.463 回答
0

谈到是 SQL 还是 PL/SQL,如果您可以在单个 SQL 语句中执行此操作 - 执行此操作,如果它不能按照您预期的方式工作,请尝试 PL/SQL,如果您的应用程序中有其他平台,请尝试.

话说回来,

SQL(结构化查询语言)是数据库的接口。如果要更改其状态或从中获取数据,请使用 SQL。它是一种声明性语言。

PL/SQL 是 SQL for Oracle Database 的过程扩展。它包括编程结构,例如循环和条件(if-then)。您使用它来管理 SQL 事务的工作流。

基本上,您使用 PL/SQL 将 SQL 语句拼接在一起。它管理您处理 SQL 的顺序、如果出现错误该怎么办等(“业务逻辑”)。

礼貌:-问汤姆

于 2020-08-10T19:01:35.123 回答
0

PL/SQL 是首选。

优点:

预编译代码- 代码在每次执行时都不会被编译。这使得数据检索更快。

代码可重用性- 无需每次都编写代码。

封装- 隐藏实际业务逻辑。

错误处理- 允许使用预定义和自定义异常。

于 2020-08-10T15:24:41.240 回答