Три вещи для проверки:
На самом деле между столбцами есть ровно одна табуляция символов? Пробелы запрещены.
Есть ли еще сообщения об ошибках? Я скучаю по по крайней мере один. (См. Ниже)
Когда вы вводите имена таблиц и столбцов с учетом регистра, вы должны делать это последовательно. Поэтому вы должны написать это:
copy "Sample_Table" ("Col_ID", "Col_Message") from stdin;
В противном случае вы получите эти ошибки:
psql:x.sql:1: ERROR: relation "sample_table" does not exist
psql:x.sql:5: invalid command \.
psql:x.sql:5: ERROR: syntax error at or near "1"
LINE 1: 1 This is Spaaarta
^
С этими вещами я могу успешно использовать данные вашего примера.
РЕДАКТИРОВАТЬ Изменение ошибки: у спрашивающего теперь есть
ERROR: invalid input syntax for integer: "1 'This is Spaaarta'"
Так что с 1
что-то не так.
Я предполагаю, что это проблема кодирования. Windows с UTF-16 может быть виновником здесь.
Отладка такого рода проблем в других интернет-ресурсах не легка, потому что многие полу-интеллектуальные программы стоят в очереди, большинству из них нравится настраивать «несколько» вещей.
Но сначала проверьте несколько вещей в psql:
\encoding
show client_encoding;
show server_encoding;
Согласно данным пастбина они должны быть одинаковыми и иметь одно из следующих значений: «SQL_ASCII», «LATIN1» или «UTF-8».
Если они уже есть или их настройка не помогает: в Unix / Linux / cygwin есть программа hexdump -C x.sql
, отправьте ее вывод в pastebin. НЕ ИСПОЛЬЗУЙТЕ hexdump из любого редактора Windows, такого как ultraedit - меня несколько раз одурачили. При передаче файла в Linux обязательно используйте двоичную передачу.