Bạn đã nghe nhiều về Stored Procedure trong SQL tuy nhiên lại chưa viết cách tạo Stored Procedure SQL. Ngày hôm nay chúng ta sẽ cùng nhau tìm hiểu về cách tạo một Stored Procedure trong SQL chi tiết ngay nhé!
Cách tạo Stored Procedure trong SQL
1. Stored Procedure là gì?
Một stored procedure SQL (viết tắt là SP) là một bộ sưu tập các câu lệnh SQL và các logic lệnh SQL được biên dịch và lưu trữ trong cơ sở dữ liệu. Stored procedures trong SQL cho phép chúng ta tạo các truy vấn SQL để được lưu trữ và thực thi trên máy chủ. Stored procedures có thể cũng được lưu trữ và sử dụng lại.
Mục đích chính của Stored Procedure là ẩn các truy vấn SQL trực tiếp từ code và cải thiện hiệu suất của cơ sở dữ liệu khi thực hiện các lệnh SELECT, UPDATE, DELETE.
Bạn có thể tạo và khởi chạy Stored Procedure sử dụng Object Explorer trong SQL Server hoặc sử dụng SQL Server Management Studio.
2. Tại sao chúng ta sử dụng SET NOCOUNT ON trong một Stored Procedure?
SET NOCOUNT ON là một dòng mã được sử dụng trong SQL để không trả về giá trị cho một số lượng hàng nào đó trong khi thực hiện truy vấn. Nó có nghĩa là không được tính toán.
Và khi bạn SET NOCOUNT OFF thì các câu truy vấn sẽ ảnh hưởng đến giá trị của tất cả các hàng.
3. Có bao nhiêu kiểu Stored Procedure?
Có 2 kiểu có sẵn của Stored Procedure trong SQL Server đó là:
Người dùng định nghĩa Stored Procedure
Stored Procedure hệ thống
3.1. Người dùng định nghĩa Stored Procedure
Người dùng định nghĩa Stored Procedure được tạo bởi những nhà phát triển cơ sở dữ liệu hoặc những người quản trị cơ sở dữ liệu. Các SP này chứa nhiều hơn 1 câu lệnh SQL để chọn, cập nhật hoặc xóa các bản ghi từ các bản ghi cơ sở dữ liệu. Người dùng định nghĩa SP là hỗn hợp của các lệnh DDL ( Data Definition Language – Ngôn ngữ định nghĩa dữ liệu) và DML ( Ngôn ngữ thao tác dữ liệu).
Các SP người dùng định nghĩa được phân loại thêm thành 2 kiểu:
T-SQL stored procedures: T-SQL (Transact SQL – SQL giao dịch) là các SP nhân và trả về các tham số. Các quá trình SP truy vấn như thêm, cập nhật, xóa hoặc không có tham số. Đây là một trong những cách phổ biến nhất để viết SP trong SQL Server.
CLR stored procedures: CLR (Common Language Runtime) SPs được viết trong một CLR dựa trên ngôn ngữ lập trình như C# hoặc VB. NET và được thực thi bởi .NET Framework.
Cách tạo Stored Procedure trong SQL
1. Stored Procedure là gì?
Một stored procedure SQL (viết tắt là SP) là một bộ sưu tập các câu lệnh SQL và các logic lệnh SQL được biên dịch và lưu trữ trong cơ sở dữ liệu. Stored procedures trong SQL cho phép chúng ta tạo các truy vấn SQL để được lưu trữ và thực thi trên máy chủ. Stored procedures có thể cũng được lưu trữ và sử dụng lại.
Mục đích chính của Stored Procedure là ẩn các truy vấn SQL trực tiếp từ code và cải thiện hiệu suất của cơ sở dữ liệu khi thực hiện các lệnh SELECT, UPDATE, DELETE.
Bạn có thể tạo và khởi chạy Stored Procedure sử dụng Object Explorer trong SQL Server hoặc sử dụng SQL Server Management Studio.
2. Tại sao chúng ta sử dụng SET NOCOUNT ON trong một Stored Procedure?
SET NOCOUNT ON là một dòng mã được sử dụng trong SQL để không trả về giá trị cho một số lượng hàng nào đó trong khi thực hiện truy vấn. Nó có nghĩa là không được tính toán.
Và khi bạn SET NOCOUNT OFF thì các câu truy vấn sẽ ảnh hưởng đến giá trị của tất cả các hàng.
3. Có bao nhiêu kiểu Stored Procedure?
Có 2 kiểu có sẵn của Stored Procedure trong SQL Server đó là:
Người dùng định nghĩa Stored Procedure
Stored Procedure hệ thống
3.1. Người dùng định nghĩa Stored Procedure
Người dùng định nghĩa Stored Procedure được tạo bởi những nhà phát triển cơ sở dữ liệu hoặc những người quản trị cơ sở dữ liệu. Các SP này chứa nhiều hơn 1 câu lệnh SQL để chọn, cập nhật hoặc xóa các bản ghi từ các bản ghi cơ sở dữ liệu. Người dùng định nghĩa SP là hỗn hợp của các lệnh DDL ( Data Definition Language – Ngôn ngữ định nghĩa dữ liệu) và DML ( Ngôn ngữ thao tác dữ liệu).
Các SP người dùng định nghĩa được phân loại thêm thành 2 kiểu:
T-SQL stored procedures: T-SQL (Transact SQL – SQL giao dịch) là các SP nhân và trả về các tham số. Các quá trình SP truy vấn như thêm, cập nhật, xóa hoặc không có tham số. Đây là một trong những cách phổ biến nhất để viết SP trong SQL Server.
CLR stored procedures: CLR (Common Language Runtime) SPs được viết trong một CLR dựa trên ngôn ngữ lập trình như C# hoặc VB. NET và được thực thi bởi .NET Framework.