【发布时间】:2014-10-01 08:53:29
【问题描述】:
我在 Django 应用程序中运行此语句:
c = connections['default'].cursor()
query="copy (select * from analysis.\"{0}\") to STDOUT DELIMITER ',' CSV HEADER;".format(view_name)
with open(csvFile,'w') as f:
c.copy_expert(query,f)
f.close()
它不会创建正确的 csv 文件。某些值似乎在错误的列中。我正在尝试通过在 POSTGRESQL 中运行 SQL 语句来测试它:
copy (select * from analysis."S03_2005_activity_140807_153431_with_geom") to 'C:/djangoProjects/web_output/csvfiles/S03_2005_activity_140807_153431_with_geom.csv' DELIMITER ',' CSV HEADER;
它给了我:“错误:不允许复制到文件的相对路径”。我已经研究过这个问题,它似乎通常是两个问题之一:1.混淆'\'和'/'。我的斜线应该是正确的。 2. 服务器在不同的计算机上。我认为这可能是我的问题,因为数据库位于外部计算机上,但我的 Postgresql 中有连接。它也从 Django 运行,所以我不确定为什么它不能从 PG Admin 运行。
【问题讨论】:
标签: django postgresql psycopg2