Stored procedure sql server là gì
Stored procedure là tập hợp một hoặc nhiều câu lệnh T-SQL thành một nhóm đơn vị xử lý logic và được lưu trữ trên Database Server. Khi một câu lệnh gọichạy stored procedure lần đầu tiên thì SQL Server sẽ chạy nó và lưu trữ vào bộ nhớ đệm, gọi là plan cache, những lần tiếp theo SQL Server sẽ sử dụng lại plan cachenên sẽ cho tốc độ xử lý tối ưu. Show Stored procedure rất tiện lợi cho người quản trị database (DBA), nó giúp DBA tạo ra những nhóm câu lệnh và gửi đến một bô phận khác mà họ sẽ không cần quan tâm đến nội dung bên trong stored procedure có gì, họ chỉ quan tâm đến tham số đầu vào và đầu ra. Ví dụ bạn viết một stored procedure lấy danh sách sản phẩm bán chạy theo ngày, sau đó bạn gửi stored này qua bộ phận development kèm theo tài liệu hướng dẫn sử dụng thì lúc này bộ phận DEV không cận quan tâm đến nội dung bên trong của stored mà chỉ cần thông tin tham số truyền vào và kết quả trả về của stored. Bài viết này được đăng tại 2. Tạo Stored Procedure trong SQL ServerChúng ta hãy bắt đầu bằng những ví dụ đơn giản nhất nhé. Giả sử mình có câu truy vấn lấy danh sách sản phẩm như sau:
Trong đó stored_name là tên của stored mà bạn muốn đặt. Như ở ví dụ ở trên thì tên của nó làuspProductList. Đối với câu lệnh CREATE PROCEDURE thì bạn có thể rút ngắn thành CREATE PROC. Bây giờ bạn 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ụ như hình chụp dưới đây. Nếu bạn làm đúng tất cả thì sẽ nhận được kết quả là: Để xem danh sách stored procedure đã tạo trong SQL Server thì bạn hãy vào database ->Programmability > Stored Procedures. Trường hợp không xuất hiện stored vừa tạo thì hãy click dấu xoay tròn để reload. 3. Gọi Stored Procedure trong SQL ServerĐể gọi một stored procedure thì bạn sử dụng lệnhEXECUTE hoặc EXEC theo sau là tên của stored.
Hoặc
Như ở ví dụ phần 2 thì kết quả sẽ như hình sau: 4. Thay đổi Stored Procedure trong SQL ServerĐể thay đổi stored thì bạn sử dụng lệnhALTER PROCEDURE và tên của stored sẽ nằm phía sau. Ví dụ giờ muốn muốn thay đổi cách sắp xếp kết quả trả về từ product_name thànhlist_pricecủa spuspProductListthì viết như sau:
Hoặc bạn click chuột phải vào stored cần sửa, sau đó chọn menuModify thì nó sẽ hiển thị ra một trang query mới với cấu trúc của stored cũ. 5. Xóa Stored Procedure trong SQL ServerĐể xóa stored procedure thì bạn sử dụng lệnhDROP PROCEDURE hoặcDROP PROC. Trong đó sp_name là tên của stored muốn xóa. Ví dụ mình muốn xóa stored procedure có tên làuspProductList thì sẽ viết như sau: Như vậy trong bài này đã giới thiệu khái niệm stored procedure là gì, và qua đây bạn cũng đã biết các thao tác như: Tạo stored, sửa stored, chạy stored và xóa stored. Chúc bạn học tốt và hẹn gặp lại bài tiếp theo. Một stored procedure là một mã SQL đã được chuẩn bị sẵn mà bạn có thể lưu, vì thế mã này có thể được sử dụng lại nhiều lần. Nếu bạn có một truy vấn SQL được viết lặp lại nhiều lần, hãy lưu nó là một stored procedure và sau đó chỉ cần gọi nó để thực thi. Bạn cũng có thể chuyển các tham số cho một stored procedure, để stored procedure có thể hoạt động dựa trên các giá trị tham số được truyền vào. 1. Cú pháp của Stored ProcedureCREATE PROCEDURE tên procedure AS Câu lệnh SQL GO; Câu lệnh thực thi một Stored Procedure: EXEC tên procedure; 2. Ví dụ về Stored ProcedureĐể thực hiện các ví dụ này, bạn cần nhập cơ sở dữ liệu mẫu Northwind vào SQL Server Management Studio. Hãy xem bài viết hướng dẫn ngay dưới đây: Tham khảo: Hướng dẫn tải và cài đặt dữ liệu mẫu Northwind trong SQL Server Management Studio Câu lệnh SQL dưới đây tạo ra một stored procedure có tên là “SelectAllCustomers” để chọn tất cả bản ghi từ bảng Customers: CREATE PROCEDURE SelectAllCustomers AS SELECT * FROM Customers GO; Câu lệnh thực thi procedure ở trên là: EXEC SelectAllCustomers; Bằng cách sử dụng stored procedure các bạn có thể tiết kiệm số dòng lệnh cần phải viết khi có những dòng lệnh lặp lại nhiều lần. Đây là tính năng rất hữu ích khi phải làm việc với các cơ sở dữ liệu lớn và có nhiều dòng lệnh. Trên đây là những gì bạn cần biết về stored procedure và cách sử dụng, chúng ta sẽ ứng dụng trong các ví dụ thực tiễn khi phân tích trong các bài viết sau, đừng quên đón đọc tại BAC's Blog. Nguồn tham khảo: Nhu cầu đào tạo doanh nghiệp BAC là đơn vị đào tạo BA đầu tiên tại Việt Nam. Đối tác chính thức của IIBA quốc tế. Ngoài các khóa học public, BAC còn có các khóa học in house dành riêng cho từng doanh nghiệp. Chương trình được thiết kế riêng theo yêu cầu của doanh nghiệp, giúp doanh nghiệp giải quyết những khó khăn và tư vấn phát triển. Tham khảo chương trình đào tạo:
Các bài viết liên quan SQL:
Các bài viết liên quan Power BI:
Các bài viết liên quan:
BAC - Biên soạn và tổng hợp nội dung
Click để đọc tiếp
|