【发布时间】:2019-09-11 00:03:07
【问题描述】:
我使用 MS SQL 2008 R2,我需要在特定列上创建一个带有 CHECK 的表,但我收到此错误。你能指出我正确的方向吗?谢谢
HeatingSystem tinyint NOT NULL
CONSTRAINT CK_ReProperties_HeatingSystem CHECK(Size between 0 and 3),
错误
消息 8141,第 16 级,状态 0,第 1 行 列 'HeatingSystem' 的列 CHECK 约束引用另一列,表 'ReProperties'。 消息 1750,第 16 级,状态 0,第 1 行 无法创建约束。查看以前的错误。
【问题讨论】:
-
你想实现什么?如果 Size 不在 0 和 3 之间,则 HeatingSystem 必须为 0?
-
我想限制 HeatingSystem 的可能值,因此 HeatingSystem 应该只接受 0、1、2、3
-
如果你只是在 NOT NULL 后面加一个逗号,就可以了。