我有两个数据库,一个是本地的,另一个是生产中的。
其中一个我的列IdNivelDominio
没有FK
,但是如果我打开 Constraints 文件夹,我会有类似的内容:
DF_EvaluacionDetalleCompetenciasFuncionales_IdNivelDominio
所以我想将这个字段回复到我的另一个数据库中:
ALTER TABLE Reclutamiento.EvaluacionDetalleCompetenciasFuncionales
ADD IdNivelDominio INT NOT NULL;
但我得到错误:
ALTER TABLE仅允许添加可包含空值的列,或 指定了DEFAULT定义,或者添加的列是 身份或时间戳列,或者如果没有以前的列 条件满足表必须为空以允许添加 这一栏。列'IdNivelDominio'无法添加到非空 表'EvaluacionDetalleCompetenciasFuncionales'因为它没有 满足这些条件。
问题是该字段没有与外键(原始表)链接,因此我无法添加约束。
任何人都可以解释一下它是如何发生的吗?或者有没有办法在没有外键的情况下做限制?此致
答案 0 :(得分:0)
ALTER TABLE Reclutamiento.EvaluacionDetalleCompetenciasFuncionales
ADD IdNivelDominio INT NOT NULL DEFAULT 0;
您正在尝试向表格中添加一个应该为NOT NULL
的新列。您需要指定新列中的值,因为它是NOT NULL