
-- Табела: Clenovi
CREATE TABLE Clenovi (
ClenId SERIAL PRIMARY KEY,
Ime VARCHAR(50) NOT NULL,
Prezime VARCHAR(50) NOT NULL,
Telefon VARCHAR(15),
Email VARCHAR(100),
Adresa VARCHAR(255),
Datum_rajganje DATE
);
-- Табела: Paketi
CREATE TABLE Paketi (
PaketId SERIAL PRIMARY KEY,
Naziv VARCHAR(100),
Cena NUMERIC(10, 2),
Validnost VARCHAR(50),
Vremetraenje VARCHAR(50)
);

CREATE TABLE Clenstvo (
ClenstvoId SERIAL PRIMARY KEY,
Validnost VARCHAR(50),
Od DATE,
DoDat DATE,
ClenIdFK INT NOT NULL REFERENCES Clenovi(ClenId),
PaketiFK INT NOT NULL REFERENCES Paketi(PaketId)
);

-- Табела: Lokacii
CREATE TABLE Lokacii (
LokacijaId SERIAL PRIMARY KEY,
Adresa VARCHAR(255),
Telefon VARCHAR(15)
);

-- Табела: Poseti
CREATE TABLE Poseti (
PosetaId SERIAL PRIMARY KEY,
CheckInTime TIMESTAMP,
ClenIdFK INT NOT NULL REFERENCES Clenovi(ClenId),
LokacijaIdFK INT NOT NULL REFERENCES Lokacii(LokacijaId)
);


-- Табела: Vraboteni
CREATE TABLE Vraboteni (
VrabotenId SERIAL PRIMARY KEY,
LokacijaIdFK INT NOT NULL REFERENCES Lokacii(LokacijaId),
Ime VARCHAR(50) NOT NULL,
Prezime VARCHAR(50) NOT NULL,
Telefon VARCHAR(15),
Email VARCHAR(100),
Uloga VARCHAR(50),
Plata NUMERIC(10, 2),
Raboti VARCHAR(100)
);




-- Табела за M:N врска: Trenira
CREATE TABLE Trenira (
ClenstvoId INT NOT NULL REFERENCES Clenstvo(ClenstvoId),
VrabotenId INT NOT NULL REFERENCES Vraboteni(VrabotenId),
PRIMARY KEY (ClenstvoId, VrabotenId)
);

