Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- CREATE TABLE zlecenia (
- id INTEGER PRIMARY KEY,
- data_rozpoczecia DATE,
- nazwa varchar(40),
- zespol integer REFERENCES dzialy (id_dzialu),
- termin DATE NOT NULL,
- ukonczone varchar(3) NOT NULL, CHECK(ukonczone = 'tak' OR ukonczone = 'nie'),
- koszt INTEGER CHECK(koszt >= 0),
- CONSTRAINT too_early CHECK(termin < data_rozpoczecia)
- );
- CREATE TABLE pojazdy (
- id_pojazdu INTEGER PRIMARY KEY,
- nrVin INTEGER UNIQUE,
- marka varchar(30) CHECK(marka != ''),
- kolor varchar(30) CHECK(kolor != ''),
- wlasciciel varchar(30),
- uwagi varchar(50)
- );
- INSERT INTO pojazdy VALUES (1, 1, '', NULL, 'ja', 'brak uwag');
- DROP TABLE pojazdy;
- CREATE TABLE naprawy (
- id_naprawy INTEGER PRIMARY KEY,
- pojazd INTEGER,
- data_rozp DATE DEFAULT CURRENT_DATE NOT NULL,
- data_naprawy DATE,
- koszt INTEGER CHECK(koszt >= 0),
- opis_zgloszenia varchar(100) NOT NULL,
- CONSTRAINT data_rozp_too_early CHECK(data_rozp < data_naprawy),
- CONSTRAINT FK_pojazd FOREIGN KEY (id_naprawy)
- REFERENCES pojazdy(id_pojazdu)
- );
- CREATE TABLE czesci (
- id_czesci INTEGER,
- nazwa varchar(30),
- cena INTEGER,
- producent INTEGER,
- dostawca INTEGER,
- CONSTRAINT Czesci_positive_price CHECK(cena >= 0),
- CONSTRAINT Czesci_nazwa_not_null CHECK(nazwa IS NOT NULL),
- CONSTRAINT PK_czesci primary key (id_czesci)
- );
- CREATE TABLE UzyteCzesci (
- id_cz INTEGER REFERENCES czesci(id_czesci),
- id_naprawy INTEGER REFERENCES naprawy(id_naprawy),
- ilosc INTEGER NOT NULL CHECK(ilosc >= 0),
- uwagi varchar(30)
- );
- DROP TABLE UzyteCzesci;
- INSERT INTO naprawy VALUES (1, 'a', NULL, NULL, 2, 'aaa');
- DROP TABLE naprawy;
- DROP TABLE zlecenia;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement