Мне интересно, могу ли я использовать триггер таблицы, чтобы «игнорировать» столбцы, которые содержатся в инструкции COPY от STDIN, но которые не находятся в целевой таблице. Извините, если формулировка/синтаксис вопроса выключена, но вот и объяснение того, что я пытаюсь сказать. Я новичок в триггерах, поэтому любой совет полезен.PostgreSQL Создание триггера вставки, который заменяет столбцы
Я использую импортер PostGIS Shapefile для копирования шейп-файлов в пространственные таблицы в моей базе данных PostgreSQL.
Это создает COPY заявление, в котором содержатся все поля в шейп-то вроде:
COPY "public"."stations" ("column1","column2","column3","column4", geom) FROM stdin;
column1 и column2 находятся в файле, но не в целевой таблице, поэтому COPY не удается.
Есть ли способ, чтобы создать триггер, чтобы создать что-то, что будет иметь тот же результат:
COPY "public"."stations" ("column3","column4", geom) FROM stdin;
Стадии я в конечном итоге было создание представления с загруженными колоннами и запустив inserst к представлению (есть возможность запустить загрузку как INSERT ON вместо COPY, который я пропустил). И установка триггера INSTEAD OF в представлении для вставки в целевую таблицу с нужными столбцами. - Если эта формулировка имеет смысл – avianattackarmada
@avianattackarmada: Да. И это, вероятно, самая быстрая реализация вышеуказанного маршрута. –