Zaprojektowanie Hurtowni danych w postaci tabelki.
Do naszego projektu wybraliśmy model płatka śniegu, w którym stacja_benzynowa jest tabelą faktów a pozostałe tabelami danych.
Zawartość skryptu tworzącą powyższe tabele: (z pliku projekt.sql)
DROP TABLE stacja_benzynowa;
DROP TABLE dostawca;
DROP TABLE czas;
DROP TABLE stacja;
DROP TABLE wojewodztwo;
DROP TABLE dzien;
DROP TABLE kwartal;
DROP TABLE towar;
DROP TABLE pracownik;
DROP TABLE miasto;
CREATE TABLE miasto (
id_miasto number(5) CONSTRAINT pk_id_miasto PRIMARY KEY,
nazwa_m varchar2(99) not null,
ulica varchar2(99) not null
);
CREATE TABLE pracownik (
id_pracownik number(5) CONSTRAINT pk_id_pracownik PRIMARY KEY,
imie varchar2(40) not null,
nazwisko varchar2(40) not null,
pesel number(11) not null,
telefon number(15) not null,
wynagrodzenie number(5) not null
);
CREATE TABLE towar (
id_towar number(5) CONSTRAINT pk_id_towar PRIMARY KEY,
cena number(5) not NULL,
nazwa_t varchar2(40) not NULL,
ilosc NUMBER(5) NOT null
);
CREATE TABLE kwartal (
id_kwartal number(6) CONSTRAINT pk_id_kwartal PRIMARY KEY,
rok number(5) not null,
nr_kwartalu number(4) not null
);
CREATE TABLE dzien (
id_dzien number(5) CONSTRAINT pk_id_dzien PRIMARY KEY,
nr_dnia number(5) not null,
godzina varchar2(20) not null
);
CREATE TABLE wojewodztwo (
id_wojewodztwo number(5) CONSTRAINT pk_id_wojewodztwo PRIMARY KEY,
id_miasto number(5) CONSTRAINT fk_id_miasto REFERENCES miasto(id_miasto),
nazwa_w varchar2(40) not null
);
CREATE TABLE stacja (
id_stacja number(5) CONSTRAINT pk_id_stacja PRIMARY KEY,
id_pracownik number(6) CONSTRAINT fk_id_pracownik REFERENCES pracownik(id_pracownik),
nazwa_s varchar2(50) not null
);
CREATE TABLE czas (
id_czas number(5) CONSTRAINT pk_id_czas PRIMARY KEY,
id_dzien number(5) CONSTRAINT fk_id_dzien REFERENCES dzien(id_dzien),
id_kwartal number(4) CONSTRAINT fk_id_kwartal REFERENCES kwartal(id_kwartal),
nazwa_miesiaca varchar2(20) not null,
nr_miesiaca number(3) not null
);
CREATE TABLE dostawca (
id_dostawca number(5) CONSTRAINT pk_id_dostawca PRIMARY KEY,
nazwa_d varchar2(30) not null,
telefon number(9) not null,
id_towaru number(5) CONSTRAINT fk_id_towaru REFERENCES towar(id_towar),
adres varchar2(90) not null
);
CREATE TABLE stacja_benzynowa (
id_stacja_benzynowa number(5) CONSTRAINT pk_id_stacja_benzynowa PRIMARY KEY,
id_stacji NUMBER(5) CONSTRAINT fk_id_stacji REFERENCES stacja(id_stacja),
id_wojewodztwo number(5) CONSTRAINT fk_id_wojewodztwo REFERENCES wojewodztwo(id_wojewodztwo),
id_dostawca number(5) CONSTRAINT fk_id_dostawca REFERENCES dostawca(id_dostawca),
id_czas number(5) CONSTRAINT fk_id_czas REFERENCES czas(id_czas),
ilosc_sprzedazy NUMBER(5) NOT NULL
);