¿Cómo manejar una relación “O” en un diseño ERD (tabla)?

Estoy diseñando una pequeña base de datos para un proyecto personal, y una de las tablas, llámela tablaC, debe tener una clave externa para una de dos tablas, llámelasA yB, diferenciándose por la entrada. ¿Cuál es la mejor manera de implementar esto?

Ideas hasta ahora:

Cree la tabla con dos campos de clave foránea anulables que se conecten a las dos tablas.Posiblemente con un activador para rechazar inserciones y actualizaciones que resulten en 0 o 2 de ellos nulos.Dos tablas separadas con datos idénticosEsto rompe la regla sobre la duplicación de datos.

¿Cuál es una forma más elegante de resolver este problema?

Respuestas a la pregunta(2)

Su respuesta a la pregunta