Oracle默认列值计算日期

Kei*_*ith 1 oracle default-value

我正在尝试创建一个表,该表具有sysdate日期的默认值 - 在oracle中为2

Oracle似乎没有sysdate作为默认值但不是sysdate - 2.这可能吗?

Oll*_*lie 6

您需要在括号中指定DEFAULT值:

创建表:

CREATE TABLE order_status (
  order_id NUMBER,
  last_modified DATE DEFAULT (SYSDATE - 2)
);
Run Code Online (Sandbox Code Playgroud)

插入记录以测试默认值:

INSERT INTO order_status
(order_id)
VALUES
(1);
Run Code Online (Sandbox Code Playgroud)

从表中选择数据以确认默认工作(当前日期14/11/2011):

SELECT *
  FROM order_status;

ORDER_ID  LAST_MODIFIED
       1  12/11/2011
Run Code Online (Sandbox Code Playgroud)

数据库版本10g.

希望能帮助到你...