Lista 2

Transkrypt

Lista 2
Lista 2 - lab
Zad.1
a) Napisz skrypt SQL tworzący bazę danych Sklep i zawierającą tabele: Produkt, Klient,
Sprzedaz.
Tabela Produkt powinna zawierać następujące pola:
ProduktNumer – klucz główny, pole znakowe;
ProduktNazwa – pole znakowe, nie może być puste;
Cena – liczba zmiennopozycyjna, nie może być puste;
Dostępność – pole bit, nie może być puste;
Tabela Klient powinna zawierać:
KlientId – klucz główny sztuczny, pole liczbowe;
Nazwa – pole znakowe, nie może być puste;
Miasto – pole znakowe, może być puste;
Typ – pole znakowe, nie może być puste;
Tabel Sprzedaz powinna zawierać:
Id – klucz główny sztuczny;
KlientId – referencja do tabeli Klient;
ProduktNumer – referencja do tabeli Produkt;
Ilość – pole liczbowe, nie może być pusta;
Cena – liczba zmiennopozycyjna, nie może być pusta;
Data – typ daty, domyślnie powinna być wstawiana aktualna data;
Dodatkowo powinny być zdefiniowane następujące ograniczenia:
Klucze sztuczne powinny być automatycznie inkrementowane.
Pole Typ musi przyjmować wartość Indywidualny lub Firma.
Pole Ilość musi przyjmować wartość większą od 0.
b) Napisz skrypt dodający 10 produktów do tabeli Produkt, 10 klientów do tabeli Klient.
c) Za pomocą procedury składowanej wygeneruj 1000 transakcji sprzedażowych (tabela
Sprzedaz). Dane powinny zachowywać zdefiniowane powyżej ograniczenia.
Zad.2
Napisać skrypt generujący bazę danych z następującymi tabelami:
Sklep(nazwa, adres)
Towar(nazwa, producent),
Sprzedaż(nazwa sklepu, adres sklepu, nazwa towaru, producent, data, cena) która realizuje
połączenie wiele–do–wielu pomiędzy tabelami Sklep i Towar.
Poprzez utworzenie odpowiednich wyzwalaczy zdefiniuj operacje INSERT, UPDATE i
DELETE na tabeli Sprzedaz, które powinny działać następująco:
INSERT. Przy wstawieniu wiersza do tabeli Sprzedaz najpierw należy sprawdzić, czy wiersz
już istnieje. Jeśli tak, kończymy z odpowiednim komunikatem błędu, natomiast jeśli nie,
przechodzimy dalej i wykonujemy następujące czynności:
– Sprawdzamy, czy istnieją sklep i towar o podanych nazwach. Jeśli tak, sprawdzamy ich
dane i w przypadku, gdy cos się nie zgadza, kończymy operacje z odpowiednim komunikatem
błędu.
– W przypadku, gdy wstawiany wiersz zawiera dane sklepu lub towaru, którego w tabelach
Sklep i Towar jeszcze nie ma, uzupełniamy odpowiednie te tabele.
UPDATE. Przy modyfikacji należy nanieść odpowiednie zmiany na tabele Sklep i Towar.
DELETE. Przy usuwaniu sprawdzamy, czy sklep i towar z usuniętego wiersza występują
jeszcze gdzieś w tabeli Sprzedaż. Jeśli nie, usuwamy odpowiednie wiersze z tabel Sklep i
Towar.

Podobne dokumenty