Guest User

Untitled

a guest
Jan 5th, 2018
123
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
SQL 2.39 KB | None | 0 0
  1. ---------------------------------DROP------------------------------------------------
  2. DROP TABLE Zlecenia CASCADE CONSTRAINTS;
  3. DROP TABLE Uslugi CASCADE CONSTRAINTS;
  4. DROP TABLE Pracownicy CASCADE CONSTRAINTS;
  5. DROP TABLE Stanowiska CASCADE CONSTRAINTS;
  6. DROP TABLE Klienci CASCADE CONSTRAINTS;
  7. DROP TABLE Osoby CASCADE CONSTRAINTS;
  8. DROP TABLE Adresy CASCADE CONSTRAINTS;
  9.  
  10. --------------------------------CREATE-----------------------------------------------
  11. CREATE TABLE Adresy (
  12. Id_adresu NUMBER CONSTRAINT adres_pk PRIMARY KEY,
  13. Miasto VARCHAR2(25) NOT NULL,
  14. Ulica VARCHAR2(30) NOT NULL,
  15. Nr VARCHAR2(10) NOT NULL
  16. );
  17.  
  18. CREATE TABLE Osoby (
  19. Id_osoby NUMBER CONSTRAINT osoby_pk PRIMARY KEY,
  20. Imie VARCHAR2(15) NOT NULL,
  21. Nazwisko VARCHAR2(30) NOT NULL,
  22. Wiek NUMBER NOT NULL CONSTRAINT ch_wiek CHECK((Wiek>=0) AND (Wiek<=125)),
  23. Stan_cywilny VARCHAR2(12) NOT NULL,
  24. Telefon VARCHAR2(20),
  25. Pesel CHAR(11) NOT NULL CONSTRAINT osoba_uni UNIQUE,
  26. Id_adresu NUMBER NOT NULL,
  27. CONSTRAINT os_ad_fk FOREIGN KEY (Id_adresu) REFERENCES Adresy(Id_adresu)
  28. );
  29.  
  30. CREATE TABLE Klienci (
  31. Id_klienta NUMBER CONSTRAINT klient_pk PRIMARY KEY,
  32. Id_osoby NUMBER NOT NULL CONSTRAINT kl_unique UNIQUE,
  33. Znizka NUMBER,
  34. CONSTRAINT kl_os_fk FOREIGN KEY (Id_osoby) REFERENCES Osoby(Id_osoby)
  35. );
  36.  
  37. CREATE TABLE Stanowiska (
  38. Id_stanowiska NUMBER CONSTRAINT stanowisko_pk PRIMARY KEY,
  39. Nazwa VARCHAR2(20) NOT NULL,
  40. Opis VARCHAR2(500)
  41. );
  42.  
  43. CREATE TABLE Pracownicy (
  44. Id_pracownika NUMBER CONSTRAINT pracownik_pk PRIMARY KEY,
  45. Id_osoby NUMBER NOT NULL CONSTRAINT pr_unique UNIQUE,
  46. Id_stanowiska NUMBER NOT NULL,
  47. Staz NUMBER NOT NULL CONSTRAINT ch_staz CHECK((Staz>=0) AND (Staz<=45)),
  48. Pensja_br NUMBER NOT NULL CONSTRAINT pen_staz CHECK(Pensja_br>=1226),
  49. CONSTRAINT pr_os_fk FOREIGN KEY (Id_osoby) REFERENCES Osoby(Id_osoby),
  50. CONSTRAINT pr_st_fk FOREIGN KEY (Id_stanowiska) REFERENCES Stanowiska(Id_stanowiska)
  51. );
  52.  
  53. CREATE TABLE Uslugi (
  54. Id_uslugi NUMBER CONSTRAINT uslugi_pk PRIMARY KEY,
  55. Opis VARCHAR2(500),
  56. Cena NUMBER NOT NULL
  57. );
  58.  
  59. CREATE TABLE Zlecenia (
  60. Id_zlecenia NUMBER CONSTRAINT zlecenie_pk PRIMARY KEY,
  61. Id_uslugi NUMBER NOT NULL,
  62. Id_klienta NUMBER NOT NULL,
  63. Id_pracownika NUMBER NOT NULL,
  64. CONSTRAINT zl_us_fk FOREIGN KEY (Id_uslugi) REFERENCES Uslugi(Id_uslugi),
  65. CONSTRAINT zl_kl_fk FOREIGN KEY (Id_uslugi) REFERENCES Klienci(Id_klienta),
  66. CONSTRAINT zl_pr_fk FOREIGN KEY (Id_uslugi) REFERENCES Pracownicy(Id_pracownika)
  67. );
Add Comment
Please, Sign In to add comment