Moin,
ich habe Feldinhalte in einer Tabelle, bei denen das erste Zeichen ein Backslash ist. Die Felder haben den varchar-Datentyp. Wenn ich den Inhalt der Tabelle mit dem Befehl “\copy Tabelle TO ‘./Ausgabe.txt’;” in eine Textdatei entlade, wird vor jedes Feld, welches mit \ beginnt, ein weiterer Backslash ausgegeben.
z.B. wird der Feldinhalt “\Pipapo” in der Ausgabedatei zu “\\Pipapo”. Kann man das unterbinden?
Als Lösung ist mir bisher eingefallen, mit einem powershell-Befehl die beiden Sonderzeichen in der Ausgabedatei jeweils durch eins zu ersetzen. Dies klappt auch, ich möchte diesen Befehl aber in meinem Skript direkt nach dem copy-Befehl absetzen. Ich habe jedoch keine Anweisung gefunden, in dem man in einem pgSQL-Skript einen Shell-Befehl aufrufen kann (Batch-Datei oder direkt powershell). In Oracle gibt es dazu den Befehl “host”.
Gibt es eine Entsprechung in pgSQL?