Может ли PostgreSQL COPY читать CSV из удаленного места?

Я использовал JDBC с локальной базой данных Postgres для копирования данных из CSV-файлов в базу данных с помощью команды Postgres COPY. Я использую Java для анализа существующего файла CSV в формате CSV, соответствующем таблицам в БД. Затем я сохраняю этот проанализированный CSV-файл на свой локальный диск. Затем я заставляю JDBC выполнить команду COPY, используя проанализированный CSV-файл, в мою локальную БД. Все работает так, как ожидалось. Теперь я пытаюсь выполнить тот же процесс в базе данных Postgres на удаленном сервере с использованием JDBC. Однако, когда JDBC пытается выполнить COPY, я получаю

org.postgresql.util.PSQLException: ERROR: could not open file "C:\data\datafile.csv" for reading: No such file or directory

Правильно ли я понимаю, что команда COPY указывает БД искать этот файл локально? т.е. удаленный сервер ищет на своем диске C: (не существует).

В таком случае можно ли как-то указать команде копирования, что нужно искать на моем компьютере, а не «локально» на удаленной машине? Прочитав документацию по копии, я не нашел ничего, что указывало бы на эту функциональность.

Если функциональность не существует, я думаю просто заполнить всю базу данных локально, а затем скопировать в базу данных на удаленный сервер, но просто хотел проверить, ничего ли я не упустил.

Спасибо за помощь.

5
задан babcoccl 4 May 2012 в 18:12
поделиться