postgresql + python:如何适应co​​py_from?

时间:2011-11-03 22:12:16

标签: python sql database postgresql sqlbulkcopy

我可以使用什么函数来调整值以便在COPY FROM语句中使用?我尝试了这个adapt函数:

from psycopg2.extensions import adapt

然而,它给日期时间提供了错误的东西(将::timestsamp附加到字符串,postgres不喜欢它)和字符串(用单引号包装它们,例如空字符串是'',它似乎没有应该使用引号。

1 个答案:

答案 0 :(得分:1)

您不应只将adaptcopy_from一起使用。

copy_from期望格式与SQL引用不同。

对于字符串,我建议编写您自己的copy_adapt函数,该函数应该使用\t,使用\r的CR和使用\n的LF转义选项卡。

时间戳/日期列的值应格式化(使用strftime?),就像在Postgres中SELECT now()时看到的字符串一样。

元组元素应该由制表符进行分析,整个元组用换行符完成。