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

struttura mysql per post e commenti

A livello di base, avresti una tabella per ogni tipo di "cosa" nella tua applicazione. In questo caso, una tabella per i post e una tabella per i commenti. Qualcosa di semplice come questo:

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

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

Ciò creerebbe quella che viene chiamata una relazione uno-a-molti (o zero-molti, in realtà) tra post e commenti, per cui ogni post può avere zero o più Pomments associati ma ogni commento può essere associato a un solo post.

Nel tuo codice (che è tutto un altro argomento), per visualizzare un post e i commenti associati ci sono un paio di cose che potresti fare. Supponendo che tu abbia, come input, l'Id del Post che desideri, puoi ottenere quel Post e i suoi Commenti:

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

Cosa fare con i dati risultanti dipende da te e da come desideri utilizzarli nella tua applicazione. Verrebbe restituito come due risultati di tabella, il primo dei quali ha un record (se esiste il Post) e l'ultimo dei quali ha zero o più record. Naturalmente, ti consigliamo di verificare che le cose esistano prima di provare a usarle, ecc. (Quindi se la prima query non restituisce risultati, non provare a continuare a visualizzare il Post. Mostra solo una risposta predefinita o un errore.)