sql >> Databáze >  >> RDS >> Mysql

Jak bych měl navrhnout svou tabulku/y MYSQL?

Normalizace je váš přítel.

Budete chtít přejít na relační dvoutabulkový design.

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), 
   -- ...
);

Nyní může mít každý projekt libovolný počet stránek.

Pokud se klient poté vrátí a řekne „Každá stránka může mít 0-N obrázků“, budete chtít třetí tabulku, která obsahuje cizí klíč page_id (stejně jako tabulka stránek má project_id cizí klíč)




  1. .NET databáze volá pomalu při použití COM Interop, rychle přes analyzátor dotazů

  2. MySQL Vyberte nejlepší časy kol při seskupení podle uživatelů

  3. Docker MYSQL '[2002] Připojení odmítnuto'

  4. Java PreparedStatement načítá poslední vložené ID