Mysql
 sql >> Base de données >  >> RDS >> Mysql

Comment dois-je concevoir ma/mes table(s) MYSQL ?

La normalisation est votre amie.

Vous voudrez passer à une conception relationnelle à deux tables.

CREATE TABLE projects (
   project_id int not null primary key auto_increment,
   project_name varchar(128),
   -- ...
);

CREATE TABLE pages (
   page_id int not null primary key auto_increment,
   project_id int not null, 
   pagetext text,
   image varchar(128), 
   -- ...
);

Maintenant, chaque projet peut avoir n'importe quel nombre de pages.

Si le client revient ensuite et dit "Chaque page peut avoir 0-N images", vous voudriez une troisième table, qui contient une clé étrangère page_id (tout comme la table des pages a un project_id clé étrangère)