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

eliminaciones en cascada que causan múltiples rutas en cascada

La respuesta aprobada no es una buena respuesta. El escenario descrito no tiene un mal diseño, ni es "arriesgado" confiar en la base de datos para hacer su trabajo.

La pregunta original describe un escenario perfectamente válido y el diseño está bien pensado. Claramente, eliminar un usuario debería eliminar tanto los elementos del usuario (y cualquier voto sobre ellos) como eliminar los votos del usuario sobre cualquier elemento (incluso los elementos que pertenecen a otros usuarios). Es razonable pedirle a la base de datos que realice esta eliminación en cascada cuando se elimina el registro de usuario.

El problema es que SQL Server no puede manejarlo. Su implementación de eliminaciones en cascada es deficiente.