Я не знаю, почему вы не используете Python postgresql коннектор, такой как psycopg2 , но хорошо, если вы хотите делать то, что вы пытаетесь сделать, используя Перенаправление команд Unix youнужно будет сделать это следующим образом в вашем коде
...
print "SELECT COUNT(*) FROM important_table" # or use sys.stdout.write()
это запишет в ваш файл temp.sql
, если вы выполнили свою команду следующим образом:
python SQLgeneratingScript.py parameters > temp.sql
но хорошо, я будупредложите записать в ваш файл на python, например,
def generate_sql():
...
return "SELECT COUNT(*) FROM important_table"
with open('temp.sql', 'w') as f
sql = generate_sql()
f.write(sql)
или более, используйте psycopg2
для непосредственного выполнения вашего sql
import psycopg2
def generate_sql():
...
return "SELECT COUNT(*) FROM important_table"
conn = psycopg2.connect("dbname= ...")
cur = conn.cursor()
sql = generate_sql()
cur.execute(sql)
conn.close()