56 lines
1.8 KiB
MySQL
56 lines
1.8 KiB
MySQL
|
|
-- Inicjalizacja bazy danych dla sklepu z obuwiem
|
||
|
|
-- Autor: [Twoje Imię/Nazwa Projektu]
|
||
|
|
-- Data: [Data]
|
||
|
|
|
||
|
|
-- Usuń istniejące tabele (jeśli istnieją) — dla czystego startu
|
||
|
|
DROP TABLE IF EXISTS obuwie_produkty;
|
||
|
|
DROP TABLE IF EXISTS obuwie_buty;
|
||
|
|
DROP TABLE IF EXISTS obuwie_kategorie;
|
||
|
|
|
||
|
|
-- Tabela: Kategorie butów
|
||
|
|
CREATE TABLE obuwie_kategorie (
|
||
|
|
id_kat INT(3) PRIMARY KEY AUTO_INCREMENT,
|
||
|
|
nazwa_kat VARCHAR(30) NOT NULL UNIQUE
|
||
|
|
);
|
||
|
|
|
||
|
|
-- Tabela: Buty (modele)
|
||
|
|
CREATE TABLE obuwie_buty (
|
||
|
|
model VARCHAR(20) PRIMARY KEY,
|
||
|
|
id_kat INT(3) NOT NULL,
|
||
|
|
nazwa VARCHAR(30) NOT NULL,
|
||
|
|
cena DECIMAL(7,2) NOT NULL,
|
||
|
|
opis TEXT,
|
||
|
|
FOREIGN KEY (id_kat) REFERENCES obuwie_kategorie(id_kat)
|
||
|
|
ON DELETE CASCADE
|
||
|
|
ON UPDATE CASCADE
|
||
|
|
);
|
||
|
|
|
||
|
|
-- Tabela: Produkty (konkretne egzemplarze butów w różnych rozmiarach i kolorach)
|
||
|
|
CREATE TABLE obuwie_produkty (
|
||
|
|
id_prod INT(5) PRIMARY KEY AUTO_INCREMENT,
|
||
|
|
model VARCHAR(20) NOT NULL,
|
||
|
|
rozmiar DECIMAL(3,1) NOT NULL,
|
||
|
|
kolor VARCHAR(20),
|
||
|
|
ilosc INT(4) DEFAULT 0 CHECK (ilosc >= 0),
|
||
|
|
FOREIGN KEY (model) REFERENCES obuwie_buty(model)
|
||
|
|
ON DELETE CASCADE
|
||
|
|
ON UPDATE CASCADE
|
||
|
|
);
|
||
|
|
|
||
|
|
-- Wstaw przykładowe dane (opcjonalnie, dla testów)
|
||
|
|
INSERT INTO obuwie_kategorie (nazwa_kat) VALUES
|
||
|
|
('Sportowe'), ('Klasyczne'), ('Zimowe');
|
||
|
|
|
||
|
|
INSERT INTO obuwie_buty (model, id_kat, nazwa, cena, opis) VALUES
|
||
|
|
('NIKE-AIR-01', 1, 'Nike Air Max', 499.99, 'Buty sportowe z amortyzacją Air'),
|
||
|
|
('ADIDAS-CL-02', 1, 'Adidas Cloudfoam', 349.00, 'Wygodne buty do codziennego użytku'),
|
||
|
|
('DERBY-BLACK', 2, 'Derby Czarny', 599.50, 'Klasyczne buty męskie');
|
||
|
|
|
||
|
|
INSERT INTO obuwie_produkty (model, rozmiar, kolor, ilosc) VALUES
|
||
|
|
('NIKE-AIR-01', 42.0, 'Czarny', 15),
|
||
|
|
('NIKE-AIR-01', 43.0, 'Biały', 8),
|
||
|
|
('ADIDAS-CL-02', 41.0, 'Szary', 20),
|
||
|
|
('DERBY-BLACK', 44.0, 'Czarny', 5);
|
||
|
|
|
||
|
|
-- Koniec inicjalizacji
|