click

Stored Procedure Sql Là Gì, Stored Procedure Trong Sql Server

Stored Procedure Sql La Gi Stored Procedure Trong Sql Server

Stored Procedure Sql Là Gì, Stored Procedure Trong Sql Server

Stored procedure trong SQL Server được cần sử dụng để nhóm một hoặc nhiều câu lệnh Transact-SQL thành
các đơn vị, xúc tích. Stored procedure được tàng trữ phía dưới dạng những đối tượng người sử dụng, quý
người sử dụng được lấy tên, trong sever cơ sở tài liệu SQL Server.

Bài Viết: Stored procedure sql là gì

Khi
tất cả chúng ta, gọi một stored procedure lần
Thứ nhất,, SQL Server sẽ tạo, một
kế hoạch xúc tiến and tàng trữ nó trong bộ đệm. Trong
những lần, xúc tiến tiếp theo sau của stored procedure, SQL Server cần sử dụng lại
kế hoạch để stored procedure
rất có thể, xúc tiến rất là nhanh với
hiệu suất, an toàn và đáng tin cậy, và tin cậy,.

Trong hướng dẫn này, những
các bạn sẽ,
nguyên cứu mọi thứ bạn rất nên biết, về stored procedure trong SQL Server and chỉ cho bạn cách Xây dựng, và
hoạt động giải trí những stored procedure biến hóa linh hoạt, để Gia Công hóa truy vấn cơ sở tài liệu.

Hướng dẫn cơ bản về stored procedure trong SQL Server

Trong phần này, những
các bạn sẽ,
nguyên cứu cách
quản trị những stored procedure trong SQL Server
gồm có, tạo, xúc tiến, điều chỉnh, and xóa những stored procedure.

Tạo stored procedure đơn giản và giản dị, trong SQL Server

Câu lệnh SELECT sau trả về list những
sản phẩm từ bảng products trong cơ sở tài liệu mẫu BikeStores:

SELECT product_name, list_priceFROM production.productsORDER BY product_name;Để tạo, stored procedure phủ quanh
truy vấn này,
bạn phải, sử dụng câu lệnh CREATE PROCEDURE như sau:

CREATE PROCEDURE uspProductListASBEGIN SELECT product_name, list_price FROM production.products ORDER BY product_name;END;Trong cú pháp này:

uspProductList là tên thường gọi, của stored procedure.Từ khóa AS ngăn cách tiêu đề and phần thân của stored procedure.Nếu stored procedure có một câu lệnh, những từ khóa BEGIN and END
phủ bọc, câu lệnh là tùy chọn. Tuy nhiên, thế,
này là một vài, thực hành thực tiễn, tốt nhất, nhất có thể làm cho mã rõ ràng và cụ thể, hơn.Nhắc nhở,: ngoài từ khóa CREATE PROCEDURE, bạn cũng xuất hiện, thể cần sử dụng từ khóa CREATE PROC
Để triển khai, cho câu lệnh ngắn lại hơn.

Để biên dịch stored procedure này, bạn xúc tiến nó như một câu lệnh SQL đôi lúc trong SQL Server Management Studio như trong hình sau:

*

Nếu mọi thứ đều đúng chuẩn,, thì những,
các bạn sẽ, cảm nhận thấy, thấy thông tin sau:

Commands completed successfully.Nó nghĩa là stored procedure đã được biên dịch and tàng trữ thắng lợi vào cơ sở tài liệu.

Bạn cũng xuất hiện, thể tìm cảm nhận thấy, thấy stored procedure trong Object Explorer, trong Programmability > Stored Procedures như trong hình sau:

*


Thông thường,, bạn phải nhấp vào, nút Refresh để cập nhật thủ công bằng tay thủ công, những đối tượng người sử dụng, quý
người sử dụng cơ sở tài liệu trong Object Explorer.

Triển khai stored procedure trong SQL Server

Để xúc tiến stored procedure,
bạn phải, sử dụng câu lệnh EXECUTE hoặc EXEC theo sau là tên thường gọi, của stored procedure như sau:

EXECUTE sp_name;Hoặc là

EXEC sp_name;Với sp_name là tên thường gọi, của stored procedure mà bạn muốn xúc tiến.

Ví dụ, để xúc tiến stored procedure uspProductList,
bạn phải, sử dụng câu lệnh sau:

EXEC uspProductList;Stored procedure trả về đầu ra sau:

*

Điều chỉnh, stored procedure trong SQL Server

Để điều chỉnh, stored procedure trong SQL Server,
bạn phải, sử dụng câu lệnh ALTER PROCEDURE.


Thứ nhất,, stored procedure để xem, nội dung của chính bản thân mình, nó bằng phương pháp, nhấp chuột, phải vào tên stored procedure and chọn menu Modify:

*

Thứ 2,
chỉnh sửa và biên tập nội dung của stored procedure mà trong ví dụ đó
đó chính là thu xếp, những
sản phẩm theo niêm yết sửa chữa vì tên
sản phẩm:

ALTER PROCEDURE uspProductList AS BEGIN SELECT product_name, list_price FROM production.products ORDER BY list_price END;Thứ ba, nhấp vào, nút Execute, SQL Server điều chỉnh, stored procedure and trả về thông tin sau:

Commands completed successfully.Ngày này, nếu như bạn xúc tiến lại stored procedure, những
các bạn sẽ, cảm nhận thấy, thêm những
chỉnh sửa và biên tập
Đã có rất nhiều, quá nhiều, hiệu lực hiện hành:

EXEC uspProductList;Sau này cho cảm nhận thấy, thấy một vài, phần tính năng, đầu ra:

*

Xóa stored procedure trong SQL Server

Để xóa stored procedure trong SQL Server,
bạn phải, sử dụng câu lệnh DROP PROCEDURE hoặc DROP PROC như sau:

DROP PROCEDURE sp_name;Hoặc là

DROP PROC sp_name;Với sp_name là tên thường gọi, của stored procedure mà bạn muốn xóa.

Ví dụ: để xóa stored procedure uspProductList, bạn xúc tiến câu lệnh sau:

DROP PROCEDURE uspProductList;Trong phần này, bạn đã học cách
quản trị những stored procedure trong SQL Server
gồm có, tạo, xúc tiến, điều chỉnh, and xóa những stored procedure.

Stored procedure có tham số trong SQL Server

Trong phần này, chúng tôi sẽ giải phóng và mở rộng stored procedure được chấp nhận, truyền một hoặc nhiều tham số cho nó.
hiệu quả, của stored procedure sẽ
chỉnh sửa và biên tập dựa vào kinh phí đầu tư, của quá nhiều, tham số.

Tạo stored procedure có một tham số trong SQL Server


truy vấn trong tương lai trả về list
sản phẩm từ bảng products trong cơ sở tài liệu mẫu BikeStores:

SELECT product_name, list_priceFROM production.productsORDER BY list_price;Bạn cũng xuất hiện, thể tạo stored procedure phủ quanh
truy vấn này bằng phương pháp, cần sử dụng câu lệnh CREATE PROCEDURE như sau:

CREATE PROCEDURE uspFindProductsASBEGIN SELECT product_name, list_price FROM production.products ORDER BY list_price;END;Tuy nhiên, thế, lần này những bạn cũng có thể có, thể thêm một tham số vào stored procedure để tìm những
sản phẩm có niêm yết to
nhiều hơn nữa giá nguồn vào:

ALTER PROCEDURE uspFindProducts(
min_list_price AS DECIMAL)ASBEGIN SELECT product_name, list_price FROM production.products WHERE list_price >=
min_list_price ORDER BY list_price;END;Trong ví dụ này:


Thứ nhất,, chúng tôi đã, thêm một tham số mang tên, là
min_list_price. Tham số phải được
phủ bọc, bởi cặp dấu ngoặc tròn.

Xem Ngay:  Port Là Gì - Nghĩa Của Từ Port

Triển khai stored procedure có một tham số trong SQL Server

Để xúc tiến stored procedure uspFindProducts, bạn truyền một đối số cho nó như sau:

EXEC uspFindProducts 100;Sau này cho cảm nhận thấy, thấy đầu ra:

*

Stored procedure trả về toàn bộ những
sản phẩm có niêm yết to
nhiều hơn nữa hoặc bằng 100.

Nếu như bạn
chỉnh sửa và biên tập đối số thành 200, những
các bạn sẽ, nhận được một tập tính năng, khác:

EXEC uspFindProducts 200;Sau này cho cảm nhận thấy, thấy đầu ra:

*

Tạo stored procedure có rất nhiều lần, tham số trong SQL Server

Stored procedure
rất có thể, có một hoặc nhiều tham số. Những tham số được phân tách bằng dấu phẩy.

Câu lệnh sau điều chỉnh, stored procedure uspFindProducts bằng phương pháp, thêm một tham số được mang tên,
max_list_price AS DECIMAL)ASBEGIN SELECT product_name, list_price FROM production.products WHERE list_price >=
min_list_price AND list_price Khi stored procedure được điều chỉnh, thắng lợi, bạn cũng xuất hiện, thể xúc tiến nó bằng phương pháp, truyền hai đối số vào stored procedure, một cho
max_list_price như sau:

EXEC uspFindProducts 900, 1000;Sau này cho cảm nhận thấy, thấy đầu ra:

*

Sử dụng tên của tham số khi xúc tiến stored procedure trong SQL Server

Trong
trường hợp những stored procedure có rất nhiều lần, tham số, sẽ tốt nhất, nhất có thể hơn and rõ ràng và cụ thể, hơn khi xúc tiến cácstored procedure bằng phương pháp, cần sử dụng tên của quá nhiều, tham số.

Ví dụ, câu lệnh sau xúc tiến stored procedure uspFindProducts bằng phương pháp, cần sử dụng tên của quá nhiều, tham số
max_list_price = 1000;
hiệu quả, của stored procedure là hệt nhau,
tuy nhiên câu lệnh sẽ rõ ràng và cụ thể, hơn.

Tham số kiểu chuỗi ký tự cho stored procedure trong SQL Server

Câu lệnh trong tương lai thêm tham số
name AS VARCHAR(max))ASBEGIN SELECT product_name, list_price FROM production.products WHERE list_price >=
min_list_price AND list_price Trong mệnh đề WHERE của câu lệnh SELECT, chúng tôi đã, thêm
trường hợp sau:

product_name LIKE “%” +
name + “%”Bằng phương pháp, này, stored procedure trả về những
sản phẩm có niêm yết
Phía trong, khoanh vùng niêm yết tối thiểu and tối đa and tên
sản phẩm cũng xuất hiện, một đoạn văn bản mà bạn truyền vào.

Khi stored procedure được
chỉnh sửa và biên tập thắng lợi, bạn cũng xuất hiện, thể xúc tiến nó như sau:

EXEC uspFindProducts
name = “Trek”;Trong câu lệnh này, chúng tôi đã, cần sử dụng stored procedure uspFindProducts để tìm
sản phẩm có niêm yết
Phía trong, khoảng tầm 900 and 1.000 and tên của chúng có chứa từ Trek.

Hình Hình ảnh, trong tương lai cho cảm nhận thấy, thấy đầu ra:

*

Tạo những tham số tùy chọn cho stored procedure trong SQL Server

Khi
tất cả chúng ta, thực thì stored procedure uspFindProducts, bạn rất sẽ phải, truyền cả ba đối số tương ứng, với ba tham số của stored procedure.

SQL Server được chấp nhận, bạn chỉ định, những kinh phí đầu tư, mặc định cho những, tham số để khi
tất cả chúng ta, xúc tiến stored procedure, bạn cũng xuất hiện, thể bỏ dở những tham số có kinh phí đầu tư, mặc định.

Xem stored procedure trong tương lai:

ALTER PROCEDURE uspFindProducts(
name AS VARCHAR(max))ASBEGIN SELECT product_name, list_price FROM production.products WHERE list_price >=
min_list_price AND list_price Trong stored procedure này, chúng tôi đã, gán 0 làm kinh phí đầu tư, mặc định cho tham số
max_list_price.

Khi stored procedure được biên dịch, bạn cũng xuất hiện, thể xúc tiến nó mà không, cần truyền những đối số cho tham số
name = “Trek”;Đó
đó chính là tính năng,:

*

Trong
trường hợp này, stored procedure đã cần sử dụng kinh phí đầu tư, 0 cho tham số
max_list_price được gọi bằng tham số tùy chọn (optional parameters).

Tất yếu,, bạn cũng có thể có, thể truyền những đối số cho những, tham số tùy chọn. Ví dụ: câu lệnh sau trả về toàn bộ những
sản phẩm có niêm yết to
nhiều hơn nữa hoặc bằng 6.000 and tên chứa từ Trek:

EXEC uspFindProducts
name = “Trek”;

*

Sử dụng NULL làm kinh phí đầu tư, mặc định cho tham số của stored procedure trong SQL Server

Trong stored procedure uspFindProducts, chúng tôi đã, cần sử dụng 999.999 làm niêm yết tối đa mặc định.
Vấn đề đó, chưa ổn vì về sau bạn cũng xuất hiện, thể có những
sản phẩm có niêm yết to, không dừng lại ở đó,.

Một kỹ thuật nổi trội, để tránh, điều này
đó chính là cần sử dụng NULL làm kinh phí đầu tư, mặc định cho những, tham số:

ALTER PROCEDURE uspFindProducts(
name AS VARCHAR(max))ASBEGIN SELECT product_name, list_price FROM production.products WHERE list_price >=
max_list_price IS NULL OR list_price Trong mệnh đề WHERE, chúng tôi đã,
chỉnh sửa và biên tập
trường hợp để giải quyết và xử lý, kinh phí đầu tư, NULL cho tham số
max_list_price IS NULL OR list_price Tips: đó là một vài, biểu thức
trường hợp rất thú vị mà
các bạn sẽ, thấy rất nhiều lần, giữa những Dự Án BĐS trong thực tiễn khi đi thao tác.Câu lệnh trong tương lai xúc tiến stored procedure uspFindProducts để tìm
sản phẩm có niêm yết to
nhiều hơn nữa hoặc bằng 500 and tên có chứa từ Haro.

EXEC uspFindProducts
name = “Haro”;

*

Trong phần này, bạn đã học cách tạo and xúc tiến stored procedure với cùng một hoặc nhiều tham số. Bạn đã và đang học cách tạo những tham số tùy chọn and cần sử dụng NULL làm kinh phí đầu tư, mặc định cho những, tham số.

Biến trong SQL Server

Trong phần này, những
các bạn sẽ,
nguyên cứu về biến trong SQL Server
gồm có, khai báo biến, gán kinh phí đầu tư, cho biến and gán những trường kinh phí đầu tư, của bản ghi cho biến.

Biến là gì?

Biến là một vài, đối tượng người sử dụng, quý
người sử dụng chứa một kinh phí đầu tư,
Duy nhất, của 1 kiểu tài liệu cụ thể, ví dụ: integer, decimal, date hoặc chuỗi ký tự, v.v.

Xem Ngay:  Black Sheep Là Gì - Idioms About Family/ Thành Ngữ Về Gia Đình


tất cả chúng ta, thường cần sử dụng biến giữa những
trường hợp sau:

Là một bộ đếm vòng lặp để đếm số lần vòng lặp được tiến hành khởi công,.Để giữ một kinh phí đầu tư, được kiểm tra bằng câu lệnh vòng lặp, ví dụ
Điển hình nổi bật, như lệnh WHILE.Để tàng trữ kinh phí đầu tư, được trả về bởi một stored procedure hoặc một hàm.

Khai báo biến

Để khai báo một biến,
bạn phải, sử dụng câu lệnh DECLARE. Ví dụ: câu lệnh sau khai báo một biến mang tên,
model_year SMALLINT;Câu lệnh DECLARE tạo một biến bằng phương pháp, gán cho nó một tên and kiểu tài liệu. Tên biến phải ban sơ bằng ký tự
model_year là SMALLINT.

Xem Ngay: Dầu Khí Tiếng Anh Là Gì – Tiếng Anh Chuyên Ngành Dầu Khí

Theo mặc định, khi 1 biến được khai báo, kinh phí đầu tư, của chính bản thân mình, nó được đặt thành NULL.

Giữa tên biến and loại tài liệu, bạn cũng xuất hiện, thể cần sử dụng AStừ khóa tùy chọn như sau:

DECLARE
product_name VARCHAR(MAX);

Gán kinh phí đầu tư, cho biến

Để gán kinh phí đầu tư, cho 1 biến,
bạn phải, sử dụng câu lệnh SET. Ví dụ: câu lệnh sau gán 2018 cho biến
model_year trong mệnh đề WHERE để tìm những
sản phẩm theo năm của Mã Sản Phẩm:

SELECT product_name, model_year, list_price FROM production.productsWHERE model_year =
model_yearORDER BY product_name;Ngày này, bạn cũng xuất hiện, thể đặt mọi thứ lại với nhau and xúc tiến khối mã sau để sở hữu list những
sản phẩm có năm Mã Sản Phẩm là 2018:

DECLARE
model_year = 2018;SELECT product_name, model_year, list_price FROM production.productsWHERE model_year =
model_yearORDER BY product_name;Nhắc nhở,: để xúc tiến mã, bạn nhấn vào, nút Execute như trong hình sau, hoặc nhấn phím F5:

*

Hình Hình ảnh, trong tương lai cho cảm nhận thấy, thấy tính năng, đầu ra:

*

Tàng trữ tính năng,
truy vấn trong biến


quy trình tiến độ tiến trình, trong tương lai
diễn đạt cách tàng trữ tính năng,
truy vấn trong 1 biến:


Thứ nhất,, khai báo một biến mang tên,
product_count AS VARCHAR(MAX));
hiệu quả, như sau:

The number of products is 204Để ẩn số lượng, bản ghi bị liên quan,,
bạn phải, sử dụng câu lệnh sau:

SET NOCOUNT ON;

Select một bản ghi vào biến


quy trình tiến độ tiến trình, sau minh họa cách khai báo hai biến, gán một bản ghi cho chúng and xuất nội dung của quá nhiều, biến:


Thứ nhất,, khai báo những biến để tàng trữ tên
sản phẩm and niêm yết:

DECLARE
list_price = list_priceFROM production.productsWHERE product_id = 100;Thứ ba, xuất nội dung của quá nhiều, biến:

SELECT
list_price AS list_price;Đó
đó chính là tính năng,:

*

Cộng dồn những kinh phí đầu tư, vào trong 1 biến

Stored procedure trong tương lai có một tham số and trả về list những
sản phẩm phía dưới dạng chuỗi:

CREATE PROC uspGetProductList(
product_list với kiểu varchar and gán kinh phí đầu tư, của chính bản thân mình, nó thành trống.Thứ ba, chúng tôi đã, cần sử dụng câu lệnh PRINT để in ra list tên
sản phẩm.

Câu lệnh trong tương lai xúc tiến stored procedure uspGetProductList:

EXEC uspGetProductList 2018Hình Hình ảnh, trong tương lai cho cảm nhận thấy, thấy một vài, phần tính năng, đầu ra:

*

Trong phần này, bạn đã
nguyên cứu về biến trong SQL Server
gồm có, khai báo biến, gán kinh phí đầu tư, cho biến and gán những trường của bản ghi cho những, biến.

Tham số OUTPUT của stored procedure trong SQL Server

Trong phần này, những
các bạn sẽ,
nguyên cứu cách cần sử dụng những tham số OUTPUT (tham số đầu ra) trong SQL Server để trả tài liệu
trở về chương trình gọi.

Tạo tham số OUTPUT cho stored procedure

Để tạo, một tham số OUTPUT cho stored procedure,
bạn phải, sử dụng cú pháp sau:

parameter_name data_type OUTPUTMột stored procedure
rất có thể, có rất nhiều lần, tham số OUTPUT.
Ngoài ra, những tham số OUTPUT
rất có thể, ở ngẫu nhiên kiểu tài liệu hợp lệ nào như: số nguyên, ngày tháng and chuỗi.

Ví dụ: stored procedure trong tương lai tìm kiếm những
sản phẩm theo năm Mã Sản Phẩm and trả về số lượng,
sản phẩm trải qua, tham số OUTPUT là
product_count INT OUTPUT) ASBEGIN SELECT product_name, list_price FROM production.products WHERE model_year =
product_count INT OUTPUTThứ hai, sau câu lệnh SELECT,
tất cả chúng ta, đã gán số lượng, bản ghi được trả về bởi
truy vấn (
ROWCOUNT là một vài, biến mạng lưới hệ thống trả về số lượng, bản ghi được đọc bởi câu lệnh
phía đằng trước.

Khi
tất cả chúng ta, tiến hành khởi công, câu lệnh CREATE PROCEDURE trên, stored procedure uspFindProductByModel sẽ được biên dịch and lưu trong hạng mục cơ sở tài liệu.

Nếu mọi thứ đều ổn, SQL Server sẽ nêu ra thông tin sau:

Commands completed successfully.

Triển khai stored procedure với những, tham số OUTPUT

Để xúc tiến stored procedure với những, tham số OUTPUT, bạn tuân theo
quy trình sau:
Thứ nhất,, khai báo những biến để tàng trữ những kinh phí đầu tư, được trả về bởi những tham số OUTPUT.Thứ 2, cần sử dụng những biến này khi gọi xúc tiến stored procedure.

Ví dụ, câu lệnh sau tiến hành khởi công, stored procedure uspFindProductByModel:

DECLARE
count AS “Number of products found”;Hình Hình ảnh, trong tương lai cho cảm nhận thấy, thấy đầu ra:

*

Trong ví dụ này:


Thứ nhất,, chúng tôi khai báo biến
count INT;Kế tiếp, xúc tiến stored procedure uspFindProductByModel and truyền những tham số:

EXEC uspFindProductByModel
product_count.


tất cả chúng ta, cũng có thể có, thể xúc tiến stored procedure uspFindProductByModel ngắn gọn như sau:

EXEC uspFindProductByModel 2018,
count AS “Number of products found”;Trong phần này, bạn đã học cách cần sử dụng tham số OUTPUT để truyền tài liệu từ stored procedure
trở về chương trình gọi.

Câu lệnh BEGIN … END trong SQL Server

Trong phần này, những
các bạn sẽ,
nguyên cứu cách cần sử dụng câu lệnh BEGIN…END trong SQL Server để bọc một tập hợp những câu lệnh Transact-SQL thành một khối câu lệnh.

Xem Ngay:  Dateline Là Gì - Deadline Là Gì

Tổng quan về câu lệnh BEGIN…END trong SQL Server

Câulệnh BEGIN…END trong SQL Server được cần sử dụng để định nghĩa một khối câu lệnh. Một khối câu lệnh
gồm có, một tập hợp những câu lệnh SQL xúc tiến
cùng với nhau,.

Nói cách khác, nếu xem mỗi câu lệnh là một vài, câu văn thì câu lệnh BEGIN…END được chấp nhận, bạn định nghĩa một đoạn văn.

Sau này minh họa cú pháp của câu lệnh BEGIN…END:

BEGIN statement_blockENDTrong cú pháp này, bạn đặt một tập hợp những câu lệnh SQL trong số những từ khóa BEGIN and END, ví dụ:

BEGIN SELECT product_id, product_name FROM production.products WHERE list_price > 100000; IF
ROWCOUNT = 0 PRINT “No product with price greater than 100000 found”;ENDĐầu ra:

*

Để xem, những thông tin được tạo bởi câu lệnh PRINT, trong SQL Server Management Studio, bạn phải nhấp vào, tab Messages. Theo mặc định, tab Results được bật and tab Messages bị ẩn.

Trong ví dụ này:


Thứ nhất,, chúng tôi có một khối lệnh ban sơ bằng từ khóa BEGIN and kết thúc bằng từ khóa END.Nhắc nhở,:
ROWCOUNT là một vài, biến mạng lưới hệ thống trả về số lượng, bản ghi bị liên quan, bởi câu lệnh
phía đằng trước.

Câu lệnh BEGIN… END số lượng số lượng giới hạn, một khối xúc tích của quá nhiều, câu lệnh SQL. Chúng tôi thường cần sử dụng câu lệnh BEGIN…END ở đầu and cuối của 1 stored procedure and function.

Câu lệnh BEGIN…END cũng sẽ được, cần sử dụng cho những, câu lệnh IF ELSE, câu lệnh WHILE, v.v., để phủ quanh nhiều câu lệnh.

Câu lệnh BEGIN … END lồng nhau trong SQL Server

Khối câu lệnh BEGIN…END
rất có thể, lồng nhau trong SQL Server. Nó đơn giản và giản dị, nghĩa là bạn cũng xuất hiện, thể đặt một câu lệnh BEGIN…END trong 1 câu lệnhBEGIN… END khác .

Hãy Lưu ý, tới, ví dụ sau:

BEGIN DECLARE
name END ELSE BEGIN PRINT “No product found”; END;ENDTrong ví dụ này, chúng tôi đã, cần sử dụng câu lệnh BEGIN…END để bọc toàn bộ tổng thể khối câu lệnh. Phía
Bên trong, khối này, chúng mình cũng cần được, sử dụng BEGIN…END cho những, câu lệnh IF…ELSE.

Trong phần này, bạn đã
nguyên cứu về câu lệnh BEGIN…END trong SQL Server để bọc những câu lệnh Transact-SQL thành những khối lệnh.

CURSOR trong SQL Server

Trong phần này, những
các bạn sẽ,
nguyên cứu cách cần sử dụng CURSOR trong SQL Server để giải quyết và xử lý, một tập tính năng,,
mỗi lần, một bản ghi.

SQL Server
hoạt động giải trí dựa vào tập hợp, ví dụ, câu lệnh SELECT trả về một tập hợp những bản ghi được gọi bằng tập tính năng,. Tuy nhiên, thế, đôi chút, bạn cũng xuất hiện, thể muốn giải quyết và xử lý, một tập tài liệu theo từng bản ghi. Đó
đó chính là lúc CURSOR được cần sử dụng.

CURSOR là gì?

CURSOR (con trỏ) là một vài, đối tượng người sử dụng, quý
người sử dụng được chấp nhận, duyệt qua những bản ghi của tập tính năng,. Nó được chấp nhận, bạn giải quyết và xử lý, từng bản ghi riêng lẻ, được trả về bởi một
truy vấn.

Vòng đời của CURSOR trong SQL Server

Đó
đó chính là
quy trình
Để khởi tạo, and cần sử dụng một CURSOR:

*


Thứ nhất,, khai báo một CURSOR.

DECLARE cursor_name CURSOR FOR select_statement;Để khai báo một CURSOR, bạn chỉ định, tên của chính bản thân mình, nó sau từ khóa DECLARE với kiểu tài liệu là CURSOR and đống ý một câu lệnh SELECT định nghĩa tập tính năng, cho CURSOR.

Tiếp theo sau, mở CURSOR để xúc tiến câu lệnh SELECT:

OPEN cursor_name;Kế tiếp, duyệt từng bản ghi trong CURSOR and đưa vào trong 1 hoặc nhiều biến:

FETCH NEXT FROM cursor INTO variable_list;SQL Server đống ý biến mạng lưới hệ thống
FETCHSTATUS trả về 0, nghĩa là câu lệnh FETCH đã thắng lợi. Bạn cũng xuất hiện, thể cần sử dụng câu lệnh WHILE để duyệt toàn bộ những bản ghi từ CURSOR như trong khúc, mã sau:

WHILE
FETCH_STATUS = 0 BEGIN FETCH NEXT FROM cursor_name; END;Sau thời điểm đã duyệt qua toàn bộ bản ghi trong CURSOR, những những
các bạn sẽ, đóng CURSOR bằng lệnh sau:

CLOSE cursor_name;Sau cuối, phân bổ, CURSOR để giải phóng nó:

DEALLOCATE cursor_name;

Ví dụ CURSOR trong SQL Server

Chúng tôi sẽ cần sử dụng bảng products trong cơ sở tài liệu mẫu BikeStores để minh họa cho CURSOR trong SQL Server:

*


Thứ nhất,, khai báo hai biến để tàng trữ tên
sản phẩm and niêm yết and một CURSOR để tàng trữ tính năng, của
truy vấn lấy tên
sản phẩm and niêm yết từ bảng production.products:

DECLARE
list_price DECIMAL;DECLARE cursor_product CURSORFOR SELECT product_name, list_price FROM production.products;Tiếp theo sau, mở CURSOR:

OPEN cursor_product;Kế tiếp, duyệt từng bản ghi từ CURSOR and in ra tên
sản phẩm and niêm yết:

FETCH NEXT FROM cursor_product INTO
list_price; END;Kế tiếp, đóng CURSOR:

CLOSE cursor_product;Sau cuối, phân bổ, CURSOR để giải phóng nó.

DEALLOCATE cursor_product;Đó
đó chính là đoạn mã hoàn hảo nhất,:

DECLARE
list_price DECIMAL;DECLARE cursor_product CURSORFOR SELECT product_name, list_price FROM production.products;OPEN cursor_product;FETCH NEXT FROM cursor_product INTO
list_price; END;CLOSE cursor_product;DEALLOCATE cursor_product;Đó
đó chính là đầu ra một vài, phần:

*

Trong trong thực tiễn, những
các bạn sẽ, hiếm khi cần sử dụng CURSOR để giải quyết và xử lý, tập tính năng, vì chúng rất chậm.

Xem Ngay: Glyphosate Là Gì – Thuốc Diệt Cỏ Gây Ung Thư

Trong phần này, bạn đã học cách cần sử dụng CURSOR trong SQL Server để giải quyết và xử lý, một tập tính năng,,
mỗi lần, một bản ghi.

Thể Loại: Sẻ chia, Kiến Thức Cộng Đồng

Bài Viết: Stored Procedure Sql Là Gì, Stored Procedure Trong Sql Server

Thể Loại: LÀ GÌ

Nguồn Blog là gì: https://hethongbokhoe.com Stored Procedure Sql Là Gì, Stored Procedure Trong Sql Server

Leave a Reply

Your email address will not be published. Required fields are marked *