ÎncepețiÎncepe gratuit

Triggere vs. coloane calculate

Continuând analiza bazei de date, descoperi alte două obiecte interesante:

  • Tabelul SalesWithPrice are o coloană care calculează TotalAmount ca Quantity * Price. Aceasta este o coloană calculată care folosește coloane din același tabel pentru calcul.

  • Triggerul SalesCalculateTotalAmount a fost creat pe tabelul SalesWithoutPrice. Coloana Price nu face parte din tabelul SalesWithoutPrice, deci o coloană calculată nu poate fi folosită pentru TotalAmount. Triggerul depășește această limitare utilizând coloana Price din tabelul Products.

Acest exercițiu face parte din cursul

Crearea și optimizarea triggerelor în SQL Server

Vezi cursul

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

-- 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;
Editează și rulează codul