Trigger sql là gì

     

Trong bài xích này họ sẽ học cách sử dụngINSTEAD OF trigger trong SQL Server, đây là tính năng được cho phép bạn làm lơ câu lệnh SQL INSERT, UPDATE hoặc DELETE.

Bạn đang xem: Trigger sql là gì

*


*

1.INSTEAD OF trigger là gì?

INSTEAD OF trigger là một trong loại trigger sệt biệt, nó được cho phép bạn bỏ lỡ câu lệnh INSERT, UPDATE hoặc DELETE bên trên một table hoặc view. Ví dụ bạn có nhu cầu khi có hành vi delete bên trên table sản phẩm thì bạn không xóa sản phẩm mà vẫn chạy một câu lệnh UPDATE status của product đó sang chế độ ẩn. Mặc dù chúng ta có thể không sử dung lệnh DELETE mà lại UPDATE trực tiếp cũng được, tuy vậy để đảm bảo mọi câu tầm nã vấn đầy đủ đúng thì nên cần sử dụng trigger.

Cú pháp của chính nó cũng không tương đối gì trigger:


CREATE TRIGGER trigger_nameON view_name INSTEAD OF <,> <,> ASBEGIN sql_statementsEND

Mình đã không giải thích các thông số nữa vì các bạn đã học tập nó rồi. Hiện nay ta sẽ thực hành thực tế một ví dụ để bạn dễ dàng nắm bắt hơn.

Bài viết này được đăng tại

2. Ví dụ như INSTEAD OF trigger


Trong ví dụ như này áp dụng database mẫu.

Một ví dụ điển hình của trigger chính là ghi đè dữ liệu của các thao tácinsert, update, or delete bên trên view.

Giả sử một vận dụng cần thêm 1 thương hiệu mới vào vào bảng brands, mặc dù các chữ tín mới thì cần lưu trữ ở một bảng không giống tên làbrand_approvals để được phê duyệt, sau khoản thời gian phê duyệt kết thúc thì sẽ thêm nó vào bảng brands.

Để triển khai điều này thì ta sẽ tạo nên một view thương hiệu làvw_brands để những ứng dụng thêm dữ liệu mới, nếu chữ tín được cung cấp view thì INSTEAD OF trigger sẽ tiến hành kích hoạt và chèn vào bảngbrand_approvals.

Hình hình ảnh sau phía trên minh họa quy trình này:

Các bước tiến hành như sau:

Bước 1: chế tác bảngbrand_approvals

Hãy sử dụng câu lệnh SQL sau đây để chế tạo ra bảngbrand_approvals, bảng này đã lưu trữ những thương hiệu không được phê duyệt.

Xem thêm: Học Ngay 7 Cách Pha Mắm Tôm Chấm Thịt Chó Ngon Chấm Là Mê, Cách Pha Mắm Tôm Chấm Thịt Chó


CREATE TABLE production.brand_approvals( brand_id INT IDENTITY PRIMARY KEY, brand_name VARCHAR(255) NOT NULL);

Bước 2: chế tác Viewvw_brands

Bây giờ bạn hãy tạo view thương hiệu làvw_brands bằng câu SQL sau.


CREATE VIEW production.vw_brands ASSELECT brand_name, "Approved" approval_statusFROM production.brandsUNIONSELECT brand_name, "Pending Approval" approval_statusFROM production.brand_approvals;

Dữ liệu ban dầu của view đó là dữ liệu của tất cả hai bảng brands vàbrand_approvals.

Như vậy họ sẽ có tía cách dùng:

Nếu mong mỏi lấy tất cả thương hiệu thì lấy trong viewvw_brandsNếu ao ước lấy chữ tín đã được phê chăm chút thì lấy trong bảng brandsNếu mong mỏi lấy chữ tín chưa phê coi sóc thì mang trong bảngbrand_approvals

Thực tế bạn có thể không áp dụng cách này mà thêm một fỉed status vào table brands, bởi thế sẽ đơn giản hơn rất nhiều. Mặc dù vì chúng ta đang học tập nên hãy đọc ví dụ này.

Bước 3: tạo thành trigger

Ta sẽ đề xuất một trigger gán vào viewvw_brands, mỗi một khi có thao tác làm việc insert vào view thì sẽ insert nó vào tablebrand_approvals.


CREATE TRIGGER production.trg_vw_brands ON production.vw_brandsINSTEAD OF INSERTASBEGIN mix NOCOUNT ON; INSERT INTO production.brand_approvals ( brand_name ) SELECT i.brand_name FROM inserted i WHERE i.brand_name NOT IN ( SELECT brand_name FROM production.brands );END

Bây giờ các bạn hãy thử thêm 1 dòng tài liệu vào view xem sao nhé.


INSERT INTO production.vw_brands(brand_name)VALUES("Eddy Merckx");

Chạy câu truy tìm vấn sau nhằm xem tài liệu hiện bao gồm trong view.


SELECT brand_name, approval_statusFROM production.vw_brands;

Hãy xem dữ liệu trong bảngbrand_approvals.

Xem thêm: Sửa Điều Khiển Điều Hòa Panasonic, Ách Như Nào Hiệu Quả


SELECT *FROM production.brand_approvals;

Như vậy trong bài này đã trình làng với các bạn cách thực hiện INSTEAD OF trigger vào SQL Server, đó là một chức năng rất hay cùng giúp những nhà xây cất database có không ít tùy lựa chọn hơn trong câu hỏi phân tích mô hình CSDL.


bài bác trước bài bác sau


Hàm CHAR vào SQL vps

Cách thực hiện hàm CHAR vào SQL vps



Hàm CHARINDEX vào SQL hệ thống

Cách thực hiện hàm CHARINDEX vào SQL server



Hàm CONCAT trong SQL vps

Cách sử dụng hàm CONCAT vào SQL hệ thống



Hàm + trong SQL vps

Cách thực hiện hàm + trong SQL server


Hàm DATALENGTH trong SQL vps

Cách áp dụng hàm DATALENGTH trong SQL server


Hàm LEFT trong SQL hệ thống

Cách thực hiện hàm LEFT vào SQL vps


Hàm LEN vào SQL vps

Cách thực hiện hàm LEN vào SQL hệ thống


Hàm LOWER vào SQL vps

Cách áp dụng hàm LOWER vào SQL hệ thống


Hàm LTRIM vào SQL hệ thống

Cách áp dụng hàm LTRIM vào SQL hệ thống


Hàm NCHAR vào SQL vps

Cách thực hiện hàm NCHAR vào SQL hệ thống


Hàm PATINDEX trong SQL server

Cách sử dụng hàm PATINDEX trong SQL hệ thống


Hàm REPLACE trong SQL hệ thống

Cách áp dụng hàm REPLACE trong SQL vps


Hàm RIGHT trong SQL vps

Cách sử dụng hàm RIGHT vào SQL server


Hàm RTRIM vào SQL hệ thống

Cách sử dụng hàm RTRIM vào SQL vps


Hàm SPACE trong SQL vps

Cách sử dụng hàm SPACE trong SQL vps


Hàm STR trong SQL hệ thống

Cách áp dụng hàm STR vào SQL server


Hàm UPPER vào SQL vps

Cách thực hiện hàm UPPER vào SQL server


Hàm SUBSTRING trong SQL hệ thống

Cách sử dụng hàm SUBSTRING trong SQL server


Hàm STUFF vào SQL hệ thống

Cách thực hiện hàm STUFF vào SQL hệ thống


Hàm ABS trong SQL server

Cách áp dụng hàm ABS trong SQL hệ thống


WORDPRESS
HTML Templates
Theme WordPress
Plugin WordPress
thiết kế WordPress
mẹo nhỏ WordPress
WEB HOSTING
quản trị Linux
mẹo nhỏ Hosting
kiến thức Domain
WEB FRONTEND
Javascript
AngularJS
jQuery
jQuery smartphone
HTML & CSS
Bootstrap
TypeScript
SASS CSS
VueJS
NestJS
học tập ReactJS
WEB BACKEND
PHP
Codeigniter
Laravel
Phalcon
OpenCart
NodeJS
Blogspot
DATABASE
học tập MySQL
học tập MongoDB
csdl căn bạn dạng
học Oracle
học tập SQL hệ thống
học tập SQLite
PROGRAMMING
Python
Java
Pascal
học tập C#
học tập Ruby
học tập Swift
C / C++
Kotlin
Golang
lời giải
Visual Basic
MOBILE DEV
React Native
Học ios
apk
CÔNG CỤ
học tập Git
Testing
Control Panel
Dev Tool
FFmpeg
TIN HỌC
Excel
Word
PowerPoint
Access
Photoshop
MÔN HỌC
tiếng Anh
Toán
tiếng Nhật
Văn học tập
VIDEO
CSS Lab
PHP Lab
ra mắt
reviews Liên hệ chế độ Điều khoản
link
Thủ thuật download Game Ứng dụng Tin học Môn học tập
liên kết hay

Trang chủ bao gồm thứcThabet