#1 20-05-2013 16:47:03

plich

Polowe rzeczy umiescile tutaj

Zarejestrowany: 08-11-2011
Posty: 38
Punktów :   

Zad 4

ZADANIE 4

Spoiler:

--1
insert into test_pracownicy.dbo.pracownicy(
[nr_akt],[nazwisko],[stanowisko],[kierownik],[data_zatr],[placa],[id_dzialu])
values(9781,'PARMOWSKI','AKWIZYTOR',9235,GETDATE(),1150,70);
GO

--2
insert into test_pracownicy.dbo.pracownicy(
[nr_akt],[nazwisko],[stanowisko],[kierownik],[data_zatr],[placa],[id_dzialu])
values(9782,'CIESZKOWSKI','LABORANT',9332,GETDATE()+12,1200,50);
GO

--3
insert into test_pracownicy.dbo.STANOWISKA(
[STANOWISKO],[PLACA_MIN],[PLACA_MAX])
values(
'GLOWNY_OPERATOR',1700,3000);
GO

insert into test_pracownicy.dbo.STANOWISKA(
[STANOWISKO],[PLACA_MIN],[PLACA_MAX])
values(
'GLOWNY_LOGISTYK',1700,3000);
GO

insert into test_pracownicy.dbo.STANOWISKA(
[STANOWISKO],[PLACA_MIN],[PLACA_MAX])
values(
'GLOWNY_TECHNOLOG',2500,3500);
GO

--4
update test_pracownicy.dbo.pracownicy
set stanowisko='LABORANT', PLACA=PLACA*1.1,ID_DZIALU=50
WHERE STANOWISKO='PRAKTYKANT';
GO

--5
update test_pracownicy.dbo.pracownicy
set DOD_FUNKCYJNY=DOD_FUNKCYJNY+(SELECT MIN(PLACA)*0.1 FROM test_pracownicy.dbo.pracownicy)
WHERE STANOWISKO='DYREKTOR';
GO

--6
DELETE FROM test_pracownicy.dbo.pracownicy
WHERE STANOWISKO='PRAKTYKANT';
GO

--7
DELETE FROM test_pracownicy.dbo.pracownicy WHERE
DATA_ZATR=(SELECT MAX(DATA_ZATR) FROM test_pracownicy.dbo.pracownicy WHERE STANOWISKO='LOGISTYK');
GO

--8
CREATE TABLE test_pracownicy.dbo.pracownice (
nr_akt int,
nazwisko    VARCHAR(20),
stanowisko VARCHAR(18),
kierownik int CONSTRAINT prac_self_key1 REFERENCES pracownicy (nr_akt),
data_zatr    DATETIME,
data_zwol    DATETIME,
placa MONEY,
dod_funkcyjny MONEY,
prowizja MONEY,
id_dzialu    INT,
CONSTRAINT prac_primary_key1 PRIMARY KEY (nr_akt),
CONSTRAINT prac_foreign_key1 FOREIGN KEY (id_dzialu) REFERENCES dzialy (id_dzialu)
);
GO

insert into test_pracownicy.dbo.PRACOWNICE(
[nr_akt],[nazwisko],[stanowisko],[kierownik],[data_zatr],[placa],[DOD_FUNKCYJNY],[id_dzialu])
SELECT nr_akt,nazwisko,stanowisko,kierownik,data_zatr,placa,DOD_FUNKCYJNY,id_dzialu FROM test_pracownicy.dbo.PRACOWNICY
WHERE NAZWISKO LIKE '%SKA';
GO

select * from test_pracownicy.dbo.PRACOWNICE;
GO

--9
DROP TABLE test_pracownicy.dbo.PRACOWNICE;
GO

--10
CREATE TABLE test_pracownicy.dbo.projekty(
id_projektu varchar(5) CONSTRAINT unikalny unique,
nazwa varchar(100),
budzet money,
termin_zak datetime,
nr_kierownika int references pracownicy(nr_akt),
);
go

alter table test_pracownicy.dbo.projekty with nocheck
add constraint cyfry check(id_projektu like '[0-9][0-9][0-9][0-9][0-9]');

--11
ALTER TABLE test_pracownicy.dbo.projekty ADD typ varchar(20) not null;
go

ALTER TABLE test_pracownicy.dbo.projekty ADD opis varchar(500);
go

ALTER TABLE test_pracownicy.dbo.projekty ADD data_roz datetime;
go

--12
ALTER TABLE projekty
ADD CONSTRAINT DEFAULT_data_roz DEFAULT GETDATE() FOR data_roz;
go

--13
ALTER TABLE test_pracownicy.dbo.projekty DROP CONSTRAINT unikalny;
ALTER TABLE test_pracownicy.dbo.projekty DROP CONSTRAINT cyfry;

ALTER TABLE test_pracownicy.dbo.projekty
ALTER COLUMN id_projektu char(5) NOT NULL;

ALTER TABLE test_pracownicy.dbo.projekty
ADD CONSTRAINT unikalny UNIQUE(id_projektu);

ALTER TABLE test_pracownicy.dbo.projekty
ADD PRIMARY KEY(id_projektu);

--14
ALTER TABLE test_pracownicy.dbo.projekty ADD CONSTRAINT daty
CHECK (data_roz < termin_zak);

--16
ALTER TABLE test_pracownicy.dbo.pracownicy DROP COLUMN prowizja;

--17
ALTER TABLE test_pracownicy.dbo.pracownicy DROP CONSTRAINT prac_foreign_key;

ALTER TABLE test_pracownicy.dbo.pracownicy ADD CONSTRAINT KEY_CASCADE
FOREIGN KEY (id_dzialu) REFERENCES dzialy(id_dzialu) ON DELETE CASCADE;

--18
DELETE FROM test_pracownicy.dbo.dzialy WHERE id_dzialu=30;

--19
ALTER TABLE test_pracownicy.dbo.pracownicy
DROP CONSTRAINT prac_self_key;

DELETE FROM test_pracownicy.dbo.pracownicy WHERE nr_akt = 8902;

--20
INSERT INTO test_pracownicy.dbo.prac_archiw
SELECT * FROM test_pracownicy.dbo.pracownicy WHERE nr_akt = 8902;

--21
UPDATE test_pracownicy.dbo.pracownicy
SET kierownik=8903 WHERE kierownik=8902;

--22
CREATE INDEX INDEX_nazwisko ON test_pracownicy.dbo.pracownicy (nazwisko);

--23
CREATE INDEX INDEX_placa ON test_pracownicy.dbo.stanowiska(placa_min, placa_max);

--24
DROP INDEX test_pracownicy.dbo.stanowiska.INDEX_placa;
DROP INDEX test_pracownicy.dbo.pracownicy.INDEX_nazwisko;

Offline

 

Stopka forum

RSS
Powered by PunBB 1.2.23
© Copyright 2002–2008 PunBB
Polityka cookies - Wersja Lo-Fi


Darmowe Forum | Ciekawe Fora | Darmowe Fora
mata legowiskowa lekarz ginekolog warszawa pakiety wellness Ciechocinek