簡體   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