CREATE TABLE example_table (
column1 INT DEFAULT 42,
column2 VARCHAR(50) DEFAULT 'default_value',
column3 TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
在上面的示例中:
- column1 的默认值为整数 42。
- column2 的默认值为字符串 'default_value'。
- column3 的默认值为当前时间戳,使用 CURRENT_TIMESTAMP 关键字。
你还可以使用常量、表达式、函数等作为默认值,以满足具体的需求。以下是一些示例:
CREATE TABLE another_table (
column1 INT DEFAULT 0,
column2 BOOLEAN DEFAULT false,
column3 VARCHAR(255) DEFAULT 'unknown',
column4 TIMESTAMP DEFAULT NOW()::timestamp
);
在上面的示例中:
- column1 的默认值为整数 0。
- column2 的默认值为布尔值 false。
- column3 的默认值为字符串 'unknown'。
- column4 的默认值为当前时间戳,使用 NOW()::timestamp 函数。
如果在插入数据时未提供这些列的值,系统将使用指定的默认值。例如:
INSERT INTO example_table (column2) VALUES ('new_value');
在上述情况下,column1 将使用默认值 42,column2 将使用提供的 'new_value',而 column3 将使用默认的当前时间戳。
要注意,如果插入语句中提供了列的值,将使用提供的值而不是默认值。默认值仅在插入时未提供值的情况下起作用。
这是有关 PostgreSQL 默认值的一些基本概念。
转载请注明出处:http://www.zyzy.cn/article/detail/8122/PostgreSQL