ALTER TABLE table_name
RENAME TO new_table_name;
它是否删除名为table_name
的表并创建名为new_table_name
的新表,还是立即对其重命名?
答案 0 :(得分:1)
不,在PostgreSQL中重命名对象的全部操作是更改目录表中的单个条目。
对于表,这是relname
中的pg_class
列。
对该表的所有内部引用都是通过其“对象ID”完成的。
这里是函数的例外。函数体是字符串,如果您按函数中的名称引用表,则不会更新。