Maison  >  Article  >  base de données  >  Tutoriel de conception de table MySQL : Créer une table de réponse aux commentaires simple

Tutoriel de conception de table MySQL : Créer une table de réponse aux commentaires simple

王林
王林original
2023-07-01 20:27:102292parcourir

Tutoriel de conception de table MySQL : Créer une table de réponse à un commentaire simple

La fonctionnalité de commentaire est une exigence très courante lors du développement d'applications Web. Afin d'implémenter la fonction de commentaire, nous devons concevoir une structure de table adaptée au stockage des commentaires et de leurs réponses. Ce didacticiel vous montrera comment créer un simple formulaire de réponse aux commentaires.

Analyse des exigences :
Notre tableau de réponse aux commentaires doit stocker les informations suivantes :

  1. ID du commentaire
  2. Contenu du commentaire
  3. Heure du commentaire
  4. ID utilisateur du commentaire
  5. ID de réponse (s'il s'agit d'une réponse, sinon vide)
  6. Contenu de la réponse (s'il s'agit d'une réponse, sinon vide)
  7. Délai de réponse (s'il s'agit d'une réponse, sinon il est vide)
  8. ID utilisateur de la réponse (s'il s'agit d'une réponse, sinon il est vide)

Selon aux exigences ci-dessus, nous pouvons créer un fichier nommé Table des commentaires. comments 的表。

表的设计:
首先,我们需要创建一个数据库来存储我们的表。您可以使用下面的SQL语句创建一个名为 comments_db 的数据库:

CREATE DATABASE comments_db;

接下来,我们可以使用下面的SQL语句创建一个名为 comments 的表:

USE comments_db;

CREATE TABLE comments (
    comment_id INT AUTO_INCREMENT PRIMARY KEY,
    comment_text VARCHAR(255) NOT NULL,
    comment_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    user_id INT NOT NULL,
    reply_id INT,
    reply_text VARCHAR(255),
    reply_time TIMESTAMP,
    reply_user_id INT,
    FOREIGN KEY (reply_id) REFERENCES comments (comment_id),
    FOREIGN KEY (reply_user_id) REFERENCES users (user_id)
);

解析表设计:

  • comment_id 是评论ID,并设置为自动增长的主键。
  • comment_text 是评论的内容,设置长度为255个字符。
  • comment_time 存储评论的时间,默认为当前时间。
  • user_id 是评论的用户ID,不能为空。
  • reply_id 是回复ID,如果是回复,则为回复的评论ID;否则,为NULL。
  • reply_text 是回复的内容,如果是回复,则为回复的内容;否则,为NULL。
  • reply_time 存储回复的时间,如果是回复,则为回复的时间;否则,为NULL。
  • reply_user_id 是回复的用户ID,如果是回复,则为回复的用户ID;否则,为NULL。
  • FOREIGN KEY 约束用于建立reply_idreply_user_idcomments表和users表的关联。

使用示例:
现在我们已经创建了一个名为 comments

Conception de la table :
    Tout d'abord, nous devons créer une base de données pour stocker notre table. Vous pouvez créer une base de données nommée comments_db en utilisant l'instruction SQL suivante :
  1. INSERT INTO comments (comment_text, user_id) VALUES ('这是一条新评论', 1);
    
  2. Ensuite, nous pouvons créer une table nommée comments en utilisant l'instruction SQL suivante :
INSERT INTO comments (comment_text, user_id, reply_id, reply_text, reply_user_id) 
VALUES ('这是一条回复', 2, 1, '这是回复的内容', 1);
    Parse table design :
    • comment_id est l'ID du commentaire et est défini comme une clé primaire à augmentation automatique.
      comment_text est le contenu du commentaire et la longueur est fixée à 255 caractères.
    1. comment_time L'heure à laquelle le commentaire est stocké, la valeur par défaut est l'heure actuelle.

    user_id est l'ID utilisateur du commentaire et ne peut pas être vide.

    reply_id est l'ID de réponse. S'il s'agit d'une réponse, c'est l'ID de commentaire de la réponse ; sinon, il est NULL. 🎜🎜reply_text est le contenu de la réponse. Si c'est une réponse, c'est le contenu de la réponse sinon, c'est NULL. 🎜🎜reply_time stocke l'heure de réponse. S'il s'agit d'une réponse, c'est l'heure de réponse sinon, c'est NULL. 🎜🎜reply_user_id est l'ID utilisateur de la réponse. S'il s'agit d'une réponse, c'est l'ID utilisateur de la réponse ; sinon, il est NULL. 🎜🎜Les contraintes FOREIGN KEY sont utilisées pour créer des tables reply_id et reply_user_id et comments et des utilisateurs code >Association de tables. 🎜🎜Exemple d'utilisation : 🎜Maintenant que nous avons créé un tableau appelé <code>comments, nous pouvons commencer à l'utiliser. Voici quelques exemples de code pour montrer comment faire fonctionner ce tableau : 🎜🎜🎜Insérer un nouveau commentaire : 🎜🎜
    SELECT c.comment_id, c.comment_text, c.comment_time, u1.username AS comment_username,
           r.reply_id, r.reply_text, r.reply_time, u2.username AS reply_username
    FROM comments AS c
    LEFT JOIN comments AS r ON c.comment_id = r.reply_id
    LEFT JOIN users AS u1 ON c.user_id = u1.user_id
    LEFT JOIN users AS u2 ON r.reply_user_id = u2.user_id;
    🎜🎜Répondre à un commentaire : 🎜🎜rrreee🎜🎜Interroger tous les commentaires et leurs réponses : 🎜🎜rrreee🎜Résumé : 🎜 Dans Dans ce didacticiel, nous avons appris à créer un simple formulaire de réponse aux commentaires. En concevant une structure de table appropriée et en utilisant des instructions SQL appropriées, nous pouvons facilement stocker et gérer les données des commentaires et leurs réponses. J'espère que ce tutoriel vous sera utile ! 🎜

    Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

    Déclaration:
    Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn