Kom igångKom igång gratis

Triggers kontra beräknade kolumner

När du fortsätter att analysera databasen hittar du två andra intressanta objekt:

  • Tabellen SalesWithPrice har en kolumn som beräknar TotalAmount som Quantity * Price. Det sker via en beräknad kolumn som använder kolumner från samma tabell.

  • Triggern SalesCalculateTotalAmount skapades på tabellen SalesWithoutPrice. Kolumnen Price ingår inte i SalesWithoutPrice, vilket innebär att en beräknad kolumn inte kan användas för TotalAmount. Triggern löser den begränsningen genom att hämta Price-kolumnen från tabellen Products.

Den här övningen är en del av kursen

Bygga och optimera triggers i SQL Server

Visa kurs

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

-- 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;
Redigera och kör kod