• Inicio
  • Iniciar sesión
  • Crear cuenta
  • Explorar cursos
  • Bootcamps
  • Precios
  • Blog

¡Califica el Curso Profesional de Backend!

Selecciona la calificación de 1 a 5 estrellas

Reporta un error

Curso Curso Profesional de Backend

Video Relaciones muchos a muchos

Tipo de error

Algo salió mal al cargar el vídeo

El vídeo no pudo cargarse, hemos enviado un reporte al equipo de desarrollo, para poder solucionarlo a la brevedad.

Mientras solucionamos el problema, intenta lo siguiente para solucionar el error:

  • Recarga la página
  • Intenta reiniciar tu navegador y luego vuelve a reproducir el vídeo
  • Vacía el caché de tu navegador
  • Intenta reproducir con las extensiones del navegador deshabilitadas
  • Intenta con un navegador distinto
  • Si el problema persiste contáctanos en Discord
home Ir al inicio report_problem Reportar falla star Valorar curso

Si bien, las relaciones 1 a muchos dependen de un campo que apunta de una tabla hacia otra, a la que llamamos llave foránea, las relaciones muchos a muchos requieren de otras formas y estrategias.

Piensa por un momento en un ejemplo de una relación muchos a muchos, intenta traer una tú mismo, considera que normalmente leemos una relación de este tipo como que una entidad A tiene muchos elementos de una entidad B, y a su vez, B puede tener muchos elementos de A.

Si te ayuda, te daré un ejemplo, un canal de YouTube puede tener muchos suscriptores, y a su vez cada suscriptor puede estar suscrito a muchos canales de YouTube, y ahí lo tienes, una relación de muchos a muchos.

Si se te ocurrió alguna otra, déjala en los comentarios para ayudar a reforzar el concepto de tus compañeros de clase, voy a estar leyendo los ejemplos que coloquen.

En una base de datos relacional, las relaciones muchos a muchos suelen representarse a través de una tabla asociativa.

Considera que tenemos una tabla Canal, y una tabla Usuario, como en el ejemplo que di antes, se establece que un usuario puede suscribirse a muchos canales, y que un canal puede tener muchos suscriptores, ya que ésta se trata de una relación muchos a muchos, vamos a introducir una nueva tabla, cuya función será la de asociar la tabla canales y la tabla usuarios.

Para que la nueva tabla pueda hacer esta función debe contener al menos dos campos, uno de ellos apuntando a la tabla usuarios y otro apuntando a la tabla canales. De tal manera que si yo quisiera establecer que el usuario Uriel, se relaciona con el canal CódigoFacilito, en esta nueva tabla guardaría un registro así:

Canal Usuario
CodigoFacilito Uriel
CodigoFacilito Marines
MarinesMG Rafa

Una tabla asociativa, debe de almacenar una referencia para cada una de las dos tablas que está relacionando, de alguna manera puedes pensar que esta tabla se relaciona con el esquema uno a muchos con ambas tablas, en nuestro ejemplo podemos establecer que la nueva tabla tiene una relación de pertenencia para el usuario, y una de pertenencia para el canal.

Usando esta estrategia, cada que queramos establecer una relación uno a muchos entre dos elementos, creamos un nuevo registro en una tabla asociativa que apunte a ambos elementos en la relación.

Si aún no te cuadra bien cómo debe suceder esta relación, pasemos a los siguientes temas para poner en práctica el conocimiento que hemos adquirido.

  • check_circle_outline
    Módulo 1 | 8 clases

    Introducción

    expand_more
  • check_circle_outline
    Módulo 2 | 19 clases

    Http

    expand_more
  • check_circle_outline
    Módulo 3 | 11 clases

    Bases de Datos

    expand_more
  • check_circle_outline
    Módulo 4 | 24 clases

    Buenas prácticas de desarrollo.

    expand_more
  • check_circle_outline
    Módulo 5 | 14 clases

    Autenticación

    expand_more
  • check_circle_outline
    Módulo 6 | 14 clases

    Relaciones en la base de datos.

    expand_more
    • done_all

      Clase 1

      Fundamentos de relaciones en la base de datos

    • done_all

      Clase 2

      Relaciones uno a muchos - El esquema

    • done_all

      Clase 3

      Relaciones uno a muchos - Los modelos

    • done_all

      Clase 4

      Nombres para asociaciones

    • done_all

      Clase 5

      Guardar relación uno a muchos

    • done_all

      Clase 6

      Relaciones en un proyecto real

    • done_all

      Clase 7

      Eager loading (Cargado anticipado)

    • done_all

      Clase 8

      Ejercicio - Implementa tu propio CRUD

    • done_all

      Clase 9

      Relaciones muchos a muchos

    • done_all

      Clase 10

      Integrando CRUD de Categorías

    • done_all

      Clase 11

      Tabla asociativa

    • done_all

      Clase 12

      Definir relación muchos a muchos

    • done_all

      Clase 13

      Crear relaciones muchos a muchos

    • done_all

      Clase 14

      Mostrar objetos de una relación muchos a muchos

  • check_circle_outline
    Módulo 7 | 5 clases

    Websockets (realtime)

    expand_more
  • check_circle_outline
    Módulo 8 | 4 clases

    Entorno de producción

    expand_more
  • check_circle_outline
    Módulo 9.-

    Examen del curso

    expand_more
    • done_all

      Examen

      Examen final del curso

3 comentario(s)

Diana Chacón Ocariz

08 Julio 21

more_vert
  • Resuelta

La relación receta - ingrediente: Una receta posee muchos ingredientes, y un mismo ingrediente, puede formar parte de muchas recetas. En este caso, la tabla asociativa puede tener, además de las claves foráneas de receta e ingrediente, otros campos, por ejemplo la cantidad.

Rubén Rangel

17 Abril 20

1
more_vert
  • Resuelta
La relación de Alumnos, Materias es una relación de M:M, se debe crear una nueva tablas asociativa student_asignature con el campo identificdor del student y el campo identificador de asignature.

Jose Valencia

22 Agosto 19

5
more_vert

Usando esta estrategia, cada que queramos establecer una relación uno a muchos entre dos elementos, creamos un nuevo registro en una tabla asociativa que apunte a ambos elementos en la relación.

Hola! Creo que acá hay una confusión, y en vez de ser una relacion uno a muchos, deberia ser muchos a muchos. Sucede en el penultimo parrafo

Relaciones muchos a muchos

arrow_back Siguiente arrow_forward
Curso Profesional de Backend