当我创建一些表格时,真的很简单,它可能只是我很愚蠢,但我宁愿将它发布在这里并对它进行排序。在创建表格时检查约束条件返回错误
我正在使用Postgresql。
(此表只是其中之一,但它是一个的给了我一个问题,一个)
CREATE TABLE Ticket
(
ID INTEGER NOT NULL PRIMARY KEY,
Problem VARCHAR(1000),
Status VARCHAR(20) NOT NULL DEFAULT 'open',
Priority INTEGER NOT NULL,
LoggedTime TIMESTAMP NOT NULL,
CustomerID INTEGER NOT NULL,
ProductID INTEGER NOT NULL,
FOREIGN KEY (ProductID) REFERENCES Product(ID),
FOREIGN KEY (CustomerID) REFERENCES Customer(ID),
CHECK (status='open' OR 'closed' AND priority = 1 OR 2 OR 3)
);
错误:
ERROR: invalid input syntax for type boolean: "closed"
此外,如果任何人都可以给我做的更好的方法检查:
CHECK (status='open' OR 'closed' AND priority = 1 OR 2 OR 3)
然后,那将非常感激!
非常感谢您的帮助。究竟是我在找什么:) – Jimmy 2012-04-08 16:19:12
@Jimmy - 我可能会分解成2个单独的约束条件。一个用于“状态”,另一个用于“优先级”。 – 2012-04-08 16:21:24