當我創建一些表格時,真的很簡單,它可能只是我很愚蠢,但我寧願將它發佈在這裏並對它進行排序。在創建表格時檢查約束條件返回錯誤
我正在使用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