在postgresql中为表创建指定字段的默认值

时间:2015-06-03 13:26:00

标签: database postgresql timestamp default-value

以下是我的桌面设计:

CREATE TABLE "x"."y"(
    "z" timestamp NOT NULL,
    "a" Timestamp NOT NULL DEFAULT z + 18 months,
)
WITH (OIDS=FALSE)
;

如何指定'a'的默认值?

我可以在创建表时指定它吗?

1 个答案:

答案 0 :(得分:0)

正如postgresql文档所述

  

DEFAULT子句为其列中出现的列定义的列分配默认数据值。该值是任何无变量表达式(子查询和不允许当前表中其他列的交叉引用)。默认表达式的数据类型必须与列的数据类型匹配。

最好使用例如规则(http://www.postgresql.org/docs/9.4/static/rules-update.html