Bonjour a tous,
j'essaye de créer un petit forum relativement simple en MySQL + Java (style vBulletin, phpBB, etc). Le problème c'est que je débute et que j'ai envis de faire ça bien dans les règles. J'aimerais donc vos avis et conseils sur plusieurs points.
Pour la structure de ma base de donnée je compte créer deux "type" de table. Des tables représentant mes sections de forum ayant pour enregistrements des liens vers un certain nombre d'autres tables représentant mes sujets de discussion ayant pour enregistrement la liste de message du sujet en question.
Par exemple :
forum_cuisine
-- sujet_forum_cuisine_1 (nom du sujet, titre, auteur, date, etc.)
-- sujet_forum_cuisine_2
sujet_forum_cuisine_1
-- Message 1 (auteur, message, date, etc.)
-- Message 2
-- Message 3
-- etc...
sujet_forum_cuisine_1
-- Message 1
-- Message 2
-- Message 3
-- etc...
Finalement, je crée une table pour chaque forum et pour chaque sujet, en renseignant chaque forum sur les sujets qu'il contient. Donc la majeur partie des recherche dans ma base de donnée se feront sur le nom des tables, pour trouver les sujets de chaque forum. Est-ce que c'est une "bonne" façon de faire ? ou ya t'il une manière plus performante (plus rapide) ?
Si oui, j'ai un petit problème. Lorsqu'on répond à un sujet de n'importe quel forum celui ci se retrouve "tout en haut" de manière à ce que les sujets soient classés par ordre de date de modification. Là je sais pas trop comment faire, est il possible de "remonter" un enregistrement dans une table pour le mettre en premiere position ? j'ai cherché un peu mais j'ai pas l'impression que ça soit possible.
Je crois qu'il faudrait comparer les dates de modification de chaque sujets pour sortir les plus récents mais j'ai l'impression que c'est une opération assez lourde. Savez vous comment procède les forum d'aujourd'hui ? là je bloque car il me faut quelque chose qui consomme le moins de ressource possible.
Merci d'avance
Partager