sql >> Databasteknik >  >> RDS >> PostgreSQL

COPY-funktionen i PostgreSQL

Det ser ut som att du är förvirrad av Linux vs Windows-filsökvägsbeteckning. Det du har där är en Linux-sökväg förankrad till root. Windows använder enhetsbokstäver, som du kan ange lika bra när du kör Windows.

Om du använder Windows-notation, se till att du måste undgå bakåtstreck om du inte använder standard_conforming_strings = on - vilket är standard i Postgres 9.1 eller senare, men inte i äldre versioner. Gilla:

COPY data_table from E'C:\\tmp\\outputdata.csv' WITH ...

Med standard_conforming_strings = on du kan helt enkelt skriva:

COPY data_table from 'C:\tmp\outputdata.csv' WITH ...

Observera att en PostgreSQL Windows-server också förstår standardsökvägsbeteckningen med snedstreck istället för bakåtstreck.

För SQL COPY FROM / TO du kan använda vilken sökväg som helst som serverns ägare bearbetar (postgres som standard) har behörighet att läsa/skriva.

För \copy metakommandot för psql-klienten gäller behörigheter för nuvarande lokala användare.



  1. Jag får ett Ett försök gjordes att ladda ett program med ett felaktigt formatfel på ett SQL Server-replikeringsprojekt

  2. MIN() Funktion i PostgreSQL

  3. Springboot postgres Det gick inte att fastställa en lämplig förarklass

  4. MySQL:Åtkomst nekad för användaren 'test'@'localhost' (med lösenord:JA) förutom root-användare