运维日志

记录sqlserver因字段包含默认约束导致修改字段失败问题

背景:

生产上需要修改某个表的一个字段,将varchar修改为int类型

alter table xxxx alter column xxxx int;

实际上执行时报以下错误:

[Err] 42000 - [SQL Server]Object 'DF__cdis_file__contr__20900456' cannot be disabled or enabled. This action applies only to foreign key and check constraints.
42000 - [SQL Server]Could not enable or disable the constraint. See previous errors.

进去查看了表结构之后,发现有一个默认字段存在约束: DF__cdis_file__contr__20900456 ,因此不能修改字段信息

解决方法:

  1. 先将表字段的约束删除
  2. 修改表字段
  3. 重建字段约束

 

 

评论 抢沙发

  • QQ号
  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

登录

忘记密码 ?

切换登录

注册

我们将发送一封验证邮件至你的邮箱, 请正确填写以完成账号注册和激活