使用 Postgresql 外部数据包装器更新表

Zuo*_*ang 7 postgresql ddl foreign-data-wrapper

  1. t_user我创建了一个名为into的外部数据包装表mySchema

    IMPORT FOREIGN SCHEMA public LIMIT TO (t_user)
       FROM SERVER myServer INTO mySchema;
    
    Run Code Online (Sandbox Code Playgroud)
  2. 这边添加了一些列,myServer但是t_user外表没有相应更新。

  3. 我尝试删除外部表t_user,但它被我的视图和物化视图使用t_user,因此删除失败。

关于如何更新此表有什么想法吗?

Lau*_*lbe 7

正如您所看到的,当基础表更改时,外部表定义不会更改。

如果您所做的只是添加一列,则可以使用ALTER FOREIGN TABLE向外部表添加相应的列。即使视图依赖于外部表,这也应该有效。

例如,如果列的类型为text,您可以执行以下操作:

ALTER FOREIGN TABLE t_user ADD COLUMN my_column text;
Run Code Online (Sandbox Code Playgroud)