Trong SQL Server, User Defined Functions (UDF)
và Stored Procedures
là hai loại đối tượng cơ sở dữ liệu phục vụ cho các mục đích khác nhau và có những đặc điểm sử dụng cụ thể:
User Defined Functions (UDF)
- Phải trả về một giá trị: UDF luôn phải trả về một giá trị, có thể là một giá trị đơn (scalar) hoặc một bảng (table)
- Chỉ cho phép tham số đầu vào: UDF chỉ có thể nhận tham số đầu vào và không hỗ trợ tham số đầu ra
- Chỉ cho phép câu lệnh SELECT: UDF chỉ cho phép sử dụng câu lệnh SELECT trong khi không cho phép thực hiện các câu lệnh DML (INSERT, UPDATE, DELETE)
- Có thể được gọi từ câu lệnh SELECT/WHERE/HAVING: UDF có thể được nhúng trực tiếp vào các phần của câu lệnh SELECT, WHERE, HAVING, giúp tính toán hoặc biến đổi dữ liệu một cách linh hoạt
- Không hỗ trợ quản lý giao dịch: UDF không cho phép sử dụng các câu lệnh quản lý giao dịch như BEGIN TRANSACTION, COMMIT, ROLLBACK
Stored Procedures
- Trả về giá trị là tùy chọn: Stored Procedure có thể không trả về giá trị hoặc trả về nhiều giá trị thông qua tham số đầu ra (...