Ở đây chúng ta sẽ thảo luận về các loại và cấu trúc khối Oracle PLSQL
PL / SQL là gì

PL / SQL là phần mở rộng độc quyền của Oracle cho SQL cho phép tạo ra các khả năng ngôn ngữ thủ tục. Nó cung cấp tất cả các tính năng của kỹ thuật phần mềm hiện đại như đóng gói dữ liệu, xử lý ngoại lệ, ẩn thông tin và hướng đối tượng
Tại sao nên sử dụng PLSQL
1) Tích hợp với các công cụ phát triển như biểu mẫu Oracle, Báo cáo
2) Nhiều câu lệnh có thể được nhóm thành một khối plsql duy nhất và gửi đến máy chủ oracle, dẫn đến lưu lượng mạng ít hơn
3) Phát triển chương trình được mô-đun hóa:Chia lôgic / vấn đề phức tạp thành tập hợp các mô-đun lôgic có thể quản lý, được xác định rõ và thực hiện chúng bằng cách sử dụng các khối
4) Tính di động:Vì nó là nguồn gốc của máy chủ Oracle, nó có thể được di chuyển dễ dàng
5) Nó cung cấp các cấu trúc điều khiển ngôn ngữ thủ tục như điều kiện if, vòng lặp
6) Nó có khả năng xử lý lỗi và nâng cao ngoại lệ dựa trên nó
Cấu trúc khối PLSQL
Một khối plsql được tạo thành ba phần Khai báo, thực thi và ngoại lệ.
DECLARE (Tùy chọn) - phần này chứa các biến, hằng số, con trỏ và các ngoại lệ do người dùng xác định. BẮT ĐẦU (Bắt buộc) CÓ THỂ THỰC HIỆN - phần này chứa bất kỳ câu lệnh SQL nào . NGOẠI LỆ (tùy chọn) - phần này chứa các trình xử lý lỗi.KẾT THÚC (Bắt buộc); |

Vì vậy, phần Khai báo và phần ngoại lệ là Tùy chọn.
Cấu trúc khối mẫu
DECLARE l_number NUMBER; BEGIN l_number := 1; Dbms_output.put_line(l_number); Exception When others then Dbms_output.put_line(‘Exception occurred’); END; /
Những điểm quan trọng cần lưu ý
1) Tất cả các biến và hằng được định nghĩa trong phần khai báo
2) Đặt dấu chấm phẩy; ở cuối câu lệnh sql hoặc câu lệnh điều khiển plsql
3) Trong PL / SQL, tất cả các lỗi được xử lý trong khối Ngoại lệ.
4) Bắt đầu và Kết thúc là các câu lệnh bắt buộc cho biết bắt đầu và kết thúc của Khối PL / SQL.
5) Biến và Hằng số phải được khai báo đầu tiên trước khi chúng có thể được sử dụng.
6) Các giá trị có thể được gán trực tiếp cho các biến bằng cách sử dụng toán tử gán “:=”, bằng câu lệnh SELECT… INTO hoặc Khi được sử dụng làm tham số OUT hoặc IN OUT từ một thủ tục.
7) Từ khóa phần Khai báo, Bắt đầu, ngoại lệ không được theo sau bởi dấu chấm phẩy
8) Kết thúc và tất cả các câu lệnh plsql khác yêu cầu dấu chấm phẩy để kết thúc câu lệnh
Các loại khối PLSQL
Ẩn danh :Khối ẩn danh là các khối không có tên. Chúng được khai báo tại điểm trong ứng dụng mà chúng cần được thực thi
DECLARE l_number NUMBER; BEGIN l_number := 1; Dbms_output.put_line(l_number); Exception When others then Dbms_output.put_line(‘Exception occurred’); END; /
Chức năng :Đây là những tên khối PLSQL có thể chấp nhận tham số và tính toán một số chức năng và trả về nó. Nó có thể được lưu trữ trong máy chủ hoặc ứng dụng Oracle
Syntax FUNCTION name [(parameter[, parameter, …])] RETURN datatype IS [local declarations] BEGIN executable statements [EXCEPTION exception handlers] END [name]; Example Create or replace function FUNC return number As l_number NUMBER; BEGIN Select count(*) into l_number from emp; return(l_number) END; /
Quy trình :Đây là những tên khối PLSQL có thể chấp nhận tham số và xử lý một số thông tin và có thể hoặc có thể trả về giá trị. Nó có thể được lưu trữ trong máy chủ hoặc ứng dụng Oracle
Syntax PROCEDURE name [(parameter[, parameter, …])] IS [local declarations] BEGIN executable statements [EXCEPTION exception handlers] END [name]; Example Create or replace procedure remove_emp (emp_id number) As BEGIN Delete from emp where employee_id=emp_id; END; /
Sự khác biệt giữa hàm và thủ tục
Chức năng | Quy trình |
Hàm phải trả về một giá trị | Thủ tục không cần |
Cú pháp | Cú pháp |
Tên hàm (danh sách đối số… ..) Kiểu dữ liệu trả về là | Tên THỦ TỤC (danh sách tham số… ..) |
khai báo biến cục bộ | là |
Bắt đầu | khai báo biến cục bộ |
câu lệnh thực thi | BẮT ĐẦU |
Ngoại lệ | Các câu lệnh thực thi. |
trình xử lý thực thi | Ngoại lệ. |
End; | trình xử lý ngoại lệ |
end; | |
Hàm có thể được sử dụng trong SQL với một số hạn chế | Không thể gọi thủ tục trực tiếp từ SQL. |
Cú pháp và nguyên tắc khối Oracle PLSQL
1) Các ký tự ký tự và ngày tháng phải được đặt trong dấu ngoặc kép duy nhất
2) Đặt nhiều dòng chú thích giữa / * và * /
3) Hầu hết các hàm sql có thể được sử dụng trong PLSQL. Chúng tôi có sẵn hàm char, date, number trong PLSQL giống như SQL
4) nhóm theo chức năng không có sẵn trong PLSQL. Nó chỉ có thể được sử dụng trong câu lệnh sql trong PLSQL
5) Chúng ta nên sử dụng thụt lề thích hợp để làm cho mã có thể đọc được
6) Bạn nên viết câu lệnh DML ở dạng chữ hoa, Từ khóa PLSQL, Kiểu dữ liệu ở dạng chữ hoa và Đặt số nhận dạng và tham số ở dạng chữ thường để dễ đọc và bảo trì tốt hơn
Các liên kết có liên quan
Tài liệu Oracle PLSQL
25 Câu hỏi phỏng vấn Oracle PlSQL thường gặp nhất
Oracle sql và plsql
cách viết các truy vấn sql