Bắt đầu ngayBắt đầu miễn phí

Trigger so với cột tính toán (computed column)

Khi tiếp tục phân tích cơ sở dữ liệu, bạn nhận thấy hai đối tượng thú vị khác:

  • Bảng SalesWithPrice có một cột tính TotalAmount bằng Quantity * Price. Điều này được thực hiện bằng cột tính toán (computed column), sử dụng các cột trong cùng một bảng để tính.

  • Trigger SalesCalculateTotalAmount được tạo trên bảng SalesWithoutPrice. Cột Price không nằm trong bảng SalesWithoutPrice, vì vậy không thể dùng cột tính toán cho TotalAmount. Trigger khắc phục hạn chế này bằng cách dùng cột Price từ bảng Products.

Bài tập này là một phần của khóa học

Xây dựng và Tối ưu hóa Trigger trong SQL Server

Xem khóa học

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

-- Add the following rows to the table
INSERT INTO ___ (Customer, Product, Price, Currency, Quantity)
VALUES ('Fruit Mag', 'Pomelo', 1.12, 'USD', 200),
	   ('VitaFruit', 'Avocado', 2.67, 'USD', 400),
	   ('Tasty Fruits', 'Blackcurrant', 2.32, 'USD', 1100),
	   ('Health Mag', 'Kiwi', 1.42, 'USD', 100),
	   ('eShop', 'Plum', 1.1, 'USD', 500);

-- Verify the results after adding the new rows
SELECT * FROM SalesWithPrice;
Chỉnh sửa và Chạy Mã