обновление таблицы с помощью оболочки внешних данных Postgresql

  1. Я создал таблицу оболочки внешних данных с именем t_user в mySchema.

    IMPORT FOREIGN SCHEMA public LIMIT TO (t_user)
       FROM SERVER myServer INTO mySchema;
    
  2. Сторона myServer t_user добавила несколько столбцов, но внешняя таблица не обновилась соответствующим образом.

  3. Я попытался удалить внешнюю таблицу t_user, но она использовалась моим представлением и материализованным представлением t_user, поэтому удаление не удалось.

Любые идеи о том, как обновить эту таблицу?


person Zuojia Jiang    schedule 12.12.2018    source источник


Ответы (1)


Как вы видели, определение внешней таблицы не меняется при изменении базовой таблицы.

Если все, что вы сделали, это добавили столбец, вы можете использовать ALTER FOREIGN TABLE для добавить соответствующий столбец во внешнюю таблицу. Это должно работать, даже если представления зависят от внешней таблицы.

Например, если столбец имеет тип text, вы можете сделать:

ALTER FOREIGN TABLE t_user ADD COLUMN my_column text;
person Laurenz Albe    schedule 12.12.2018