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
|
CREATE TABLE T_STRUCTURE (
id INT NOT NULL AUTO_INCREMENT,
nom VARCHAR(50) NOT NULL,
PRIMARY KEY (id)
)
ENGINE=INNODB;
CREATE TABLE T_CARACTERISTIQUE (
id INT NOT NULL AUTO_INCREMENT,
type_donnee_id INT NOT NULL,
libelle CHAR(32) NOT NULL,
PRIMARY KEY (id),
FOREIGN KEY (type_donnee_id) REFERENCES T_TYPE_DONNEE(id)
)
ENGINE=INNODB;
CREATE TABLE T_CARACTERISTIQUE_STRUCTURE (
id INT NOT NULL AUTO_INCREMENT,
structure_id INT NOT NULL,
caracteristique_id INT NOT NULL,
valeur CHAR(32),
PRIMARY KEY (id),
FOREIGN KEY (structure_id) REFERENCES T_STRUCTURE(id),
FOREIGN KEY (caracteristique_id) REFERENCES T_CARACTERISTIQUE(id)
)
ENGINE=INNODB;
CREATE TABLE T_TYPE_DONNEE (
id INT NOT NULL AUTO_INCREMENT,
sql_type char(16) NOT NULL,
longueur INT NOT NULL,
PRIMARY KEY (id)
)
ENGINE=INNODB;
CREATE TABLE T_VALEUR (
id INT NOT NULL AUTO_INCREMENT,
caracteristique_id INT NOT NULL,
libelle CHAR(32) NOT NULL,
PRIMARY KEY (id),
FOREIGN KEY (caracteristique_id) REFERENCES T_CARACTERISTIQUE(id)
)
ENGINE=INNODB; |
Partager