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

Implementering af kommentarer og likes i databasen

Den mest udvidelige løsning er kun at have én "basis"-tabel (forbundet med "synes godt om", tags og kommentarer) og "arve" alle andre tabeller fra den. Tilføjelse af en ny slags entitet involverer blot at tilføje en ny "arvet" tabel - den tilsluttes derefter automatisk til hele like/tag/kommentar maskineriet.

Entity-relationship term for dette er "category" (se ERwin Methods Guide , afsnit:"Undertypeforhold"). Kategoriesymbolet er:

Forudsat at en bruger kan lide flere entiteter, kan et samme tag bruges til mere end én enhed, men en kommentar er enhedsspecifik, din model kunne se sådan ud:

BTW, der er groft sagt 3 måder at implementere "ER-kategorien" på:

  • Alle typer i én tabel.
  • Alle betontyper i separate tabeller.
  • Alle konkrete og abstrakte typer i separate tabeller.

Medmindre du har meget strenge præstationskrav, er den tredje tilgang sandsynligvis den bedste (hvilket betyder, at de fysiske tabeller matcher 1:1 entiteterne i diagrammet ovenfor).



  1. Opret bruger fra strengvariabler i en PL/SQL-blok

  2. oracle-tabel eller -visning eksisterer ikke inde fra den lagrede procedure

  3. Stop med at få SQL Server til at udføre dit beskidte arbejde

  4. PostgreSQL, kompleks forespørgsel til beregning af ingredienser efter opskrift