Tablas relacionales con MyISAM y Mysql
MySql uno de los más populares servidores de Base de Datos en el mundo, soporta tablas relacionales, es más cualquier servidor de base de datos lo soporta, pero, la pregunta que es relación de tablas?
La relación de tablas es el enlace entre diferentes tablas a través de campos, esta relación puede darse manualmente o a través de la integridad referencial.
El motor de almacenamiento MyISAM, se puede efectuar relaciones a pesar de que no posee integridad referencial como InnoDB.
Tabla A: Alumno
Campos: id , nombre, apellido
Tabla B: Curso
Campos: id, nombre, creditos
Tabla C: Matricula
Campos: idalumno, idcurso
¿Como podemos lista todos los alumnos en el curso con id = 6 ?
Solo usamos 2 tablas, alumno y matricula
Select a.id, a.nombre, a.apellido from Matricula m
Left join Alumno a on m.idalumno = a.id
Where m.idcurso = 6
¿Como podemos lista todos los alumnos con sus cursos?
Usamos las 3 tablas
Select a.id, a.nombre, a.apellido, c.nombre, c.creditos from Matricula m
Left join Alumno a on m.idalumno = a.id
Left join Curso c on m.idcurso = c.id
Y asi podemos seguir sumando más tablas y sumando sentencias de relaciones.