1 | set search_path = project;
|
---|
2 |
|
---|
3 | drop table if exists Naracka_sodrzi_MenuItem cascade;
|
---|
4 | drop table if exists MenuItem cascade;
|
---|
5 | drop table if exists Naplata cascade;
|
---|
6 | drop table if exists Naracka cascade;
|
---|
7 | drop table if exists Restoran cascade;
|
---|
8 | drop table if exists Manager cascade;
|
---|
9 | drop table if exists Administrator cascade;
|
---|
10 | drop table if exists Vozac cascade;
|
---|
11 | drop table if exists Vozilo cascade;
|
---|
12 | drop table if exists Potrosuvac cascade;
|
---|
13 | drop table if exists Korisnik cascade;
|
---|
14 |
|
---|
15 | drop schema if exists project;
|
---|
16 |
|
---|
17 | create schema project;
|
---|
18 | set search_path = project;
|
---|
19 |
|
---|
20 | CREATE TABLE Korisnik (
|
---|
21 | Id INT PRIMARY KEY,
|
---|
22 | Email VARCHAR(255) NOT NULL,
|
---|
23 | Username VARCHAR(50) NOT NULL,
|
---|
24 | Pword VARCHAR(50) NOT NULL
|
---|
25 | );
|
---|
26 |
|
---|
27 | CREATE TABLE Potrosuvac (
|
---|
28 | korisnik_id INT PRIMARY KEY,
|
---|
29 | Address VARCHAR(255) NOT NULL,
|
---|
30 | br_telefon VARCHAR(255) NOT NULL,
|
---|
31 | constraint fk_Korisnik foreign key (korisnik_id) references Korisnik(Id)
|
---|
32 | );
|
---|
33 |
|
---|
34 | CREATE TABLE Vozilo (
|
---|
35 | Id INT PRIMARY KEY,
|
---|
36 | tip VARCHAR(255),
|
---|
37 | br_registracija VARCHAR(255) NOT NULL
|
---|
38 | );
|
---|
39 |
|
---|
40 | CREATE TABLE Vozac (
|
---|
41 | korisnik_id INT PRIMARY KEY,
|
---|
42 | vozilo_id INT NOT NULL,
|
---|
43 | constraint fk_Korisnik foreign key (korisnik_id) references Korisnik(Id),
|
---|
44 | constraint fk_Vozilo foreign key (vozilo_id) references Vozilo(Id)
|
---|
45 | );
|
---|
46 |
|
---|
47 | CREATE TABLE Administrator (
|
---|
48 | korisnik_id INT PRIMARY KEY,
|
---|
49 | constraint fk_Korisnik foreign key (korisnik_id) references Korisnik(Id)
|
---|
50 | );
|
---|
51 |
|
---|
52 | CREATE TABLE Manager (
|
---|
53 | korisnik_id INT PRIMARY KEY,
|
---|
54 | constraint fk_Korisnik foreign key (korisnik_id) references Korisnik(Id)
|
---|
55 | );
|
---|
56 |
|
---|
57 | CREATE TABLE Restoran (
|
---|
58 | Id INT PRIMARY KEY,
|
---|
59 | ime VARCHAR(255) NOT NULL,
|
---|
60 | lokacija VARCHAR(255) NOT NULL,
|
---|
61 | rabotno_vreme VARCHAR(255) NOT NULL,
|
---|
62 | manager_id INT NOT NULL,
|
---|
63 | FOREIGN KEY (manager_id) references Manager(korisnik_id)
|
---|
64 | );
|
---|
65 |
|
---|
66 | CREATE TABLE Naracka (
|
---|
67 | Id INT PRIMARY KEY,
|
---|
68 | Datum DATE,
|
---|
69 | potrosuvac_id INT NOT NULL,
|
---|
70 | restoran_id INT NOT NULL,
|
---|
71 | vozac_id INT NOT NULL,
|
---|
72 | admin_id INT NOT NULL,
|
---|
73 | FOREIGN KEY (potrosuvac_id) references Potrosuvac(korisnik_id),
|
---|
74 | FOREIGN KEY (restoran_id) references Restoran(Id),
|
---|
75 | FOREIGN KEY (vozac_id) references Vozac(korisnik_id),
|
---|
76 | FOREIGN KEY (admin_id) references Administrator(korisnik_id)
|
---|
77 | );
|
---|
78 |
|
---|
79 | CREATE TABLE Naplata (
|
---|
80 | Id INT PRIMARY KEY,
|
---|
81 | Iznos INT NOT NULL,
|
---|
82 | nacin_na_plakjane VARCHAR(255),
|
---|
83 | potrosuvac_id INT NOT NULL,
|
---|
84 | naracka_id INT NOT NULL,
|
---|
85 | FOREIGN KEY (potrosuvac_id) references Potrosuvac(korisnik_id),
|
---|
86 | FOREIGN KEY (naracka_id) references Naracka(Id)
|
---|
87 | );
|
---|
88 |
|
---|
89 | CREATE TABLE MenuItem (
|
---|
90 | Id INT PRIMARY KEY,
|
---|
91 | ime VARCHAR(255) NOT NULL,
|
---|
92 | cena INT NOT NULL,
|
---|
93 | restoran_id INT NOT NULL,
|
---|
94 | FOREIGN KEY (restoran_id) references Restoran(Id)
|
---|
95 | );
|
---|
96 |
|
---|
97 | CREATE TABLE Naracka_sodrzi_MenuItem (
|
---|
98 | naracka_id INT NOT NULL,
|
---|
99 | menuItem_id INT NOT NULL,
|
---|
100 | FOREIGN KEY (naracka_id) references Naracka(Id),
|
---|
101 | FOREIGN KEY (menuItem_id) references MenuItem(Id)
|
---|
102 | ); |
---|