Importieren von XML-Dateien, die zu PostgreSQL

Ich habe eine Menge von XML-Dateien, die ich importieren möchten, die in der Tabelle xml_data:

create table xml_data(result xml);

Dazu habe ich ein einfaches bash-Skript mit Schleife:

#!/bin/sh
FILES=/folder/with/xml/files/*.xml
for f in $FILES
do
  psql psql -d mydb -h myhost -U usr -c \'\copy xml_data from $f \'
done

Allerdings wird dies versuchen zu importieren, die jede Zeile in jeder Datei als separate Zeile. Dies führt zu Fehler:

ERROR:  invalid XML content
CONTEXT:  COPY address_results, line 1, column result: "<?xml version="1.0" encoding="UTF-8"?>"

Verstehe ich, warum es ausfällt, aber kann nicht herausfinden, wie zu machen \copy zu importieren, ohne die ganze Datei auf einmal in eine einzige Zeile.

  • Nicht this thread auf der dba-Website SO helfen?
InformationsquelleAutor Tomas Greif | 2013-09-25
Schreibe einen Kommentar