webForumDet fria alternativet

Synpunkter på ny tabellstruktur för mitt forum

Databaser & SQL

22 svar · 775 visningar · startad av lillebror · sida 2 av 2

Frågan, av lillebror

Hej, När jag designade forumdelen till Flygfyren hade jag inte all kunskap som jag lyckats tillägna mig fram till idag. Varför vill jag designa om och ge forumet en ny struktur? För att lättare förstå ska jag presentera den nuvarande tabellstrukturen: tblforumthread \================== Här lagras huvudinlägget, dvs det första inlägget som skapas i en tråd. tblforumth

Läs frågan i sin helhet →
Medlem sedan dec. 19996 721 inlägg
#21

Okidoki. Jag börjar från vänster och ser vad jag kan hitta att anmärka på... :)

  1. Eftersom det är forumgrupper, med forumgroupId som PK, så tycker jag att tabellen borde heta tblforumgroup (eller forumGroups i den namnkonvention jag änvänder)
  2. I tblforum tycker jag inte att lastposterID och lastposter_date_time behövs. Du får ut dem via lastpostID (som förvisso inte heller behövs, men kan vara vettig ur prestandahänseende)
  3. moderatorID är väl onödig. All information är given ändå.
  4. Möjligtvis kan du vilja tillåta att man stuvar undan fler versioner av en post i tblforumpostoriginal
Medlem sedan apr. 20041 597 inlägg
#22

Tack för dina synpunkter! :)

emission skrev:

  1. Eftersom det är forumgrupper, med forumgroupId som PK, så tycker jag att tabellen borde heta tblforumgroup (eller forumGroups i den namnkonvention jag änvänder)

Precis innan jag fått ditt svar så hade jag kommit på att tblForumGroups är en mer logisk namngivning än det jag hade innan. Så vi tänkte lika där!

emission skrev:

I tblforum tycker jag inte att lastposterID och lastposter_date_time behövs. Du får ut dem via lastpostID (som förvisso inte heller behövs, men kan vara vettig ur prestandahänseende)

Behåller enbart lastpostID.

emission skrev:

moderatorID är väl onödig. All information är given ändå.

Eftersom moderatorID kommer vara främmandenyckel i ett antal tabeller tycker jag det blir smidigare att redan i tblForumMemberModerateForum knyta ihop memberID och forumID till moderatorID. Om jag inte skulle göra enligt ovan skulle jag ju behöva en kompositnyckel i de andra tabellerna vilket skulle resultera i två främmandenycklar istället för endast en nyckel i mitt fall. Är jag helt ute och cyklar nu?! :)

emission skrev:

Möjligtvis kan du vilja tillåta att man stuvar undan fler versioner av en post i tblforumpostoriginal

Enligt den uppdaterade skissen lade jag till attributet versionID i tblForumPostOriginal. På det sättet kan jag lagra flera olika varianter av en och samma post om den modereras mer än en gång.

Bifogar den uppdaterade skissen...

flygfyren - ny forumstruktur ver 2.jpg
Medlem sedan dec. 19996 721 inlägg
#23

lillebror skrev:

Eftersom moderatorID kommer vara främmandenyckel i ett antal tabeller tycker jag det blir smidigare att redan i tblForumMemberModerateForum knyta ihop memberID och forumID till moderatorID. Om jag inte skulle göra enligt ovan skulle jag ju behöva en kompositnyckel i de andra tabellerna vilket skulle resultera i två främmandenycklar istället för endast en nyckel i mitt fall. Är jag helt ute och cyklar nu?! :)

Det beror på vad du vill uppnå, men jag tror det. Det finns ingen nytta och logik i att stoppa in nyckelvärdet moderatorID i t.ex. tblForumPost. Den kolumnen borde vara moderatedByMemberID, typ..

255 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
121 ms — deklarationer (db)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)
122 ms — ändringar (db)