Baza danych RemBud
Zarchiwizowaną bazę danych RemBud dla SQL Servwera 2016 można pobrać tutaj. Na rysunku 1 przedstawiono diagram bazy danych RemBud.

Rys. 1. Diagram bazy danych RemBud
W bazie danych jest wyzwalacz, który dopisuje do tabeli pozsprzedaz wartości w kolumnach cena_jednostkowa, vat_jednostkowy i rabat_jednostkowy na podstawie danych zawartych w tabelach klienci i produkty. Na listingu1 przedstawiono kod tworzący wyzwalacz.
CREATE TRIGGER [dbo].[dopiszcene]
ON [dbo].[pozsprzedaz]
AFTER INSERT, UPDATE
AS
BEGIN
SET NOCOUNT ON;
DECLARE @pozycja int
SET @pozycja = (select idpoz from inserted )
DECLARE @cena numeric(8,2)
DECLARE @vat numeric(6,2)
DECLARE @rabat numeric(6,2)
SET @cena = (SELECT cena FROM produkty WHERE idproduktu = (SELECT idproduktu from pozsprzedaz WHERE idpoz = @pozycja) )
SET @vat = (SELECT vat FROM produkty WHERE idproduktu = (SELECT idproduktu from inserted) )
SET @rabat = (SELECT klienci.rabat
FROM klienci
WHERE idklienta = (select idklienta from nagsprzedaz where nagsprzedaz.nrfaktury = (SELECT nrfaktury FROM inserted)))
UPDATE pozsprzedaz SET cena_jednostkowa = @cena, vat_jednostkowy = @vat, rabat_jednostkowy = @rabat WHERE idpoz = @pozycja
END
Listing 1. Kod tworzacy wyzwalacz dopisujący do tabeli pozsprzedaz wartości w kolumnach cena_jednostkowa, vat_jednostkowy i rabat_jednostkowy na podstawie danych zawartych w tabelach klienci i produkt.