Lab 5 magazyny
This commit is contained in:
parent
d2809458d8
commit
654f354fbe
27
lab5.sql
27
lab5.sql
|
@ -190,4 +190,29 @@ END
|
|||
SELECT * FROM REJESTR
|
||||
SELECT * FROM PRACOWNICY
|
||||
|
||||
DELETE FROM PRACOWNICY WHERE IDENTYFIKATOR=17
|
||||
DELETE FROM PRACOWNICY WHERE IDENTYFIKATOR=17
|
||||
|
||||
-- 7. Korzystając z tabeli produkty stwórz transakcję, która przeniesie wszystkie
|
||||
-- produkty z magazynu nr 1 do magazynu nr 2. Maksymalna pojemność magazynu
|
||||
-- nr 2 wynosi 500. Jeżeli powyższa operacja spowoduje przepełnienie magazynu
|
||||
-- należy ją wycofać i przenieść produkty do magazynu nr 3.
|
||||
CREATE TABLE PRODUKTY (
|
||||
ID_PRODUKT INT IDENTITY(1,1),
|
||||
ILOSC DECIMAL(8, 2),
|
||||
NR_MAGAZYNU INT
|
||||
)
|
||||
|
||||
-- ILOSC NR_MAGAZYNU
|
||||
INSERT INTO PRODUKTY VALUES (250, 1)
|
||||
INSERT INTO PRODUKTY VALUES (250, 2)
|
||||
INSERT INTO PRODUKTY VALUES (250, 3)
|
||||
|
||||
SELECT * FROM PRODUKTY
|
||||
|
||||
BEGIN TRANSACTION zmiana
|
||||
SAVE TRANSACTION p1
|
||||
UPDATE PRODUKTY SET NR_MAGAZYNU=2 WHERE NR_MAGAZYNU=1
|
||||
IF (SELECT sum(ILOSC) FROM PRODUKTY WHERE NR_MAGAZYNU=2) > 500
|
||||
ROLLBACK TRANSACTION p1
|
||||
UPDATE PRODUKTY SET NR_MAGAZYNU=3 WHERE NR_MAGAZYNU=1
|
||||
COMMIT TRANSACTION
|
Loading…
Reference in New Issue