¿Existe una guía oficial o un umbral para indicar cuándo es una buena práctica utilizar una clave externa en una base de datos MySQL?Cuándo utilizar una clave externa en MySQL
Supongamos que ha creado una tabla para películas. Una forma de hacerlo es integrar los datos de productor y director en la misma tabla. (movieID, movieName, directorName, producerName).
Sin embargo, supongamos que la mayoría de los directores y productores han trabajado en muchas películas. ¿Sería mejor crear otras dos tablas para productores y directores, y usar una clave externa en la mesa de películas?
¿Cuándo se convierte en la mejor práctica hacer esto? Cuando muchos de los directores y productores aparecen varias veces en la columna? ¿O es una buena práctica emplear un enfoque de clave externa al inicio? Si bien parece más eficiente usar una clave externa, también aumenta la complejidad de la base de datos.
Entonces, ¿cuándo vale la pena el intercambio entre la complejidad y la normalización? No estoy seguro de si hay un umbral o una cierta cantidad de repeticiones de celda que hace que sea más sensato usar una clave externa.
Estoy pensando en una base de datos que será utilizada por cientos de usuarios, muchos al mismo tiempo.
¡Muchas gracias!
Buena publicación. Sin embargo, para que quede claro, puede implementar claves externas en MyISAM. Simplemente no serán ejecutados ***. – webbiedave