Ver Mensaje Individual
  #2 (permalink)  
Antiguo 25/05/2007, 17:38
radian
 
Fecha de Ingreso: diciembre-2005
Ubicación: Madrid, España
Mensajes: 154
Antigüedad: 18 años, 4 meses
Puntos: 2
Re: Relaciones en MySQL

Por favor, la próxima vez escribe tu pregunta en varias lineas, tu mensaje es infumable...

Las relaciones entre tablas sirven, valga la redundancia, para establecer relaciones integrales y referenciales, de forma que siempre que tengamos unos datos específicos podamos extraer toda la relación que existen entre ellos.
Las relaciones entre tablas sirven para la optimización de el almacenaje de información, ya que permiten no tener que duplicar datos.

Ejemplo:

base de datos de empresas y de empleados de empresas
en la tabla empleados tendremos un identificador de la empresa a la que pertence, por lo que siempre tendremos localizado al empleado ;)
Esto es una relación 1 a N y es integral. Puedes hacer por ejemplo que al borrar la empresa se borren todos los empleados que tienen.
Se fija en la base de datos como Foreign Key


¿Cómo encontrar las relaciones entre tablas? Respuesta: Usa la lógica

PHPMyAdmin: una mierda para establecer estas relaciones, búscate un cliente decente de MySQL

Otra cosa importante: MyISAM en Mysql 4.1 no permitía FK, no sé si a partir de la versión 5 ha cambiado. El motor InnoDB permite definir estas FK con seguridad


Saludos