这个错误提示说明在 'Student' 表中已经存在一个名为 'CK_Student' 的 CHECK 约束,而你在执行 ALTER TABLE 语句时又试图添加一个同名的约束,因此产生了冲突。具体来说,这个约束是在 'Sdept' 列上定义的,它可能要求 'Sdept' 的取值必须满足某些条件,例如只能是特定的几个值之一,或者必须在某个范围内。

要解决这个问题,你可以考虑以下两种方法:

  1. 删除原有的约束: 使用以下 SQL 语句删除名为 'CK_Student' 的约束:
    ALTER TABLE Student DROP CONSTRAINT CK_Student;
    
  2. 修改新约束的名称: 在 ALTER TABLE 语句中修改新约束的名称,以避免与已有约束重名。例如:
    ALTER TABLE Student ADD CONSTRAINT CK_Student_New CHECK (Sdept IN ('CS', 'EE', 'Math'));
    

建议你在执行 ALTER TABLE 语句之前,先查询数据库中的约束信息,以确保不会出现重复的约束名称。

SQL 错误:无法添加约束 'CK_Student' - 解决方法

原文地址: https://www.cveoy.top/t/topic/kFgn 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录