sql >> Databasteknik >  >> RDS >> Mysql

mysql-struktur för inlägg och kommentarer

På en grundläggande nivå skulle du ha en tabell för varje typ av "sak" i din ansökan. I det här fallet en tabell för inlägg och en tabell för kommentarer. Något så enkelt som detta:

Post
--------
Id
Content
User
DatePosted

Comment
--------
Id
PostId
Content
User
DatePosted

Detta skulle skapa vad som kallas en en-till-många (eller noll-till-många, faktiskt) relation mellan inlägg och kommentarer, där varje inlägg kan ha noll eller fler associerade pomments men varje kommentar kan associeras med endast ett inlägg.

I din kod (som är ett helt annat ämne) för att visa ett inlägg och dess tillhörande kommentarer finns det ett par saker du kan göra. Förutsatt att du har Id som indata av det inlägg du vill ha kan du få det inlägget och dess kommentarer:

SELECT `Content`, `User`, `DatePosted` FROM `Post` WHERE `Id` = ?Id
SELECT `Id`, `Content`, `User`, `DatePosted` FROM `Comment` WHERE `PostId` = ?Id

Vad du gör med den resulterande informationen är upp till dig och hur du vill använda den i din applikation. Det skulle komma tillbaka som två tabellresultat, varav det förra har en post (om Posten finns) och det senare har noll eller fler poster. Naturligtvis vill du kontrollera att saker finns innan du försöker använda dem, etc. (Så om den första frågan inte ger några resultat, försök inte fortsätta att visa inlägget. Visa bara ett standardsvar eller ett fel.)




  1. Vad är nytt i PostgreSQL 12

  2. OBJECTPROPERTY() vs OBJECTPROPERTYEX() i SQL Server:Vad är skillnaden?

  3. Enklaste sättet för PHP e-postverifieringslänk

  4. PHP/SQL-databas som frågar efter god praxis och säkerhet