Ergebnis 1 bis 4 von 4

Thema: Import von CSV mit COPY in Datenbank

  1. #1
    majcho Gast

    Standard Import von CSV mit COPY in Datenbank

    Versuche schon seit Tagen einen CSV-Import mit dem COPY-Befehl.

    Code:
    copy land from E'c:\\users\\user\\documents\\land.csv'
    Es funktioniert mit psql und mit pgAdmin III nicht. Als Fehlermeldung erscheint

    bei psql:
    Code:
     "Konnte die Datei >>c:\users\user\documents\land.csv<< nicht zum lesen öffnen: Permission denied
    bei pgAdmin III:
    Code:
    FEHLER: konnte Datei »c:\users\user\documents\land.csv« nicht zum Lesen öffnen: Permission denied
    SQL Status:42501
    Dabei habe ich Dateipfad, Datei und auch die Datenbank zum lesen/schreiben freigegeben.

    Was könnte noch die Ursache sein?

    Nutze Windows7-64bit

  2. #2
    ads
    ads ist offline Super-Moderator
    Registriert seit
    08.02.2006
    Ort
    MD
    Beiträge
    4.056

    Standard

    Die Datei wird direkt von der Datenbank gelesen. Du musst also die Rechte nicht (nur) für dich freigeben sondern auch für den Benutzer, unter dem die Datenbank läuft.
    Unter Windows ist das wohl "postgres".


    Eine Alternative wäre der Befehl \copy in psql. Damit wird die Datei von psql gelesen und an die Datenbank übertragen. Das ist ein gutes Stück langsamer, tut aber auch.
    Xandrian: Kurz gesagt: Du hast ein falsches Konzept und willst nicht auf ads hören

    Jetzt NEU: PostgreSQL - Datenbankpraxis für Anwender, Administratoren und Entwickler

    PostgreSQL Service & Support

  3. #3
    majcho Gast

    Standard

    Zitat Zitat von ads Beitrag anzeigen
    Eine Alternative wäre der Befehl \copy in psql. Damit wird die Datei von psql gelesen und an die Datenbank übertragen. Das ist ein gutes Stück langsamer, tut aber auch.
    Habe ich in pgAdmin3 versucht, damit kommt dieser Fehlercode heraus "[ERROR ] 1.0: syntax error, unexpected character". In psql kommt der Hinweis:

    test=# copy land from E'c:\\users\\user\\documents\\land.csv';
    WARNUNG: nicht standardkonforme Verwendung von \\ in Zeichenkettenkonstante
    TIP: Verwenden Sie die Syntax für Escape-Zeichenketten für Backslashes, z.B. E'\\'
    FEHLER: Syntaxfehler bei 'c:\\users\\user\\documents\\land ....
    ZEILE 1: COPY land FROM STDIN 'c:\\users\\user\\documents\\land ....
    ___________________________^
    Ich habe das alles mit Backslash und Slash vorwärts und rückwärts probiert. Immer wieder der selbe Fehler.
    Geändert von majcho (07.12.2010 um 23:53 Uhr)

  4. #4
    ads
    ads ist offline Super-Moderator
    Registriert seit
    08.02.2006
    Ort
    MD
    Beiträge
    4.056

    Standard

    Ich habe nicht von pgAdminIII gesprochen!
    pgAdminIII kann mit dem psql-Befehl \copy nichts anfangen.

    Warum schreibst du da E davor und bekommst eine Warnung?
    Warum schreibst du zwei \ statt nur einem?

    Aber na ja, Windows ...
    Xandrian: Kurz gesagt: Du hast ein falsches Konzept und willst nicht auf ads hören

    Jetzt NEU: PostgreSQL - Datenbankpraxis für Anwender, Administratoren und Entwickler

    PostgreSQL Service & Support

Ähnliche Themen

  1. CSV Import via COPY FROM geht bei Nullvalue "\N" nicht
    Von Bionicman im Forum Allgemeines
    Antworten: 2
    Letzter Beitrag: 25.01.2011, 16:45
  2. Datenbank-Kopie - Fehler beim Import
    Von murphy im Forum SQL
    Antworten: 14
    Letzter Beitrag: 30.04.2010, 11:41
  3. Import einer csv Datei OHNE copy
    Von dakkar im Forum SQL
    Antworten: 10
    Letzter Beitrag: 07.04.2009, 12:51
  4. SQL Datenbank-Import
    Von SimplyFred im Forum SQL
    Antworten: 4
    Letzter Beitrag: 27.11.2007, 11:28
  5. Mit COPY gesamte Datenbank importieren.
    Von _bademeister im Forum Allgemeines
    Antworten: 5
    Letzter Beitrag: 14.03.2006, 13:31

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Links: Tobias Bauer - IT- und Funkdienstleistungen   -   Bilderrahmen-kaufen.de - Der Onlineshop für Bilderrahmen & Fotorahmen   -   Funkforum