📅  最后修改于: 2023-12-03 15:33:45.597000             🧑  作者: Mango
当我们在创建 PostgreSQL 数据库时,如果没有为某个列指定其默认值,那么 PostgreSQL 将会分配默认值。如果你想更改某个列的默认值,那么就可以使用 ALTER TABLE 语句来实现。
下面是 ALTER TABLE 语句的一般语法:
ALTER TABLE table_name ALTER COLUMN column_name SET DEFAULT new_default_value;
在这个语句中:
table_name
指定要更改默认值的表名;column_name
指定要更改默认值的列名;new_default_value
指定要更改的新默认值。假设我们有下面这张包含名称、邮箱地址和创建日期的表 user_profile
:
CREATE TABLE user_profile (
id SERIAL PRIMARY KEY,
name TEXT NOT NULL,
email TEXT NOT NULL,
created_at TIMESTAMP DEFAULT NOW()
);
其中 created_at
列的默认值是 NOW()
函数,它返回当前日期和时间。
现在我们想把 created_at
的默认值更改为 CURRENT_DATE
,也就是仅仅返回当前日期:
ALTER TABLE user_profile ALTER COLUMN created_at SET DEFAULT CURRENT_DATE;
以上就是如何更改 PostgreSQL 数据库表列的默认值。使用 ALTER TABLE 语句并提供新的默认值即可。