Sau đây là những điểm khác biệt chính giữa các hàm và thủ tục:
Chức năng | Quy trình |
---|---|
Một hàm có kiểu trả về và trả về một giá trị. | Một thủ tục không có kiểu trả về. Nhưng nó trả về các giá trị bằng cách sử dụng các tham số OUT. |
Bạn không thể sử dụng một hàm với các truy vấn Thao tác Dữ liệu. Chỉ các truy vấn Chọn mới được phép trong các hàm. | Bạn có thể sử dụng các truy vấn DML như chèn, cập nhật, chọn, v.v. với các thủ tục. |
Một hàm không cho phép tham số đầu ra | Một thủ tục cho phép cả tham số đầu vào và đầu ra. |
Bạn không thể quản lý các giao dịch bên trong một hàm. | Bạn có thể quản lý các giao dịch trong một quy trình. |
Bạn không thể gọi các thủ tục được lưu trữ từ một hàm | Bạn có thể gọi một hàm từ một thủ tục được lưu trữ. |
Bạn có thể gọi một hàm bằng câu lệnh select. | Bạn không thể gọi một thủ tục bằng cách sử dụng các câu lệnh chọn. |