Triggery vs. vypočítané sloupce
Při dalším prozkoumávání databáze narazíš na dva zajímavé objekty:
Tabulka
SalesWithPriceobsahuje sloupec, který vypočítáváTotalAmountjakoQuantity * Price. K tomu slouží vypočítaný sloupec, který pro výpočet používá sloupce ze stejné tabulky.Trigger
SalesCalculateTotalAmountbyl vytvořen na tabulceSalesWithoutPrice. SloupecPricenení součástí tabulkySalesWithoutPrice, takže vypočítaný sloupec nelze použít proTotalAmount. Trigger toto omezení obchází tím, že využívá sloupecPricez tabulkyProducts.
Toto cvičení je součástí kurzu
Tvorba a optimalizace triggerů v SQL Serveru
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
-- 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;