Sintaxis para añadir una clave foránea en MySQL
MySQL permite trabajar con distintos tipos de motores de almacenamiento (MyIsam, Memory/HEAP, BDB, InnoDB, etc). Para poder trabajar con claves foráneas las tablas deben tener asignado el motor InnoDB.
Se han de cumplir ciertas condiciones para poder crear un enlace de este tipo entre distintas tablas:
Las tablas que se enlazan deben tener el mismo motor (InnoDB).
Los campos que se enlazan deben ser del mismo tipo de dato y tamaño.
Los nombres de las claves foráneas deben ser únicos en la base de datos
En la tabla que hace referencia, debe haber un índice donde las columnas de clave extranjera estén listadas en primer lugar, en el mismo orden.
En esta instrucción SQL se modifica la tabla1 para añadirle una clave foránea al campotabla1 indicándole a que tabla y campo hace referencia.