sql >> Base de Datos >  >> RDS >> Sqlserver

Eliminación de filas relacionadas en una relación de varios a varios

Tu solicitud no tiene sentido

Los conductores como entidades existen por separado de Cars. Los coches pueden ser conducidos por muchos conductores, los conductores pueden conducir muchos coches. Es por eso que tienes la tabla muchos-muchos.

Tenga en cuenta el bit "los conductores pueden conducir muchos automóviles". Esto significa que si elimina la fila Drivers, debe eliminar otras filas en CarDrivers.

Si todavía quiere hacer esto, necesita un disparador en CarDrivers. La CASCADA de Drivers a CarDrivers eliminará otras filas de CarDrivers por usted. Tampoco puedo recordar el comportamiento predeterminado para la recursividad del disparador.

Que desastre.

Nota:esto casi tiene sentido si tiene unicidad en una de las columnas en la tabla muchos-muchos, entonces debería ser una clave externa entre Automóviles y Conductores (Único en Automóvil significa "como máximo un conductor por automóvil" significa columna FK anulable en Automóviles)