Advertisement
desdemona

mssql zoo 13.12

Dec 13th, 2012
202
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
SQL 3.83 KB | None | 0 0
  1.     --CREATE TABLE desdemona (
  2.     --klucz CHAR(10),
  3.     --pole1 VARCHAR(50),
  4.     --nazwaPromocji varchar(150),
  5.     --CONSTRAINT pk_kluczykStrasznieGlowny PRIMARY KEY (klucz, pole1),
  6.     --CONSTRAINT fk_kluczykBardzoObcy FOREIGN KEY (nazwaPromocji) REFERENCES znizki(nazwaPromocji));
  7.     --INSERT INTO desdemona ( klucz, pole1) VALUES ('marcelina' , 'marchweka');
  8.      
  9.     CREATE TABLE znizki(
  10.         nazwaPromocji VARCHAR(150) PRIMARY KEY,
  11.         wartoscProcentowa tinyint
  12.     );
  13.    
  14.     CREATE TABLE ofertyZoo (
  15.         nazwaOfery VARCHAR(150) PRIMARY KEY,
  16.         cena smallmoney,
  17.         iloscUlgowychWejsciowek tinyint,
  18.         iloscPelnoplatychWejsciowek tinyint
  19.     );
  20.    
  21.     CREATE TABLE punktySprzedazy (
  22.         numerokienka tinyint PRIMARY KEY
  23.     );
  24.    
  25.     CREATE TABLE rachunki (
  26.         DATA DATE,
  27.         numerWDniu INTEGER,
  28.         cena smallmoney,
  29.         iloscUlgowychWejsciowek tinyint,
  30.         iloscPelnoplatychWejsciowek tinyint
  31.         PRIMARY KEY (numerWdniu, DATA),
  32.         znizka VARCHAR(150),
  33.         FOREIGN KEY(znizka) REFERENCES znizki(nazwaPromocji),
  34.         punktSprzedarzy tinyint NOT NULL,
  35.         FOREIGN KEY (punktSprzedarzy)  REFERENCES punktySprzedazy(numerOkienka),
  36.         kasjer VARCHAR(11) NOT NULL,
  37.         FOREIGN KEY (kasjer) REFERENCES kasjerzy(PESEL),
  38.         dataZwiedzania DATE,
  39.         FOREIGN KEY (dataZwiedzania) REFERENCES biletyGrupowe(dataZwiedzania),
  40.         numerBiletu INTEGER,
  41.         FOREIGN KEY (numerBiletu) REFERENCES biletyGrupowe(numerBiletu),
  42.     );
  43.    
  44.     CREATE TABLE biletyGrupowe(
  45.         dataZwiedzania DATE NOT NULL,
  46.         godzina TIME,
  47.         numerBiletu INTEGER NOT NULL,
  48.         cenaUslugiPrzewodnika smallmoney,
  49.         iloscUlgowychWejsciowek tinyint,
  50.         iloscPelnoplatychWejsciowek tinyint,
  51.         punktSprzedarzy tinyint NOT NULL,
  52.         FOREIGN KEY (punktSprzedarzy)  REFERENCES punktySprzedazy(numerOkienka),
  53.         przewodnik VARCHAR(11),
  54.         FOREIGN KEY (przewodnik) REFERENCES przewodnicy(PESEL),
  55.         kasjer VARCHAR(11) NOT NULL,
  56.         FOREIGN KEY (kasjer) REFERENCES kasjerzy(PESEL),
  57.         PRIMARY KEY (dataZwiedzania, numerBiletu)
  58.     );
  59.    
  60.    CREATE TABLE pozycjeNaRachunku(
  61.         iloscZakupionych tinyint,
  62.         lp tinyint, --zakladamy, ze rachunek ma mniej niz 200 pozycji
  63.         DATA DATE,
  64.         numerWdniu INTEGER,
  65.         cena smallmoney,
  66.         iloscUlgowychWejsciowek tinyint NOT NULL,
  67.         iloscPelnoplatychWejsciowek tinyint NOT NULL,
  68.         nazwaOferty VARCHAR(150) NOT NULL,
  69.         FOREIGN KEY (nazwaOferty) REFERENCES ofertyZoo(nazwaOferty),
  70.        
  71.         FOREIGN KEY (numerWdniu) REFERENCES rachunki(numerWdniu),
  72.         FOREIGN KEY (DATA) REFERENCES rachunki(DATA),
  73.         PRIMARY KEY (numerWdniu, DATA, lp)
  74.     );
  75.        
  76.     CREATE TABLE sponsorzyZoo(
  77.         nazwa VARCHAR(100) PRIMARY KEY,
  78.         kolejnoscNaBilecie tinyint,
  79.         przekazaneFundusze money
  80.     );
  81.    
  82.     CREATE TABLE daneOZwiedzajacych(
  83.         plec CHAR,
  84.         wiek tinyint,
  85.         kodPocztowy VARCHAR(5),
  86.        
  87.         lp tinyint,
  88.         dataZwiedzania DATE,
  89.         FOREIGN KEY (dataZwiedzania) REFERENCES biletyGrupowe(dataZwiedzania),
  90.         numerBiletu INTEGER,
  91.         FOREIGN KEY (numerBiletu) REFERENCES biletyGrupowe(numerBiletu),
  92.         PRIMARY KEY (lp, numerBiletu, dataZwiedzania)
  93.     );
  94.    
  95.    
  96.     CREATE TABLE pracownicy(PESEL VARCHAR(11) NOT NULL,
  97.         imie VARCHAR(200) NOT NULL,
  98.         nazwisko VARCHAR(200) NOT NULL,
  99.         PRIMARY KEY(PESEL)
  100.     );
  101.  
  102.     CREATE TABLE przewodnicy(
  103.         PESEL VARCHAR(11) NOT NULL REFERENCES pracownicy(pesel),
  104.         nrLegitymacji VARCHAR(10) NOT NULL,
  105.         PRIMARY KEY(PESEL)
  106.     );
  107.    
  108.     CREATE TABLE kasjerzy(
  109.         PESEL VARCHAR(11) NOT NULL REFERENCES pracownicy(PESEL),
  110.         ID INTEGER NOT NULL,
  111.         PRIMARY KEY(PESEL)
  112.     );    
  113.    
  114.    CREATE TABLE biletDosponsorowal(
  115.         dataZwiedzania DATE,
  116.         FOREIGN KEY (dataZwiedzania) REFERENCES biletyGrupowe(dataZwiedzania),
  117.         numerBiletu INTEGER,
  118.         FOREIGN KEY (numerBiletu) REFERENCES biletyGrupowe(numerBiletu),
  119.         nazwaSponsora VARCHAR(100),
  120.         FOREIGN KEY (nazwaSponsora) REFERENCES sponsorzyZoo(nazwa),
  121.         PRIMARY KEY(dataZwiedzania, numerBiletu, nazwaSponsora)
  122.    );
  123.   /*CHECK;*/
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement