НачатьНачать бесплатно

Триггеры и вычисляемые столбцы

Продолжая анализ базы данных, вы обнаруживаете ещё два интересных объекта:

  • В таблице SalesWithPrice есть столбец, который вычисляет TotalAmount как Quantity * Price. Это реализовано с помощью вычисляемого столбца, использующего столбцы из той же таблицы.

  • Триггер SalesCalculateTotalAmount создан для таблицы SalesWithoutPrice. Столбец Price не входит в состав таблицы SalesWithoutPrice, поэтому вычисляемый столбец здесь применить нельзя. Триггер обходит это ограничение, обращаясь к столбцу Price из таблицы Products.

Это упражнение является частью курса

Создание и оптимизация триггеров в SQL Server

Посмотреть курс

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

-- 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;
Редактировать и запускать код