tailieunhanh - Thủ tục lưu trữ

- Trigger là một dạng đặc biệt của thủ tục lưu trữ, - Một Trigger được tạo cho một bảng và dùng để kiểm tra các ràng buột toàn vẹn phức tạp hoặc cập nhật dữ liệu của các bảng liên quan | Bài 2: Trigger Trang 1. Giới thiệu - Trigger là một dạng đặc biệt của thủ tục lưu trữ - Trigger không có tham số - Không gọi thực hiện bằng lệnh Exec, mà tự động kích hoạt khi dữ liệu trên bảng có liên quan đến Trigger được cập nhật - Một Trigger được tạo cho một bảng và dùng để kiểm tra các ràng buột toàn vẹn phức tạp hoặc cập nhật dữ liệu của các bảng liên quan Bài 2: Trigger Trang 2. Tạo trigger Cú pháp: CREATE TRIGGER Tên_trigger ON Tên_Bảng/Tên View FOR Insert[,Update,Delete] AS [IF UPDATE(tên_cột) [AND UPDATE(tên_cột)|OR UPDATE(tên_cột)] .] Các_câu_lệnh_của_thủ_tục Bài 2: Trigger Trang • Tên_Bảng / Tên_View: là tên bảng hoặc tên view (khung nhìn) mà Trigger được tạo Trong đó: • Tên_trigger: Tên của trigger cần tạo Bài 2: Trigger Trang Các thức hoạt động của Trigger: - Trong Trigger, SQL tự động tạo 2 bảng là INSERTED và DELETED - Cấu trúc của 2 table tương tự như cấu trúc của table mà trigger tác . | Bài 2: Trigger Trang 1. Giới thiệu - Trigger là một dạng đặc biệt của thủ tục lưu trữ - Trigger không có tham số - Không gọi thực hiện bằng lệnh Exec, mà tự động kích hoạt khi dữ liệu trên bảng có liên quan đến Trigger được cập nhật - Một Trigger được tạo cho một bảng và dùng để kiểm tra các ràng buột toàn vẹn phức tạp hoặc cập nhật dữ liệu của các bảng liên quan Bài 2: Trigger Trang 2. Tạo trigger Cú pháp: CREATE TRIGGER Tên_trigger ON Tên_Bảng/Tên View FOR Insert[,Update,Delete] AS [IF UPDATE(tên_cột) [AND UPDATE(tên_cột)|OR UPDATE(tên_cột)] .] Các_câu_lệnh_của_thủ_tục Bài 2: Trigger Trang • Tên_Bảng / Tên_View: là tên bảng hoặc tên view (khung nhìn) mà Trigger được tạo Trong đó: • Tên_trigger: Tên của trigger cần tạo Bài 2: Trigger Trang Các thức hoạt động của Trigger: - Trong Trigger, SQL tự động tạo 2 bảng là INSERTED và DELETED - Cấu trúc của 2 table tương tự như cấu trúc của table mà trigger tác động Hành động Table INSERTED Table DELETED INSERT Dữ liệu được thêm mới Không có dữ liệu DELETE Không có dữ liệu Dữ liệu bị xóa UPDATE Dữ liệu được cập nhật Dữ liệu trước khi cập nhật Bài 2: Trigger Trang 3. Sử dụng mệnh đề IF UPDATE trong trigger - Sử dụng mệnh đề IF UPDATE để thực hiện một số thao tác dữ liệu liên quan đến một số cột nhất định nào đó - Mệnh đề IF UPDATE không sử dụng được với câu lệnh DELETE Bài 2: Trigger Trang 3. Sử dụng mệnh đề IF UPDATE trong trigger - Ví dụ CREATE TABLE Vidu ( A INT, B INT, C INT ) CREATE TRIGGER trg_Vidu_test ON Vidu FOR UPDATE AS IF UPDATE(A) Print 'A updated' IF UPDATE(C) Print 'C updated' UPDATE Vidu SET A=100 WHERE A=1 Câu lệnh kích hoạt trigger và hiện kết quả: A updated Bài 2: Trigger Trang 4. ROLLBACK TRANSACTION và trigger - Một trigger có khả năng nhận biết sự thay đổi dữ liệu trên một bảng, do đó nó có khả năng phát hiện và hủy bỏ những thao tác không đảm bảo .

TỪ KHÓA LIÊN QUAN