Đây là một ví dụ tạo một thủ tục đầu tiên trên PL/SQL Developer. ví dụ này sẽ là khuôn mẫu giúp bạn vừa lập trình vừa kiểm tra lỗi nếu có vấn đề xẩy ra.
Tạo mới một thủ tục (Procedure): Nhập vào tên của thủ tục, các tham số sẽ được viết sau:
Thủ tục đã được PL/SQL Developer tạo ra. Tuy nhiên bạn cần sửa lại danh sách tham số, và viết code cho thủ tục này. Sửa thủ tục của bạn như sau: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 `] `9 `PROCEDURE`0 `PROCEDURE`1 `OR`7 `PROCEDURE`3
`REPLACE`0
`[`08
Nhấn vào biểu tượng Execute hoặc F8 để biên dịch thủ tục. Trong trường hợp có lỗi code, PL/SQL Developer sẽ thông báo cho bạn. Test thủ tục trên PL/SQL Developer Nhấn phải chuột vào thủ tục Get_Employee_Infos chọn Test: Nhập tham số đầu vào, ví dụ:
Kết quả thực thi thủ tục: Xem trên màn hình Console: Test trường hợp khác với:
Xem trên Console: Debug thủ tục trên PL/SQL Developer Debug trên PL/SQL Developer cho phép bạn xem một thủ tục, hàm đã được chạy thế nào, theo từng lệnh. Giúp bạn dễ dàng tìm ra các vị trí phát sinh lỗi. Bạn có thể xem hướng dẫn tại:
Hàm (Function) Tương tự như thủ tục, hàm (function) cũng là nhóm các lệnh PL/SQL thực hiện chức năng nào đó. Khác với thủ tục, các hàm sẽ trả về một giá trị ngay tại lời gọi của nó. Hàm cũng có thể được lưu giữ ngay trên database dưới dạng Store procedure. Với việc sử dụng hàm, trong một số trường hợp bạn có thể thấy được các lợi điểm như sau:
Một số hạn chế khi sử dụng hàm trong câu lệnh SQL
Cú pháp tạo Hàm. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
`OR`1 `OR`2`OR`3 Ví dụ: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
`OR`0 `REPLACE`0
`REPLACE`1`OR`3
`OR`0 `REPLACE`0
`REPLACE`1`OR`3 Hủy Function: 1 2 3
Gọi hàm. 1 2 3 4 5 6 7 8
`[`85
Ví dụ tạo một hàm.1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
`REPLACE`0 `<procedure_name>`8`REPLACE`0
``5`OR`22`OR`23`OR`3 `<procedure_name>`8`REPLACE`1`OR`3
`REPLACE`1`OR`3 Các hàm không có tham số OUT, có thể tham gia vào câu lệnh SQL, ví dụ: 1 2 3 ``3 `OR`34 `[`7`OR`36 `[`7 `OR`38 Kết quả chạy câu lệnh SQL trên: Package Package là một tập hợp các kiểu dữ liệu, biến lưu giữ giá trị và các thủ tục,hàm có cùng một mối liên hệ với nhau, được gộp chung lại. Đặc điểm nổi bật nhất của package là khi một phần tử trong package được gọi thì toàn bộ nội dung của package sẽ được nạp vào trong hệ thống. Do đó, việc gọi tới các phần tử khác trong package sau này sẽ không phải mất thời gian nạp vào hệ thống nữa. Từ đó, nâng cao tốc độ thực hiện lệnh của toàn bộ hàm, thủ tục có trong package. Cấu trúc của Package: Một package được cấu trúc làm hai phần. Phần mô tả (specification) định nghĩa các giao tiếp có thể có của package với bên ngoài. Phần thân (body) là các cài đặt cho các giao tiếp có trong phần mô tả ở trên. Trong cấu trúc của package bao gồm 05 thành phần:
Khai báo Package: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
`OR`2 `OR`48
`OR`2 `OR`48 Tạo package trên PL/SQL Developer PL/SQL Developer giúp bạn tạo nhanh package spec & package body. Package đã được PL/SQL Developer tạo ra, với các gợi ý viết package được tự động sinh ra. Bạn có thể xóa hết chúng đi. Bạn có thể xóa hết các code tự tạo ra tự động bởi PL/SQL Developer để có một package rỗng:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
`REPLACE`1 `OR`80
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71
`OR`54`OR`7 `OR`88
`OR`54`REPLACE`0 `OR`68`REPLACE`0
`OR`68`REPLACE`1`OR`3 `OR`54`REPLACE`1`OR`3
`OR`68`REPLACE`46 `OR`68`REPLACE`48 `OR`54`REPLACE`0 `OR`68`REPLACE`52 `[`28`PROCEDURE`5 `[`28`REPLACE`56
`OR`54`REPLACE`1`OR`3
`OR`68`REPLACE`75`OR`77`OR`78 `OR`54`REPLACE`0 `OR`68`REPLACE`0
`REPLACE`05`REPLACE`93
`REPLACE`02`REPLACE`98 ``1
`OR`68`REPLACE`1`OR`3
`OR`54`REPLACE`1`OR`3 `REPLACE`1 `OR`80 Test Package Cũng giống như thủ tục và hàm, bạn cũng có thể test các thủ tục/hàm trên Package, điều này giúp bạn phát hiện ra các lỗi trong quá trình lập trình. |