【发布时间】:2017-01-19 22:57:14
【问题描述】:
我有两个数据库,一个在本地,另一个在生产中。
在其中一个中,我有列 IdNivelDominio 没有 FK 但如果我打开 Constraints 文件夹,我有类似的东西:
DF_EvaluacionDetalleCompetenciasFuncionales_IdNivelDominio
所以我想将此字段回复到我的另一个数据库中:
ALTER TABLE Reclutamiento.EvaluacionDetalleCompetenciasFuncionales
ADD IdNivelDominio INT NOT NULL;
但我得到错误:
ALTER TABLE 只允许添加可以包含空值的列,或者 指定了 DEFAULT 定义,或者要添加的列是 身份或时间戳列,或者如果之前都没有 满足条件表必须为空才能允许添加 本栏目。列“IdNivelDominio”不能添加到非空 表 'EvaluacionDetalleCompetenciasFuncionales' 因为它没有 满足这些条件。
问题是该字段未与外键链接(进入原始表),因此我无法添加约束。
谁能解释一下它是怎么发生的?或者有什么方法可以在没有外键的情况下进行约束?问候
【问题讨论】:
-
如果您的表中有数据,请在您的
alter语句中添加default关键字.....
标签: sql sql-server