From 6e5c726effc35f7cbb8bc916ccdeefa49c7d3c7a Mon Sep 17 00:00:00 2001 From: Aelita4 Date: Tue, 11 Oct 2022 11:25:33 +0200 Subject: [PATCH] Lab 1 --- lab1.sql | 84 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 84 insertions(+) create mode 100644 lab1.sql diff --git a/lab1.sql b/lab1.sql new file mode 100644 index 0000000..a56c549 --- /dev/null +++ b/lab1.sql @@ -0,0 +1,84 @@ +-- 1 +CREATE DATABASE w65567_FIRMA; + +USE w65567_FIRMA; + +CREATE TABLE DZIALY( + KOD_dzialu INT CONSTRAINT dzial_primaty_key PRIMARY KEY, + NAZWA varchar(50), + LOKALIZACJA varchar(100) +); + +SELECT * FROM DZIALY; + +CREATE TABLE PRACOWNICY( + IDENTYFIKATOR INT IDENTITY CONSTRAINT pracownicy_primary_key PRIMARY KEY, + IMIE varchar(15), + NAZWISKO varchar(35), + STANOWISKO varchar(25), + KIEROWNIK INT, + DATA_ZATRUD DATE, + PENSJA decimal(10, 2), + PROWIZJA decimal(10, 2), + KOD_dzialu INT CONSTRAINT pracownicy_foreign_key REFERENCES DZIALY ON DELETE CASCADE +); + +SELECT * FROM PRACOWNICY; + +-- 2 +INSERT INTO DZIALY VALUES (10, 'Ksiegowosc', 'Rzeszow'); +INSERT INTO DZIALY VALUES (20, 'Badan', 'Krakow'); +INSERT INTO DZIALY VALUES (30, 'Sprzedazy', 'Zamosc'); +INSERT INTO DZIALY VALUES (40, 'Innowacji', 'Wroclaw'); + +SELECT * FROM DZIALY; + +INSERT INTO PRACOWNICY VALUES ('Kowalski','Jan','Prezes',NULL,'2002-01-01',7000.20,NULL,10); +INSERT INTO PRACOWNICY VALUES ('Głowacki','Mateusz','Kierownik',1,'2002-05-01',3210,150,40); +INSERT INTO PRACOWNICY VALUES ('Sikorski','Adam','Kierownik',1,'2002-05-01',3210,250,20); +INSERT INTO PRACOWNICY VALUES ('Nowak','Stanislaw','Kierownik',1,'2002-05-01',3210,350,30); +INSERT INTO PRACOWNICY VALUES ('Wisniewski','Marcin','Sprzedawca',4,'2007-06-27',1210,250,30); +INSERT INTO PRACOWNICY VALUES ('Kochanowski','Juliusz','Sprzedawca',4,'2005-11-22',1210,260,30); +INSERT INTO PRACOWNICY VALUES ('Charysz','Szczepan','Sprzedawca',4,'2006-12-01',1210,200,30); +INSERT INTO PRACOWNICY VALUES ('Kordecki','Adam','Laborant',3,'2002-12-11',2210,150,20); +INSERT INTO PRACOWNICY VALUES ('Kopacz','Ewa','Laborant',3,'2003-04-21',2110,150,20); +INSERT INTO PRACOWNICY VALUES ('Ziolkowska','Krystyna','Laborant',3,'2002-07-10',2510,100,20); +INSERT INTO PRACOWNICY VALUES ('Szela','Katarzyna','Konsultant',2,'2002-05-10',2810,100,40); +INSERT INTO PRACOWNICY VALUES ('Kędzior','Jakub','Analityk',2,'2002-05-10',2710,120,40); +INSERT INTO PRACOWNICY VALUES ('Ziobro','Marlena','Konsultant',2,'2003-02-13',2610,200,40); +INSERT INTO PRACOWNICY VALUES ('Pigwa','Genowefa','Ksiegowa',1,'2002-01-02',2000,NULL,10); + +SELECT * FROM PRACOWNICY; + +-- 4 +ALTER TABLE PRACOWNICY ADD ADRES varchar(10); + +SELECT * FROM PRACOWNICY; + +-- 5 +ALTER TABLE PRACOWNICY DROP COLUMN ADRES; + +SELECT * FROM PRACOWNICY; + +-- 6 +SELECT * FROM PRACOWNICY; + +UPDATE PRACOWNICY SET PENSJA = PENSJA + 100 WHERE KOD_dzialu = 10; + +SELECT * FROM PRACOWNICY; + +-- 7 +EXEC sp_rename 'PRACOWNICY.IMIE', 'NAZW'; +EXEC sp_rename 'PRACOWNICY.NAZWISKO', 'IMIE'; +EXEC sp_rename 'PRACOWNICY.NAZW', 'NAZWISKO'; + +-- 8 +EXEC sp_rename 'DZIALY', 'DEPARTAMENTY'; + +-- 9 +DELETE FROM PRACOWNICY WHERE IDENTYFIKATOR = 14; + +-- 10 +ALTER TABLE PRACOWNICY ADD CONSTRAINT zarob CHECK (PENSJA >= 1200); +--UPDATE PRACOWNICY SET PENSJA = 1000 WHERE IDENTYFIKATOR = 5; -- WILL ERROR +UPDATE PRACOWNICY SET PENSJA = 1300 WHERE IDENTYFIKATOR = 5; \ No newline at end of file