CREATE TABLE [dbo].[SALES]
(
[SaleID] [uniqueidentifier] NOT NULL DEFAULT NEWID(),
[ProductID] [int] NOT NULL,
[WorkID] [int] NOT NULL,
[Quantity] [smallint] NOT NULL,
[SaleDate] [datetime] NOT NULL CONSTRAINT DF_SaleDate DEFAULT (GETDATE())
CONSTRAINT CHK_QuantitySaleDate CHECK (Quantity > 0 AND DATEDIFF (d,GETDATE(), SaleDate) <=0)
) ON [PRIMARY]
尝试执行上述查询会导致以下错误:
"Column CHECK constraint for column 'SaleDate' references another column, table 'SALES'."
有人可以赐教我吗?
答案 0 :(得分:0)
这是因为您将约束设置为COLUMN约束。您必须将其设置为TABLE约束。所以,之后:
[SaleDate] [datetime] NOT NULL CONSTRAINT DF_SaleDate DEFAULT (GETDATE())
你需要一个逗号,所以它应该是:
[SaleDate] [datetime] NOT NULL CONSTRAINT DF_SaleDate DEFAULT (GETDATE()),
CONSTRAINT...