sql >> Base de Datos >  >> RDS >> Mysql

¿Tienen sentido múltiples claves foráneas?

Esto está bien, pero tenga en cuenta que solo tiene sentido si una C siempre tiene que tener una A y una B como pareja.

Si solo desea que A tenga C y B tenga C, pero A y B no están relacionados, debe colocar la clave externa en A y B y permitir que sea anulable.

Actualización:después de la aclaración, parece que desea dos relaciones separadas:una A puede tener muchas C y una B puede tener muchas C, pero una C solo puede pertenecer a una A o una B.

Solución:Son dos relaciones separadas de uno a muchos, así que cree dos nuevas tablas A_C y B_C, y coloque las claves foráneas allí. A_C contiene una clave externa a A y una clave externa a C. De manera similar para B_C.