Xem thêm

Giới thiệu về Stored Procedure trong SQL Server

Huy Erick
Trong bài viết này, chúng ta sẽ tìm hiểu về khái niệm stored procedure trong SQL Server và cách tạo mới, thực thi, thay đổi và xóa stored procedure. 1. Stored Procedure là gì? Stored...

Trong bài viết này, chúng ta sẽ tìm hiểu về khái niệm stored procedure trong SQL Server và cách tạo mới, thực thi, thay đổi và xóa stored procedure.

1. Stored Procedure là gì?

Stored procedure là một nhóm câu lệnh T-SQL được lưu trữ trên Database Server. Khi một câu lệnh gọi chạy stored procedure lần đầu tiên, SQL Server sẽ lưu trữ nó vào bộ nhớ đệm, gọi là plan cache. Các lần tiếp theo, SQL Server sẽ sử dụng lại plan cache, giúp tăng tốc độ xử lý.

Stored procedure rất tiện lợi cho người quản trị database (DBA), giúp tạo ra những nhóm câu lệnh và gửi đến một bộ phận khác mà không cần quan tâm đến nội dung bên trong stored procedure. Chỉ cần quan tâm đến tham số đầu vào và đầu ra.

Ví dụ, bạn có thể viết một stored procedure lấy danh sách sản phẩm bán chạy theo ngày và gửi nó qua bộ phận development kèm theo tài liệu hướng dẫn sử dụng. Bộ phận DEV chỉ cần quan tâm đến thông tin tham số và kết quả trả về của stored procedure.

2. Tạo Stored Procedure trong SQL Server

Chúng ta hãy bắt đầu bằng những ví dụ đơn giản nhất. Giả sử bạn có câu truy vấn lấy danh sách sản phẩm như sau:

SELECT * FROM products

Để tạo một stored procedure chứa câu truy vấn này, bạn có thể viết như sau:

CREATE PROCEDURE uspProductList
AS
BEGIN
    SELECT * FROM products
END

Bây giờ, hãy chạy câu SQL tạo stored bằng cách click vào nút Execute ở trên thanh công cụ.

SQL Server Stored Procedure Compiling

Nếu bạn làm đúng tất cả, bạn sẽ nhận được kết quả là:

Command(s) completed successfully.

Để xem danh sách stored procedure đã tạo trong SQL Server, bạn hãy vào database -> Programmability -> Stored Procedures. Nếu không xuất hiện stored vừa tạo, hãy click dấu xoay tròn để reload.

SQL Server Stored Procedure Object Explorer

3. Gọi Stored Procedure trong SQL Server

Để gọi một stored procedure, bạn sử dụng lệnh EXECUTE hoặc EXEC theo sau là tên của stored.

EXECUTE uspProductList

Hoặc

EXEC uspProductList

Ví dụ, kết quả sẽ như hình sau:

SQL Server Stored Procedure output

4. Thay đổi Stored Procedure trong SQL Server

Để thay đổi stored procedure, bạn sử dụng lệnh ALTER PROCEDURE và tên của stored sẽ nằm phía sau.

Ví dụ, nếu bạn muốn thay đổi cách sắp xếp kết quả trả về từ product_name thành list_price của uspProductList, bạn có thể viết như sau:

ALTER PROCEDURE uspProductList
AS
BEGIN
    SELECT list_price FROM products
END

Hoặc bạn có thể click chuột phải vào stored cần sửa, sau đó chọn menu "Modify" để hiển thị trang query mới với cấu trúc của stored cũ.

SQL Server Stored Procedure modifying

5. Xóa Stored Procedure trong SQL Server

Để xóa stored procedure, bạn sử dụng lệnh DROP PROCEDURE hoặc DROP PROC.

DROP PROCEDURE uspProductList

Như vậy, trong bài viết này, chúng ta đã tìm hiểu về khái niệm stored procedure trong SQL Server và các thao tác như: Tạo stored, sửa stored, chạy stored và xóa stored. Hy vọng bạn đã hiểu và hứa hẹn gặp lại trong bài viết tiếp theo.

1