EN | DE | FR | RU
Импорт в PostgreSQL

Импорт данных из файлов различных типов в таблицы PostgreSQL

Каким образом можно осуществить импорт информации из файлов Excel/Access/CSV/… (список можно продолжить) в базу данных PostgreSQL? Этот вопрос с завидным постоянством появляется на форумах, конференциях и в списках рассылки, посвященных данной СУБД. Ответы на вопросы, касающиеся импорта данных в PostgreSQL, чаще всего содержат рекомендации по использованию различных (зачастую не опробованных на практике) SQL-скриптов, применению технологии ODBC совместно с приложением, в котором исходный файл был создан, или же советы воспользоваться разнообразными программными инструментами для преобразования данных с последующим вызовом утилиты pgsql. Эти рекомендации могут помочь решить задачу, связанную с импортом данных в БД PostgreSQL, но только в том случае, если исходный файл имеет простую структуру, объем импортируемой информации невелик, а пользователи могут подключаться к серверу напрямую.

Но что если исходный файл с информацией имеет формат Word 2007 или HTML? Или это TXT файл, содержащий Unicode данные? Или же CSV файл, размером несколько сотен мегабайт и имеющий достаточно большое число столбцов? В этой ситуации решения, приведенные выше, нередко не могут дать нужного результата – процесс импорта данных заканчивается ошибкой, исходные данные искажены и перенесены не в полном объеме, при этом сама процедура импорта занимает значительное время.

Простое и эффективное решение задачи импорта данных в PostgreSQL

В данной статье мы рассмотрим программный продукт, специально предназначенный для решения основных задач, связанных с импортом информации в PostgreSQL - EMS Data Import for PostgreSQL. Программа позволяет быстро импортировать данные в таблицы PostgreSQL из файлов MS Excel 97-2007, MS Access, DBF, XML, TXT, CSV, RTF, MS Word 2007, ODF и HTML. Пользователю предоставляется широкий набор возможностей, таких как определение разнообразных параметров импорта для каждого исходного файла в отдельности, осуществление импорта данных в одну или несколько таблиц либо представлений (views), расположенных в одной и той же или различных БД, выбор необходимого режима импортирования. Утилита позволяет использовать специальный режим пакетной вставки для максимально быстрого импорта данных, поддерживает Unicode и все последние версии СУБД PostgreSQL, имеет дружественный и гибкий пользовательский интерфейс, оформленный в виде мастера, который проведет Вас через все шаги импорта информации, а также обладает множеством других полезных возможностей.

При использовании EMS Data Import for PostgreSQL для импорта данных, у пользователя программы существует возможность указать логическое соответствие между столбцами исходного файла и столбцами целевой таблицы, расположенной в БД PostgreSQL, при этом учитывая формат исходного файла. Более того, для большинства форматов исходных файлов программа способна определить такое соответствие автоматически, в случае если исходный файл и целевая таблица имеют сходный порядок столбцов или строк. При настройке процесса импорта пользователь может указать, если это необходимо, индивидуальный формат для каждого импортируемого поля. Это очень полезная возможность программы, когда требуется, например, определить значения для одного или некоторых исходных столбцов в виде констант или же в процессе импорта следует произвести автоматическую замену фрагмента текста в исходных данных на заданное значение. К другой полезной особенности EMS Data Import for PostgreSQL следует отнести возможность определить набор SQL команд, выполняемых непосредственно до или после процесса импорта.

Data Import for PostgreSQL позволяет полностью настроить пользовательский интерфейс под Ваши потребности, а также обладает многоязыковой поддержкой. В случае если сервер PostgreSQL расположен за сетевым брандмауэром и к нему нет возможности подключиться напрямую, утилита способна использовать для подключения SSH или HTTP туннели, при этом для SSH соединений, если это требуется по соображениям безопасности, можно указать открытый и личный криптографический ключ.

Если требуется выполнять импорт данных из файлов в БД PostgreSQL на периодической основе, то Вам достаточно настроить необходимые параметры в программе всего один раз и сохранить конфигурацию в виде специального файла-шаблона. В дистрибутив Data Import for PostgreSQL, помимо программы с графическим интерфейсом, входит консольная утилита, которую можно вызывать по расписанию, и тем самым автоматизировать процесс импорта. Имя ранее сохраненного файла с конфигурацией передается данной консольной утилите в виде параметра командной строки.

Для решения задач, связанных с импортом информации из файлов различных форматов в таблицы БД PostgreSQL, существует большое количество разнообразных программных продуктов, разработанные как на основе open source, так и коммерческие проекты с закрытым исходным кодом. Однако лишь некоторые из этих программ способны предложить пользователю полный набор функций, необходимых для успешного выполнения процесса импорта. EMS Data Import for PostgreSQL – один из немногих программных инструментов, позволяющий решить все основные вопросы, возникающие при решении задачи по импорту данных в БД PostgreSQL.

Следует заметить, что импорт данных – это малая часть из повседневных задач, с которыми сталкиваются администраторы PostgreSQL в их повседневной работе. EMS SQL Management Studio for PostgreSQL поможет Вам значительно упростить задачи, связанные с разработкой баз данных PostgreSQL, администрированием серверов этой СУБД, созданием эффективных SQL запросов, разграничением доступа к данным, сравнением и синхронизацией данных и схем БД, и многие другие.


Экспорт из PostgreSQL Импорт в PostgreSQL Контроль за изменениями в БД PostgreSQL Миграция данных в PostgreSQL