| 1 | DROP TABLE IF EXISTS NASTANI;
|
|---|
| 2 | DROP TABLE IF EXISTS PREFERENCI;
|
|---|
| 3 | DROP TABLE IF EXISTS PAKETI;
|
|---|
| 4 | DROP TABLE IF EXISTS RECENZII;
|
|---|
| 5 | DROP TABLE IF EXISTS REZERVACII;
|
|---|
| 6 | DROP TABLE IF EXISTS PREMIUM;
|
|---|
| 7 | DROP TABLE IF EXISTS STANDARD;
|
|---|
| 8 | DROP TABLE IF EXISTS KORISNICI;
|
|---|
| 9 | DROP TABLE IF EXISTS AKTIVNOSTI;
|
|---|
| 10 | DROP TABLE IF EXISTS METEROLOSHKASOSTOJBA;
|
|---|
| 11 | DROP TABLE IF EXISTS DESTINACII;
|
|---|
| 12 | DROP TABLE IF EXISTS TAGOVI;
|
|---|
| 13 | DROP TABLE IF EXISTS destinacii_has_tagovi;
|
|---|
| 14 | DROP TABLE IF EXISTS aktivnosti_has_paketi;
|
|---|
| 15 | DROP TABLE IF EXISTS aktivnosti_has_rezervacii;
|
|---|
| 16 | DROP TABLE IF EXISTS destinacii_has_korisnici;
|
|---|
| 17 |
|
|---|
| 18 | CREATE TABLE TAGOVI (
|
|---|
| 19 | idTag INT AUTO_INCREMENT PRIMARY KEY,
|
|---|
| 20 | tagOznaka VARCHAR(255) NOT NULL
|
|---|
| 21 | );
|
|---|
| 22 |
|
|---|
| 23 | CREATE TABLE DESTINACII (
|
|---|
| 24 | idDest INT AUTO_INCREMENT PRIMARY KEY,
|
|---|
| 25 | imeLokacija VARCHAR(255) NOT NULL,
|
|---|
| 26 | opisLokacija VARCHAR(255),
|
|---|
| 27 | tipoviMesta VARCHAR(255) NOT NULL,
|
|---|
| 28 | preporachanaSezona VARCHAR(255) NOT NULL,
|
|---|
| 29 | prosechnaTemp DECIMAL(5, 2),
|
|---|
| 30 | lat DECIMAL(9, 6),
|
|---|
| 31 | lon DECIMAL(9, 6),
|
|---|
| 32 | drzhava VARCHAR(255),
|
|---|
| 33 | popularnost INT,
|
|---|
| 34 | ime VARCHAR(255) NOT NULL,
|
|---|
| 35 | opis VARCHAR(255) NOT NULL,
|
|---|
| 36 | idTag INT,
|
|---|
| 37 | CONSTRAINT fk_tag_dest FOREIGN KEY (idTag) REFERENCES TAGOVI(idTag)
|
|---|
| 38 | );
|
|---|
| 39 |
|
|---|
| 40 | CREATE TABLE METEROLOSHKASOSTOJBA (
|
|---|
| 41 | idMeteo INT AUTO_INCREMENT PRIMARY KEY,
|
|---|
| 42 | momentTemp DECIMAL(5, 2),
|
|---|
| 43 | sostojbaVreme VARCHAR(255) NOT NULL,
|
|---|
| 44 | predupreduvanja VARCHAR(255) NOT NULL,
|
|---|
| 45 | vlazhnost DECIMAL(5, 2),
|
|---|
| 46 | veter DECIMAL(5, 2),
|
|---|
| 47 | mesec INT,
|
|---|
| 48 | idDest INT,
|
|---|
| 49 | CONSTRAINT fk_dest_meteo FOREIGN KEY (idDest) REFERENCES DESTINACII(idDest)
|
|---|
| 50 | );
|
|---|
| 51 |
|
|---|
| 52 | CREATE TABLE AKTIVNOSTI (
|
|---|
| 53 | idAktivnost INT AUTO_INCREMENT PRIMARY KEY,
|
|---|
| 54 | imeAktivnost VARCHAR(255) NOT NULL,
|
|---|
| 55 | informacii VARCHAR(255),
|
|---|
| 56 | kategorija VARCHAR(255) NOT NULL,
|
|---|
| 57 | iznos INT,
|
|---|
| 58 | idDest INT,
|
|---|
| 59 | CONSTRAINT fk_dest_aktivnost FOREIGN KEY (idDest) REFERENCES DESTINACII(idDest)
|
|---|
| 60 | );
|
|---|
| 61 |
|
|---|
| 62 | CREATE TABLE KORISNICI (
|
|---|
| 63 | idKorisnik INT AUTO_INCREMENT PRIMARY KEY,
|
|---|
| 64 | ime VARCHAR(255) NOT NULL,
|
|---|
| 65 | prezime VARCHAR(255) NOT NULL,
|
|---|
| 66 | ePoshta VARCHAR(255) NOT NULL UNIQUE,
|
|---|
| 67 | telBr VARCHAR(255) NOT NULL,
|
|---|
| 68 | datumRagjanje DATE,
|
|---|
| 69 | idDest INT,
|
|---|
| 70 | CONSTRAINT fk_dest_korisnik FOREIGN KEY (idDest) REFERENCES DESTINACII(idDest)
|
|---|
| 71 | );
|
|---|
| 72 |
|
|---|
| 73 | CREATE TABLE STANDARD (
|
|---|
| 74 | idKorisnik INT,
|
|---|
| 75 | ime VARCHAR(255) NOT NULL,
|
|---|
| 76 | prezime VARCHAR(255) NOT NULL,
|
|---|
| 77 | ePoshta VARCHAR(255) NOT NULL UNIQUE,
|
|---|
| 78 | telBr VARCHAR(255) NOT NULL,
|
|---|
| 79 | datumRagjanje DATE,
|
|---|
| 80 | CONSTRAINT fk_korisnik_standard FOREIGN KEY (idKorisnik) REFERENCES KORISNICI(idKorisnik)
|
|---|
| 81 | );
|
|---|
| 82 |
|
|---|
| 83 | CREATE TABLE PREMIUM (
|
|---|
| 84 | idKorisnik INT,
|
|---|
| 85 | ime VARCHAR(255) NOT NULL,
|
|---|
| 86 | prezime VARCHAR(255) NOT NULL,
|
|---|
| 87 | ePoshta VARCHAR(255) NOT NULL UNIQUE,
|
|---|
| 88 | telBr VARCHAR(255) NOT NULL,
|
|---|
| 89 | datumRagjanje DATE,
|
|---|
| 90 | datumKreiranje DATE,
|
|---|
| 91 | popust DECIMAL(5, 2),
|
|---|
| 92 | CONSTRAINT fk_korisnik_premium FOREIGN KEY (idKorisnik) REFERENCES KORISNICI(idKorisnik)
|
|---|
| 93 | );
|
|---|
| 94 |
|
|---|
| 95 | CREATE TABLE REZERVACII (
|
|---|
| 96 | idRezervacija INT AUTO_INCREMENT PRIMARY KEY,
|
|---|
| 97 | vremenskaTochka DATE NOT NULL,
|
|---|
| 98 | vkupnaCena INT NOT NULL,
|
|---|
| 99 | idAktivnost INT,
|
|---|
| 100 | idKorisnik INT,
|
|---|
| 101 | idMeteo INT,
|
|---|
| 102 | CONSTRAINT fk_aktivnost_rezervacija FOREIGN KEY (idAktivnost) REFERENCES AKTIVNOSTI(idAktivnost),
|
|---|
| 103 | CONSTRAINT fk_korisnik_rezervacija FOREIGN KEY (idKorisnik) REFERENCES KORISNICI(idKorisnik),
|
|---|
| 104 | CONSTRAINT fk_meteo_rezervacija FOREIGN KEY (idMeteo) REFERENCES METEROLOSHKASOSTOJBA(idMeteo)
|
|---|
| 105 | );
|
|---|
| 106 |
|
|---|
| 107 | CREATE TABLE RECENZII (
|
|---|
| 108 | idRecenzija INT AUTO_INCREMENT PRIMARY KEY,
|
|---|
| 109 | korisnichkoIme VARCHAR(255) NOT NULL,
|
|---|
| 110 | kvalitet INT NOT NULL,
|
|---|
| 111 | zabeleshka VARCHAR(255),
|
|---|
| 112 | datumRecenzija DATE,
|
|---|
| 113 | brGlasovi INT,
|
|---|
| 114 | idDest INT,
|
|---|
| 115 | idKorisnik INT,
|
|---|
| 116 | idRezervacija INT,
|
|---|
| 117 | CONSTRAINT fk_dest_recenzija FOREIGN KEY (idDest) REFERENCES DESTINACII(idDest),
|
|---|
| 118 | CONSTRAINT fk_korisnik_recenzija FOREIGN KEY (idKorisnik) REFERENCES KORISNICI(idKorisnik),
|
|---|
| 119 | CONSTRAINT fk_rezervacija_recenzija FOREIGN KEY (idRezervacija) REFERENCES REZERVACII(idRezervacija)
|
|---|
| 120 | );
|
|---|
| 121 |
|
|---|
| 122 | CREATE TABLE PAKETI (
|
|---|
| 123 | idPaket INT AUTO_INCREMENT PRIMARY KEY,
|
|---|
| 124 | imePaket VARCHAR(255) NOT NULL,
|
|---|
| 125 | cena INT NOT NULL,
|
|---|
| 126 | pochetok DATETIME NOT NULL,
|
|---|
| 127 | kraj DATETIME NOT NULL,
|
|---|
| 128 | idDest INT,
|
|---|
| 129 | idAktivnost INT,
|
|---|
| 130 | idRezervacija INT,
|
|---|
| 131 | CONSTRAINT fk_dest_paket FOREIGN KEY (idDest) REFERENCES DESTINACII(idDest),
|
|---|
| 132 | CONSTRAINT fk_aktivnost_paket FOREIGN KEY (idAktivnost) REFERENCES AKTIVNOSTI(idAktivnost),
|
|---|
| 133 | CONSTRAINT fk_rezervacija_paket FOREIGN KEY (idRezervacija) REFERENCES REZERVACII(idRezervacija)
|
|---|
| 134 | );
|
|---|
| 135 |
|
|---|
| 136 | CREATE TABLE PREFERENCI (
|
|---|
| 137 | idPreferenca INT AUTO_INCREMENT PRIMARY KEY,
|
|---|
| 138 | tipPreferenca VARCHAR(255) NOT NULL,
|
|---|
| 139 | prioritet INT,
|
|---|
| 140 | idKorisnik INT,
|
|---|
| 141 | CONSTRAINT fk_korisnik_preferenca FOREIGN KEY (idKorisnik) REFERENCES KORISNICI(idKorisnik)
|
|---|
| 142 | );
|
|---|
| 143 |
|
|---|
| 144 | CREATE TABLE NASTANI (
|
|---|
| 145 | idNastan INT AUTO_INCREMENT PRIMARY KEY,
|
|---|
| 146 | naziv VARCHAR(255) NOT NULL,
|
|---|
| 147 | vidovi VARCHAR(255) NOT NULL,
|
|---|
| 148 | pochetenDatum DATE,
|
|---|
| 149 | kraenDatum DATE,
|
|---|
| 150 | detali VARCHAR(255),
|
|---|
| 151 | idDest INT,
|
|---|
| 152 | CONSTRAINT fk_dest_nastan FOREIGN KEY (idDest) REFERENCES DESTINACII(idDest)
|
|---|
| 153 | );
|
|---|
| 154 |
|
|---|
| 155 | CREATE TABLE IF NOT EXISTS destinacii_has_tagovi(
|
|---|
| 156 | destinacii_idDest INT NOT NULL,
|
|---|
| 157 | tagovi_idTag INT NOT NULL,
|
|---|
| 158 | PRIMARY KEY (destinacii_idDest, tagovi_idTag)
|
|---|
| 159 | );
|
|---|
| 160 |
|
|---|
| 161 | CREATE TABLE IF NOT EXISTS aktivnosti_has_paketi (
|
|---|
| 162 | aktivnosti_idAktivnost INT NOT NULL,
|
|---|
| 163 | paketi_idPaket INT NOT NULL,
|
|---|
| 164 | PRIMARY KEY (aktivnosti_idAktivnost, paketi_idPaket)
|
|---|
| 165 | );
|
|---|
| 166 |
|
|---|
| 167 | CREATE TABLE IF NOT EXISTS aktivnosti_has_rezervacii (
|
|---|
| 168 | aktivnosti_idAktivnost INT NOT NULL,
|
|---|
| 169 | rezervacii_idRezervacija INT NOT NULL,
|
|---|
| 170 | PRIMARY KEY (aktivnosti_idAktivnost, rezervacii_idRezervacija)
|
|---|
| 171 | );
|
|---|
| 172 |
|
|---|
| 173 | CREATE TABLE IF NOT EXISTS destinacii_has_korisnici (
|
|---|
| 174 | destinacii_idDest INT NOT NULL,
|
|---|
| 175 | korisnici_idKorisnik INT NOT NULL,
|
|---|
| 176 | ocena INT NULL,
|
|---|
| 177 | komentar VARCHAR(100) NULL,
|
|---|
| 178 | datum DATE NULL,
|
|---|
| 179 | PRIMARY KEY (destinacii_idDest, korisnici_idKorisnik)
|
|---|
| 180 | ); |
|---|