sql >> Database teknologi >  >> RDS >> Mysql

Opsætning af et tag-system for posteringer i en MySQL-database

Inline taglagring

Afhængigt af størrelsen på dine tags kan du gemme dem i article_tags tabel:

article_id | tag_contents
 

Tilføj UNIQUE(article_id, tag_contents) for at undgå at gemme duplikerede tags pr. artikel

Vigtigt

Denne tilgang har en ulempe; taggene er ikke forbundet med hinanden, så hvis der foretages ændringer i et tag, skal du opdatere hele article_tags bord. Desuden, hvis tags er betydeligt længere end 4 bytes, er du bedre stillet med den næste løsning.

Ekstern taglagring

Opret en anden tabel tags :

id | tag_contents

Tilføj UNIQUE(tag_contents) for at undgå at gemme duplikerede tags

Rediger `article_tags:

article_id | tag_id
 

Tilføj UNIQUE(article_id, tag_id) for at undgå at gemme duplikerede tags pr. artikel




  1. PIVOT Oracle - transformer flere rækkedata til en enkelt række med flere kolonner, ingen samlede data

  2. Sådan returneres alle deaktiverede CHECK-begrænsninger i SQL Server (T-SQL-eksempel)

  3. omdanne tabelrækker til kolonner i mysql

  4. Hvordan ekko nøgle:værdi-parrene i et underarray? PHP