У меня в основном 3 таблицы. Один является основной таблицей, а два других зависят от первого. У меня есть требование добавить до 70000 записей во всех таблицах. У меня есть ограничения (первичные и внешние ключи, индекс, уникальные и т. Д.) Для таблиц. Я не могу перейти к массовому импорту (используя команду COPY), поскольку в требовании нет стандартного файла .csv, и отображение явно требуется, плюс несколько проверок внешне применяются в файле программирования на основе C. Детали каждой записи (до 70000) будут передаваться из .pgc (файл программирования C на основе ECPG) в файл postgresql. Это занимает меньше времени для первых нескольких записей, и производительность становится плохой для последних записей! Результат очень печальный, что для покрытия до 20000 дней нужны дни! Какие показатели производительности я мог бы сделать для этого? Пожалуйста, ведите меня.
Схема моей основной таблицы:
CREATE TABLE contacts
( contact_id SERIAL PRIMARY KEY
, contact_type INTEGER DEFAULT 0
, display_name TEXT NOT NULL DEFAULT ''
, first_name TEXT DEFAULT ''
, last_name TEXT DEFAULT ''
, company_name TEXT DEFAULT ''
, last_updated TIMESTAMP NOT NULL DEFAULT current_timestamp
, UNIQUE(display_name)
) WITHOUT OIDS;