Si ya tiene un CHECK existente restricción en SQL Server, pero debe modificarla, deberá eliminarla y volver a crearla. No hay ALTER CONSTRAINT declaración o algo similar.
Entonces, para "modificar" una restricción existente:
- Elimine la restricción usando
ALTER TABLEconDROP CONSTRAINT. - Cree la nueva restricción usando
ALTER TABLEconADD CONSTRAINT.
Ejemplo
Aquí hay un ejemplo de soltar y recrear un CHECK restricción.
ALTER TABLE ConstraintTest DROP CONSTRAINT chkTeamSize; ALTER TABLE ConstraintTest ADD CONSTRAINT chkTeamSize CHECK (TeamSize >= 5 AND TeamSize <= 20) ;
Como se mencionó, no puede modificarlo; debe soltarlo y crearlo con la nueva definición.
En este caso, la restricción se llama chkTeamSize y simplemente lo suelto y lo creo con la nueva definición.
Una nota sobre el pedido
Tenga en cuenta que CHECK las restricciones se validan en el orden en que se crean, por lo que eliminar o volver a crear una restricción puede hacer que se valide en un orden diferente al anterior. Esto puede dar lugar a que se detecten otros errores antes de esta restricción, cuando antes se detectaban después.