Antworten:
Über die Befehlszeile:
psql -f 1.sql
psql -f 2.sql
Von der psql
Eingabeaufforderung:
\i 1.sql
\i 2.sql
Beachten Sie, dass Sie die Dateien möglicherweise in einer bestimmten Reihenfolge importieren müssen (z. B. Datendefinition vor der Datenmanipulation). Wenn Sie eine bash
Shell (GNU / Linux, Mac OS X, Cygwin) haben und die Dateien möglicherweise in alphabetischer Reihenfolge importiert werden , können Sie diesen Befehl verwenden:
for f in *.sql ; do psql -f $f ; done
Hier ist die Dokumentation der psql
Anwendung (danke, Frank): http://www.postgresql.org/docs/current/static/app-psql.html
psql
. 2) sicherstellen , dass Ihre Benutzer über die notwendigen Schreibrechte, wie zum Beispiel: CREATE
, INSERT
, UPDATE
, etc. 3) importieren die SQL - Dateien. Soweit ich weiß, befinden Sie sich jetzt in Phase 1.
Erreichen Sie in der Befehlszeile zuerst das Verzeichnis, in dem psql vorhanden ist, und schreiben Sie dann folgende Befehle:
psql [database name] [username]
und drücken Sie die Eingabetaste. psql fragt nach dem Passwort. Geben Sie das Benutzerpasswort ein:
dann schreibe
> \i [full path and file name with extension]
Drücken Sie dann die Eingabetaste.
Der kürzeste Weg, den ich kenne, ist folgender:
psql -U {user_name} -d {database_name} -f {file_path} -h {host_name}
Datenbankname: In welche Datenbank sollten Sie Ihre Dateidaten einfügen?
Dateipfad: Absoluter Pfad zu der Datei, über die Sie den Import durchführen möchten.
Hostname: Der Name des Hosts. Für Entwicklungszwecke ist es meistens localhost
.
Wenn Sie diesen Befehl in die Konsole eingeben, werden Sie aufgefordert, Ihr Kennwort einzugeben.
Immer bevorzugt mit einer Verbindungsdienstdatei (Lookup / Google 'psql Verbindungsdienstdatei')
Dann einfach:
psql service={yourservicename} < {myfile.sql}
Wo yourservicename
ist ein Abschnittsname aus der Servicedatei?