COPY FROM file
muss von einem Superuser-Konto ausgeführt werden und ist aufgrund dieser Einschränkung im Allgemeinen nicht für die Verwendung im Internet geeignet
Auszug aus der Dokumentation :
Aber PHP bietet Unterstützung für COPY FROM stdin
die diese Einschränkung nicht hat. Dieses Beispiel aus der PHP-Dokumentation zeigt, wie es gemacht wird:
$conn = pg_pconnect("dbname=foo");
pg_query($conn, "create table bar (a int4, b char(16), d float8)");
pg_query($conn, "copy bar from stdin");
pg_put_line($conn, "3\thello world\t4.5\n");
pg_put_line($conn, "4\tgoodbye world\t7.11\n");
pg_put_line($conn, "\\.\n");
pg_end_copy($conn);
Im Fall einer Datei müssen Sie die Datei mit PHP-Funktionen öffnen und sie Zeile für Zeile mit pg_put_line()
an die Postgres-Verbindung übergeben