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

database postgresql python sql sqlbulkcopy

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

from psycopg2.extensions import adapt

但是,它为datetimes提供了错误的东西(将::timestsamp追加到字符串,postgres不喜欢它)和string(用单引号包装它们,例如空字符串是'',似乎没有引号应该使用) 。

一般承认的答案

你不应该只使用adaptcopy_from

copy_from需要一种不同于SQL引用的格式。

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

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

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




许可下: CC-BY-SA with attribution
不隶属于 Stack Overflow
这个KB合法吗? 是的,了解原因
许可下: CC-BY-SA with attribution
不隶属于 Stack Overflow
这个KB合法吗? 是的,了解原因