Este artículo demuestra cómo eliminar una columna en una base de datos de SQL Server, cuando esa columna tiene una restricción existente (sugerencia:primero debe eliminar la restricción).
Si alguna vez has intentado soltar una columna, di algo así:
ALTER TABLE Tasks DROP COLUMN TaskCode; GO
Solo para recibir un error como este:
Msg 5074, Level 16, State 1, Line 1 The object 'taskcode_unique' is dependent on column 'TaskCode'. Msg 4922, Level 16, State 9, Line 1 ALTER TABLE DROP COLUMN TaskCode failed because one or more objects access this column.
La razón es que la columna tiene una restricción existente y no puede descartar la tabla cuando tiene una restricción.
Por lo tanto, debe eliminar la restricción antes de eliminar la tabla.
Elimine la restricción primero
Así es como se elimina la restricción:
ALTER TABLE Tasks DROP CONSTRAINT taskcode_unique; GO
Resultado:
Commands completed successfully.
Entonces Suelta la Mesa
Ahora que eliminó la restricción, puede continuar y eliminar la tabla:
ALTER TABLE Tasks DROP COLUMN TaskCode; GO
Resultado:
Commands completed successfully.