sql >> Base de Datos >  >> RDS >> Mysql

Implementación de comentarios y Me gusta en la base de datos

La solución más extensible es tener solo una tabla "base" (conectada a "me gusta", etiquetas y comentarios) y "heredar" todas las demás tablas de ella. Agregar un nuevo tipo de entidad implica simplemente agregar una nueva tabla "heredada"; luego, se conecta automáticamente a toda la maquinaria de me gusta/etiquetar/comentario.

El término entidad-relación para esto es "categoría" (consulte la Guía de métodos ERwin , apartado:"Relaciones de subtipos"). El símbolo de categoría es:

Suponiendo que a un usuario le gusten varias entidades, se puede usar una misma etiqueta para más de una entidad, pero un comentario es específico de la entidad, su modelo podría verse así:

Por cierto, hay aproximadamente 3 formas de implementar la "categoría ER":

  • Todos los tipos en una tabla.
  • Todos los tipos de hormigón en tablas separadas.
  • Todos los tipos concretos y abstractos en tablas separadas.

A menos que tenga requisitos de rendimiento muy estrictos, el tercer enfoque es probablemente el mejor (lo que significa que las tablas físicas coinciden 1:1 con las entidades del diagrama anterior).