3729: Cannot DROP because it is being referenced by object (no se puede eliminar porque otro objeto lo referencia)
SQL Server¿Qué significa?
El objeto que quiere eliminar (tabla, tipo, función, etc.) está referenciado por otro objeto, y esa dependencia impide eliminarlo. Los objetos con schema binding, en particular, están protegidos de esta forma.
¿Por qué ocurre?
Intentar eliminar una tabla/objeto del que depende una vista o función creada WITH SCHEMABINDING; eliminar una tabla referenciada por una foreign key; o quitar un tipo definido por el usuario mientras una tabla/parámetro todavía lo usa.
Cómo solucionarlo
Elimine primero los objetos que lo referencian o quite la dependencia. Para encontrar dependencias: SELECT referencing_schema_name, referencing_entity_name FROM sys.dm_sql_referencing_entities('app_schema.object', 'OBJECT'); En vistas con schema binding, quite primero SCHEMABINDING con ALTER VIEW o elimine la vista, y después elimine la tabla.
Más entradas de este motor
- 50000Error personalizado generado con RAISERROR
- 3902The COMMIT TRANSACTION request has no corresponding BEGIN TRANSACTION (COMMIT TRANSACTION sin BEGIN TRANSACTION correspondiente)
- 1101Could not allocate a new page because of insufficient disk space in filegroup (no se pudo asignar una nueva página por falta de espacio en disco en el filegroup)
- 3961Snapshot isolation transaction failed because the object was modified by a DDL statement (falló la transacción snapshot porque una sentencia DDL modificó el objeto)
- 1785Introducing FOREIGN KEY constraint may cause cycles or multiple cascade paths (la restricción FOREIGN KEY puede provocar ciclos o varias rutas de cascada)
- 9421XML parsing: illegal xml character
- 15151Cannot find the object/principal because it does not exist or you do not have permission (no se encuentra el objeto/principal porque no existe o no tiene permiso)