Estoy eliminando una fila en una tabla que está en un sitio de una relación muchos a muchos. También me gustaría eliminar las filas relacionadas en el otro lado de esa relación.Eliminación de filas relacionadas en una relación de varios a varios
Por ejemplo, supongamos que tengo las siguientes tablas y quiero eliminar una fila de Cars
. También me gustaría eliminar las filas relacionadas de Drivers
y, por supuesto, las filas ya no son necesarias en CarDrivers
.
Table Cars:
CarID int
CarName nvarchar(100)
Table Drivers:
DriverID int
DriverName nvarchar(100)
Table CarDrivers:
CarID int
Driver int
sé cómo unirse a las tablas anteriores en una consulta SELECT
. Pero no veo cómo eliminar datos a través de la relación.
Nota: Ambos lados de la relación implementan eliminaciones en cascada. Por lo tanto, por ejemplo, al eliminar una fila de Cars
se eliminarán las filas relacionadas en CarDrivers
. Pero obviamente eso no se propaga a la tabla Drivers
.
posible duplicado de [¿Cómo elimino de varias tablas utilizando INNER JOIN en el servidor SQL] (http://stackoverflow.com/questions/783726/how-do-i-delete-from-multiple-tables-using- inner-join-in-sql-server) –
@OMG Ponies: disgree, no es una eliminación encadenada porque los CarDrivers a los controladores serán un niño que elimine un padre. El padre puede tener otros hijos. Ver mi respuesta, por favor – gbn
-1 para preguntas engañosas e incompletas con un mal ejemplo – gbn