Just nu i M3-nätverket
Jump to content

forum


GronK

Recommended Posts

Jag tänkte nu sätta mina kunskaper på prov och göra ett forum men skulle bara vilja kolla en sak med er först. Jag har liksom struntat i biten om databaser, ganska dumt så här nu i efter hand, men man lär ju sig av misstag också.

 

Så till min fråga..

När jag gör databasen är det rätt att jag ska göra dessa fyra tabeller?

Jag vet att det beror lite på hur mitt forum skall fungera. Men om man tänker lite som eforum funkar.

 

kanaler:

id_kanal | ämne | id_forum_kopia

 

forum:

id_forum | ämne | id_tråd_kopia | id_svar_kopia

 

trådar:

id_tråd | ämne | fråga

 

svar:

id_svar | tråd_id_kopia | svar

Link to comment
Share on other sites

Hej!

 

Det svåra när man utvecklar ett forum är att lägga sig på rätt nivå vad gäller funktionalitet. Dessutom är forum av en applikationstyp som bryter mot alla grundläggande teorier om bra relationsdatabasstrukturer.

Eftersom prestanda måste vara på topp, och mängden samtidiga användare ofta hög, måste man ofta göra prestandavgörande avsteg från fullt normaliserade tabellstrukturer.

 

Jag tror att det är bäst att, som du, börja smått och lära sig, för att sedan göra om och bygga en mer avancerad version.

 

Jag utgår ifrån att användarna inte behöver registrera sig, utan forumet fungerar mer som en gästbok?

 

[PK] = Primärnyckel

[FK] = Främmande nyckel

Index används för sorteringen

 

Så här skulle min struktur se ut:

[kanaler]

KanalID[PK], Amne, Index

 

[forum]

ForumID[PK], Amne, Index

 

[tradar]

TradID[PK], ForumID[FK], Amne, Index

 

[inlagg]

InlaggID[PK], TradID[FK], Amne, Inlagg, Skapad, Index

 

Den här strukturen kan du bygga med mer funktionalitet senare. Ofta summerar man ihop statistik på de övre nivåerna: text i [tradar] kan du lägga till fält för antal inlägg, senaste inlägget osv.

 

Ett litet tips bara: använd engelska namn, alternativt svenska namn utan åäö.

 

Det finns även en hel del olika namnstandarder för databaser. Det vore kanske en ide att börja använda en sådan innan det är försent ;)

 

Jag googlade lite och dök på den här (som jag dock inte har någon uppfattning om): http://vyaskn.tripod.com/object_naming.htm

 

/foo

 

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.



×
×
  • Create New...