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

mysql-struktur til indlæg og kommentarer

På et grundlæggende niveau ville du have en tabel for hver type "ting" i din ansøgning. I dette tilfælde en tabel for indlæg og en tabel for kommentarer. Noget så simpelt som dette:

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

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

Dette ville skabe det, der kaldes et en-til-mange (eller nul-til-mange, faktisk) forhold mellem indlæg og kommentarer, hvorved hvert indlæg kan have nul eller flere tilknyttede pomments, men hver kommentar kan kun associeres med ét indlæg.

I din kode (som er et helt andet emne) er der et par ting, du kan gøre for at vise et indlæg og dets tilhørende kommentarer. Forudsat at du som input har Id af det indlæg, du ønsker, kan du få det indlæg og dets kommentarer:

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

Hvad du gør med de resulterende data er op til dig, og hvordan du vil bruge dem i din applikation. Det ville komme tilbage som to tabelresultater, hvoraf førstnævnte har én post (hvis Posten findes), og sidstnævnte har nul eller flere poster. Naturligvis vil du gerne kontrollere, at tingene eksisterer, før du prøver at bruge dem osv. (Så hvis den første forespørgsel ikke giver nogen resultater, skal du ikke prøve at fortsætte med at vise indlægget. Bare vis et standardsvar eller en fejl).




  1. Indsættelse af data ved hjælp af mysqli

  2. hvordan ser et B-træindeks på mere end 1 kolonne ud?

  3. Database Performance Tuning til MariaDB

  4. Microsoft OLE DB uudviklet! Længe leve ADO!