Użyj psycopg2, aby nawiązać połączenie danych. W dokumentacji jest kilka przykładów:
Po skonfigurowaniu źródła danych wykonaj iterację wyników instrukcji „SELECT”, tworząc instrukcję „INSERT INTO” poprzez wydrukowanie zestawu wyników do pliku. W zasadzie trochę odwrotnej logiki.
W ten sposób, jeśli nadejdzie czas i będziesz musiał użyć pliku kopii zapasowej, po prostu uruchom plik SQL, który wstawi dane z powrotem do...
Przykład:
import psycopg2
import sys
con = None
try:
con = psycopg2.connect(database='local', user='local', password='local',port='1970')
cur = con.cursor()
cur.execute('SELECT x FROM t')
f = open('test.sql', 'w')
for row in cur:
f.write("insert into t values (" + str(row) + ");")
except psycopg2.DatabaseError, e:
print 'Error %s' % e
sys.exit(1)
finally:
if con:
con.close()
Następnie, aby przywrócić:
psql <dbname> <username> < test.sql
Pozdrawiam,