#postgresql #csv
Вопрос:
У меня data.csv
большой объем, и в моей системе недостаточно места для этого. Из-за этого я хочу импортировать data.csv.gz
в таблицу базы данных в PostgreSQL.
Я попробовал следующий код для импорта этого файла.
copy origin (...) from program 'gzip D:Downloaddata.csv.gz' (format CSV);
Но у меня есть эта ошибка:
ERROR: program "gzip D:Downloadorigin_visit.csv.gz" failed
DETAIL: child process exited with exit code 1
Происхождение — это моя таблица в PostgreSQL.
Моя операционная система-Windows 10.
Я установил gzip в свою систему и добавил его путь в среду.
Как я могу запустить код в PostgreSQL? Есть ли какой-либо способ импорта data.csv.gz
в PostgreSQL?
Комментарии:
1. Не уверен, откуда вы
gzip
взялись, но я бы посмотрел на файл справки/человека для этого. По умолчанию Unixengzip some_file
попытается сжать файл до определеннойsome_file.gz
версии. Я полагаю , вы ищетеgzip -cd some_file
, для чего распаковать файл в stdout. Я бы проверил это на файле меньшего размера, чтобы проверить вашиgzip
работы таким образом.2. Текст сообщения об ошибке, как правило, записывается в файл журнала базы данных. Посмотри туда. В качестве альтернативы используйте копировать, а не КОПИРОВАТЬ. Таким образом, сообщение об ошибке будет отправлено непосредственно вам.
3. @jjanes почти уверен, что ошибка
gzip D:Downloaddata.csv.gz
вызвана сбоем, потому что файл уже разархивирован. С ошибкой что-то вроде:gzip: data.csv.gz already has .gz suffix -- unchanged