Overblog
Edit post Follow this blog Administration + Create my blog
dionysus

Stored Procedure trong SQL

December 7 2019 , Written by tokyo_ai Published on #SQL

Stored Procedure trong SQL

      Procedure là thủ tục nội tại không trả về giá trị và là một chương trình trong cơ
sở dữ liệu gồm nhiều câu lệnh mà chúng ta lưu lại cho những lần sử dụng sau.
Trong SQL Server, chúng ta 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 nhưng nó cho biết việc thực thi thành công
hay thất bại.
Ưu điểm của Stored Procedure là:

 Động: Stored procedure cho phép điều chỉnh chương trình cho phù hợp:
Chúng ta có chỉ tạo stored procedure một lần và lưu trữ trong database một
lần, trong chương trình chúng ta có thể gọi nó với số lần bất kỳ. Stored
procedure có thể được chỉ rõ do một người nào đó tạo ra và sự thay đổi của
chúng hoàn toàn độc lập với source code của chương trình.
 Nhanh hơn: Stored procedure có khả năng phân tích cú pháp và tối ưu hóa
trong lần thực thi đầu tiên và một phiên bản dịch của chúng trong đó sẽ được
lưu trong bộ nhớ để sử dụng cho lần sau, nghĩa là trong những lần thực hiện
sau chúng không cần phải phân tích cú pháp và tối ưu lại, mà chúng sẽ sử
dụng kết quả đã được biên dịch trong lần đầu tiên. Do đó stored procedure
có khả năng thực thi nhanh hơn là việc xử lý một đoạn lệnh Transact – SQL
lớn, lặp.


Định nghĩa về một stored procedure:
 Tên của stored procedure
 Các tham số
 Thân của stored procedure: bao gồm các lệnh

1. Lệnh tạo mới Procedure (Create procedute)

CREATE PROC SP_TENTHUTUC(@THAMBIEN1 KIEUDL1(KT),...)
AS
BEGIN
DECLARE @BIEN1 KIEUDL1(KT) --BIẾN CỤC BỘ
...
XỬ LÝ TRONG THỦ TỤC
END

Gọi thủ tục: EXEC TENTHUTUC DOISO1,...

2.Lệnh cập nhật Stored Procedure trong SQL Server

ALTER PROC SP_TENTHUTUC(@THAMBIEN1 KIEUDL1(KT),...)
AS
BEGIN
DECLARE @BIEN1 KIEUDL1(KT) --BIẾN CỤC BỘ
...
XỬ LÝ TRONG THỦ TỤC
END

3.Lệnh xóa bỏ Procedure( Drop Procedure) trong SQL Server

DROP PROCEDURE procedure_name;

 

Share this post
To be informed of the latest articles, subscribe:
Comment on this post