Thông tin liên hệ
- 036.686.3943
- admin@nguoicodonvn2008.info
Procedure trong SQL Server có ý nghĩa thế nào trong lập trình? Cách sử dụng Procedure SQL Server có khó không? Hãy cùng Quantrimang.com tìm hiểu nhé!
Procedure (Thủ tục) là một chương trình trong cơ sở dữ liệu gồm nhiều câu lệnh mà bạn lưu lại cho những lần sử dụng sau. Trong SQL Server, bạn có thể truyền các tham số vào procedure, tuy nó không trả về một giá trị cụ thể như function (hàm) nhưng cho biết việc thực thi thành công hay thất bại.
Lợi ích khi dùng Procedure trong SQL
Bài viết sẽ cung cấp cho bạn cú pháp và những ví dụ về cách tạo và xóa bỏ procedure trong SQL Server.
Để tạo một procedure trong SQL Server, ta sử dụng cú pháp như dưới đây:
CREATE { PROCEDURE | PROC } [schema_name.]procedure_name [ @parameter [type_schema_name.] datatype [ VARYING ] [ = default ] [ OUT | OUTPUT | READONLY ] , @parameter [type_schema_name.] datatype [ VARYING ] [ = default ] [ OUT | OUTPUT | READONLY ] ] [ WITH { ENCRYPTION | RECOMPILE | EXECUTE AS Clause } ] [ FOR REPLICATION ] AS BEGIN [declaration_section] executable_section END;
Tham số:
CREATE PROCEDURE spNhanvien @nhanvien_name VARCHAR(50) OUT AS BEGIN DECLARE @nhanvien_id INT; SET @nhanvien_id = 8; IF @nhanvien_id < 10 SET @nhanvien_name = 'Smith'; ELSE SET @nhanvien_name = 'Lawrence'; END;
Thủ tục trên được gán tên là spNhanvien, có một tham số là @nhanvien_name, output của tham số sẽ được dựa trên @nhanvien_id.
Sau đó, bạn có thể thực hiện tham chiếu spNhanvien như sau:
USE [test] GO DECLARE @site_name varchar(50); EXEC FindSite @site_name OUT; PRINT @site_name; GO
Một khi đã tạo thành công các procedure thì cũng sẽ có những trường hợp bạn muốn xóa bỏ procedure khỏi cơ sở dữ liệu vì một vài lý do.
Để xóa bỏ một procedure, ta có cú pháp sau:
DROP PROCEDURE procedure_name;
Tham số:
procedure_name: Tên procedure bạn muốn xóa bỏ...
DROP PROCEDURE spNhanvien;
Thực hiện lệnh này là bạn đã vừa xóa bỏ thủ tục spNhanvien khỏi database.
Bạn có thể tạo các thủ tục tạm thời tương tự như tạo bảng tạm thời. Database tempdb được dùng để tạo những thủ tục này. Bạn có thể chia thủ tục tạm thời thành 2 loại:
Thủ tục lưu trữ tạm thời cục bộ: Bạn có thể tạo kiểu này bằng cách dùng tiền tố # và chỉ truy cập trong phiên mà chúng được tạo. Khi đóng kết nối, quá trình này ngay lập tức kết thúc.
Ví dụ cách tạo một thủ tục tạm thời nội bộ:
CREATE PROCEDURE #Temp AS BEGIN PRINT 'Local temp procedure' END
Thủ tục lưu trữ tạm thời toàn cục: Bạn có thể tạo kiểu này bằng cách dùng ## làm tiền tố và truy cập từ phiên bất kỳ. Khi kết nối được dùng để tạo quá trình này đóng lại, thủ tục sẽ tự động kết thúc.
Ví dụ cách tạo thủ tục tạm thời toàn cục:
CREATE PROCEDURE ##TEMP AS BEGIN PRINT 'Global temp procedure' END
Nguồn tin: Quantrimang.com
Ý kiến bạn đọc
Những tin mới hơn
Những tin cũ hơn