MarVin666

TAB Tabele i relacje

Apr 13th, 2016
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PL/SQL 4.06 KB | None | 0 0
  1. CREATE TABLE rajd (
  2.     id_rajdu INT NOT NULL,
  3.     kraj VARCHAR2(255),
  4.     region VARCHAR2(255),
  5.     data_start DATE,
  6.     data_koniec DATE,
  7.     adres_biuro VARCHAR2(255),
  8.     PRIMARY KEY(id_rajdu)
  9. );
  10.  
  11. CREATE TABLE licencja(
  12.     id_licencja INT NOT NULL,
  13.     rodzaj VARCHAR2(255),
  14.     data_wystawienia DATE,
  15.     data_waznosci DATE,
  16.     PRIMARY KEY(id_licencja)
  17. );
  18.  
  19. CREATE TABLE trasa(
  20.     id_trasy INT NOT NULL,
  21.     data_trasy DATE,
  22.     dlugosc VARCHAR2(255),
  23.     id_rajdu INT NOT NULL,
  24.     PRIMARY KEY(id_trasy)
  25. );
  26.  
  27. CREATE TABLE pracownik(
  28.     id_pracownika INT NOT NULL,
  29.     imie VARCHAR2(255),
  30.     nazwisko VARCHAR2(255),
  31.     stanowisko VARCHAR2(255),
  32.     pensja DECIMAL(6,2),
  33.     id_rajdu INT NOT NULL,
  34.     PRIMARY KEY(id_pracownika)
  35. );
  36.  
  37. CREATE TABLE sponsor(
  38.     id_sponsora INT NOT NULL,
  39.     nip VARCHAR2(255),
  40.     nazwa VARCHAR2(255),
  41.     wplata DECIMAL(6,2),
  42.     id_zespolu INT NOT NULL,
  43.     PRIMARY KEY(id_sponsora)
  44. );
  45.  
  46. CREATE TABLE zespol(
  47.     id_zespolu INT NOT NULL,
  48.     nazwa VARCHAR2(255),
  49.     skrot VARCHAR2(255),
  50.     PRIMARY KEY(id_zespolu)
  51. );
  52.  
  53. CREATE TABLE garaz(
  54.     id_garazu INT NOT NULL,
  55.     id_zespolu INT NOT NULL,
  56.     koszt DECIMAL(6,2),
  57.     PRIMARY KEY(id_garazu)
  58. );
  59.  
  60. CREATE TABLE magazyn(
  61.     id_magazynu INT NOT NULL,
  62.     limit_opon NUMBER(3),
  63.     limit_czesci NUMBER(3),
  64.     PRIMARY KEY(id_magazynu)
  65. );
  66.  
  67. CREATE TABLE samochod(
  68.     id_samochodu INT NOT NULL,
  69.     nr_rejestracyjny VARCHAR2(255),
  70.     marka VARCHAR2(255),
  71.     model VARCHAR2(255),
  72.     specyfikacja VARCHAR2(255),
  73.     id_garazu INT NOT NULL,
  74.     id_licencja INT NOT NULL,
  75.     PRIMARY KEY(id_samochodu)
  76. );
  77.  
  78. CREATE TABLE kierowca(
  79.     id_kierowcy INT NOT NULL,
  80.     imie VARCHAR2(255),
  81.     nazwisko VARCHAR2(255),
  82.     data_urodzenia DATE,
  83.     grupa_krwi VARCHAR2(255),
  84.     przeciwwskazania VARCHAR2(255),
  85.     id_licencja INT NOT NULL,
  86.     id_garazu INT NOT NULL,
  87.     PRIMARY KEY(id_kierowcy)
  88. );
  89.  
  90. CREATE TABLE mechanik(
  91.     id_mechanika INT NOT NULL,
  92.     id_garazu INT NOT NULL,
  93.     imie VARCHAR2(255),
  94.     nazwisko VARCHAR2(255),
  95.     specjalnosc VARCHAR2(255),
  96.     pensja DECIMAL(6,2),
  97.     PRIMARY KEY(id_mechanika)
  98. );
  99.  
  100. CREATE TABLE opona(
  101.     id_opony INT NOT NULL,
  102.     id_magazynu INT NOT NULL,
  103.     profil VARCHAR2(255),
  104.     rozmiar VARCHAR2(255),
  105.     rodzaj VARCHAR2(255),
  106.     ilosc NUMBER(5),
  107.     cena DECIMAL(6,2),
  108.     PRIMARY KEY(id_opony)
  109. );
  110.  
  111. CREATE TABLE czesci(
  112.     id_czesci INT NOT NULL,
  113.     id_magazynu INT NOT NULL,
  114.     typ VARCHAR2(255),
  115.     ilosc NUMBER(5),
  116.     cena DECIMAL(6,2),
  117.     PRIMARY KEY(id_czesci)
  118. );
  119.  
  120. CREATE TABLE rajd_zespol(
  121.     id_rajd_zespol INT NOT NULL,
  122.     id_rajdu INT NOT NULL,
  123.     id_zespolu INT NOT NULL,
  124.     PRIMARY KEY (id_rajd_zespol)
  125. );
  126.  
  127. ALTER TABLE rajd_zespol
  128. ADD CONSTRAINT rajd_zespol_rajdu
  129. FOREIGN KEY (id_rajdu)
  130. REFERENCES rajd(id_rajdu);
  131.  
  132. ALTER TABLE rajd_zespol
  133. ADD CONSTRAINT rajd_zespol_zespolu
  134. FOREIGN KEY (id_zespolu)
  135. REFERENCES zespol(id_zespolu);
  136.  
  137. ALTER TABLE trasa
  138. ADD CONSTRAINT trasa_id_rajdu
  139. FOREIGN KEY (id_rajdu)
  140. REFERENCES rajd(id_rajdu);
  141.  
  142. ALTER TABLE pracownik
  143. ADD CONSTRAINT pracownik_id_rajdu
  144. FOREIGN KEY (id_rajdu)
  145. REFERENCES rajd(id_rajdu);
  146.  
  147. ALTER TABLE sponsor
  148. ADD CONSTRAINT sponsor_id_zespolu
  149. FOREIGN KEY (id_zespolu)
  150. REFERENCES zespol(id_zespolu);
  151.  
  152. ALTER TABLE garaz
  153. ADD CONSTRAINT garaz_id_zespolu
  154. FOREIGN KEY (id_zespolu)
  155. REFERENCES zespol(id_zespolu);
  156.  
  157. ALTER TABLE magazyn
  158. ADD CONSTRAINT magazyn_id_zespolu
  159. FOREIGN KEY (id_magazynu)
  160. REFERENCES zespol(id_zespolu);
  161.  
  162. ALTER TABLE opona
  163. ADD CONSTRAINT opona_id_magazynu
  164. FOREIGN KEY (id_magazynu)
  165. REFERENCES magazyn(id_magazynu);
  166.  
  167. ALTER TABLE czesci
  168. ADD CONSTRAINT czesci_id_magazynu
  169. FOREIGN KEY (id_magazynu)
  170. REFERENCES magazyn(id_magazynu);
  171.  
  172. ALTER TABLE samochod
  173. ADD CONSTRAINT samochod_id_garazu
  174. FOREIGN KEY (id_garazu)
  175. REFERENCES garaz(id_garazu);
  176.  
  177. ALTER TABLE kierowca
  178. ADD CONSTRAINT kierowca_id_garazu
  179. FOREIGN KEY (id_garazu)
  180. REFERENCES garaz(id_garazu);
  181.  
  182. ALTER TABLE mechanik
  183. ADD CONSTRAINT mechanik_id_garazu
  184. FOREIGN KEY (id_garazu)
  185. REFERENCES garaz(id_garazu);
  186.  
  187. ALTER TABLE samochod
  188. ADD CONSTRAINT samochod_id_licencja
  189. FOREIGN KEY (id_licencja)
  190. REFERENCES licencja(id_licencja);
  191.  
  192. ALTER TABLE kierowca
  193. ADD CONSTRAINT kierowca_id_licencja
  194. FOREIGN KEY (id_licencja)
  195. REFERENCES licencja(id_licencja);
Advertisement
Add Comment
Please, Sign In to add comment