繁体   English   中英

SQL 'select' 和 PL/SQL 'select' 语句有什么区别?

[英]What is difference between SQL 'select' and PL/SQL 'select' statements?

例如,如果我写:

            select employee_id,last_name from employees;

我将获取“EMPLOYEES”表中存在的所有行。 如果我写:

            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;

我明白了——

            100 King

如果我想检索多行,那么我将使用 CURSOR。 但是可以使用我之前提到的简单 SQL 语句检索这些多行。 那么,使用PL/SQL Declare..Begin..End语句有什么用呢?

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

分享和享受。

PL/SQL 是首选。

优点:

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

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

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

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

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

话说回来,

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

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

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

礼貌: - 问汤姆

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM