1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
| CREATE TABLE CATEGORIES_TARIFS (
categorie_tarif_id TINYINT UNSIGNED NOT NULL AUTO_INCREMENT,
categorie_tarif_libelle VARCHAR(50) NOT NULL,
UNIQUE(categorie_tarif_libelle),
PRIMARY KEY (categorie_tarif_id)
) ENGINE=INNODB DEFAULT CHARSET=latin1 ;
CREATE TABLE TARIFS (
tarif_id TINYINT UNSIGNED NOT NULL AUTO_INCREMENT,
tarif_libelle VARCHAR(50) NOT NULL,
categorie_tarif_id TINYINT UNSIGNED NOT NULL,
tarif_prix DECIMAL(5,2) UNSIGNED NOT NULL,
tarif_frais_port DECIMAL(5,2) UNSIGNED DEFAULT NULL,
PRIMARY KEY (tarif_id),
UNIQUE(tarif_id, categorie_tarif_id),
UNIQUE(tarif_libelle, categorie_tarif_id),
FOREIGN KEY(categorie_tarif_id) REFERENCES CATEGORIES_TARIFS(categorie_tarif_id) ON UPDATE CASCADE ON DELETE RESTRICT
) ENGINE=INNODB DEFAULT CHARSET=latin1 ;
CREATE TABLE GALERIE (
galerie_id TINYINT UNSIGNED NOT NULL AUTO_INCREMENT,
galerie_nom VARCHAR(50) NOT NULL,
galerie_statut TINYINT(1) UNSIGNED NOT NULL DEFAULT 0,
galerie_active TINYINT(1) UNSIGNED NOT NULL DEFAULT 0,
galerie_demo TINYINT(1) UNSIGNED NOT NULL DEFAULT 0,
galerie_date_creation TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
categorie_tarif_id TINYINT UNSIGNED DEFAULT NULL,
PRIMARY KEY(galerie_id),
UNIQUE(galerie_nom),
INDEX(categorie_tarif_id),
FOREIGN KEY(categorie_tarif_id) REFERENCES CATEGORIES_TARIFS(categorie_tarif_id) ON UPDATE CASCADE ON DELETE RESTRICT
) TYPE=INNODB CHARACTER SET latin1 COLLATE latin1_swedish_ci;
CREATE TABLE PHOTO (
photo_id TINYINT UNSIGNED NOT NULL AUTO_INCREMENT,
galerie_id TINYINT UNSIGNED,
photo_nom VARCHAR(50),
photo_fichier VARCHAR(150),
photo_mini VARCHAR(150),
photo_date_upload TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY(photo_id),
UNIQUE(photo_nom),
UNIQUE(photo_fichier),
UNIQUE(photo_mini),
FOREIGN KEY(galerie_id) REFERENCES GALERIE(galerie_id) ON UPDATE CASCADE ON DELETE RESTRICT
) TYPE=INNODB CHARACTER SET latin1 COLLATE latin1_swedish_ci; |
Partager