3.8. Transformacion de la generalizacion/especializacion

Cada una de las entidades superclase y subclase que forman parte de una generalización/especialización se transforma en una relación:

a)  La relación de la entidad superclase tiene como clave primaria la clave de la entidad superclase y contiene todos los atributos comunes.

b)  Las relaciones de las entidades subclase tienen como clave primaria la clave de la entidad superclase y contienen los atributos específicos de la subclase.

 

Ejemplo de transformación de la generalización/especialización

Veamos un ejemplo (consultad el gráfico en la página siguiente) que contiene una generalización/especialización y, también, una interrelación M:N en la que interviene una de las entidades subclase. Este ejemplo se traduce al modelo relacional como se indica a continuación:

EMPLEADO(DNI, nombre, dirección, teléfono)         
DIRECTIVO(DNI, coche)                                                
       donde {DNI} referencia EMPLEADO                    
ADMINISTRATIVO (DNI, antigüedad)                       
       donde {DNI} referencia                                            
EMPLEADO TÉCNICO (DNI, título)                              
         donde {DNI} referencia EMPLEADO                   
PROYECTO(pro, ...) TRABAJA(DNI, pro, superficie) 
          donde {DNI} referencia TÉCNICO                       
           y {pro} referencia PROYECTO                             

 

Conviene observar que los atributos comunes se han situado en la relación EMPLEADO y que los atributos específicos se han situado en la relación de su entidad subclase. De este modo, coche está en DIRECTIVO, título en TÉCNICO y antigüedad en ADMINISTRATIVO.

Por otro lado, la interrelación específica para los empleados técnicos denominada trabaja se transforma en la relación TRABAJA. Observad que esta relación tiene una clave foránea que referencia sólo a los empleados técnicos, y no a los empleados directivos o administrativos.