我有關於Oracle數據庫SQL的問題。將月份添加到EndDate作爲Oracle中的約束SQL
我的員工每個人都有一個項目,項目的結束日期取決於基於PTerm給予他們的月數。我是否有權這樣做?
CREATE TABLE PROJECT (P_ID VARCHAR (20) NOT NULL,
PNAME VARCHAR (100) NOT NULL,
PTERM VARCHAR (20),
PSTARTDATE DATE,
PENDDATE DATE,
CONSTRAINT PROJECT_PKEY PRIMARY KEY (P_ID),
CONSTRAINT PROJECT_PTERM CHECK
(PTERM IN ('1 MONTH', '2 MONTH', '3 MONTH')),
CONSTRAINT PROJECT_ENDDATE CHECK
(PENDDATE = (PSTARTDATE + PTERM)));
什麼味道的SQL和哪個具體的數據庫產品是這樣的?事情往往是非常快速的供應商特定....這對於MySQL來說是這樣嗎? Postgres的? SQL Server?甲骨文? IBM Db2?還有其他的東西嗎?請**相應地更新您的標籤**! –
您可能會考慮從表中刪除「PENDDATE」列,並根據需要進行計算(例如,使用視圖)。 –