Vypadá to, že jste zmateni zápisem cesty k souboru Linux vs. Windows. To, co tam máte, je cesta pro Linux ukotvená v rootu. Windows používá písmena jednotek, která můžete určit stejně dobře, když používáte Windows.
Pokud používáte zápis ve Windows, dejte pozor, abyste unikli zpětným lomítkům pokud nepoužíváte standard_conforming_strings = on
- což je výchozí nastavení v Postgresu 9.1 nebo novějším, ale ne ve starších verzích. Jako:
COPY data_table from E'C:\\tmp\\outputdata.csv' WITH ...
S standard_conforming_strings = on
můžete jednoduše napsat:
COPY data_table from 'C:\tmp\outputdata.csv' WITH ...
Všimněte si, že PostgreSQL Windows server také rozumí výchozímu zápisu cesty s lomítky namísto zpětných lomítek.
Pro SQL COPY FROM / TO
můžete použít libovolnou cestu, kterou zpracuje vlastník serveru (postgres
ve výchozím nastavení) má oprávnění ke čtení/zápisu.
Pro \copy
meta příkazu psql klienta platí oprávnění aktuálního místního uživatele.