Wie zum ausführen von in-line-SQL-Skript in der Kommandozeile?
Ich habe Probleme beim ausführen eines SQL-Skripts über die Kommandozeile, das ist, was ich
"C:\..\psql.exe" -h my_server_host -U username -c 'CREATE DATABASE test;'
Bekam ich diese Fehlermeldung:
psql: warning: extra command-line argument "test;'" ignored
psql: FATAL: database "DATABASE" does not exist
Bin ich auf Windows 7 mit Postgresql 9.3.
Irgendeine Idee, wie das zu tun?
- Erwähnen Sie Ihr Betriebssystem und Ihre version von Postgres hier.
- Aktualisiert. Thx.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Müssen Sie eine Verbindung zu einem Datenbank, um einen Befehl auszuführen, auch wenn Sie ausführen möchten
CREATE DATABASE
so:(Wie @Craig geklärt werden, muss es von doppelten Anführungszeichen für Windows.)
Mit der Standard-Wartung db
postgres
hier.Es ist eine bessere option für den Zweck zur hand, aber: createdb von der Kommandozeile direkt.
Windows ist
cmd.exe
erwartet, dass doppelte Anführungszeichen auf Argumente, nicht einzelne Zitate.http://blogs.msdn.com/b/oldnewthing/archive/2010/09/17/10063629.aspx
-d
Flagge. Siehe das Handbuch für diepsql
Befehl.