“当前”上的 psycopg2 NotSupportedError当我使用 current_date 时
我正在使用 psycopg2 访问 postgresql 8.4 数据库,在更新查询时出现以下异常:
File "/home/alf/cubicweb/cubicweb/server/sources/native.py", line 744, in doexec
cursor.execute(str(query), args)
NotSupportedError: ERREUR: la valeur « current » pour la date et heure n'est plus supportée
LINE 1: UPDATE cw_ImportLog SET cw_import_date=E'CURRENT_DATE'
错误消息已本地化,但转换为“不再支持日期和时间的‘当前’值”。
令我困扰的是,错误消息的其余部分明确提到正在使用 CURRENT_DATE
,而不是 CURRENT
。我可以通过在查询中使用 today
而不是 CURRENT_DATE
来“修复”异常,但我想了解其中发生的情况。这是 psycopg2 的错误吗?
I'm using psycopg2 to access a postgresql 8.4 database, and on an update query I get the following exception:
File "/home/alf/cubicweb/cubicweb/server/sources/native.py", line 744, in doexec
cursor.execute(str(query), args)
NotSupportedError: ERREUR: la valeur « current » pour la date et heure n'est plus supportée
LINE 1: UPDATE cw_ImportLog SET cw_import_date=E'CURRENT_DATE'
the error message is localized but translates to "the value 'current' for date and time is no longer supported".
What bothers me is that the rest of the error message cleary mentions CURRENT_DATE
is being used, and not CURRENT
. I can "fix" the exception by using today
instead of CURRENT_DATE
in my query but I'd like to understand what's going on in there. Is this a psycopg2 bug?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您将字符串“CURRENT_DATE”赋予日期列。在将字符串解析为日期时,它很可能使用 _ 作为可接受的分隔符。
您想要的是
CURRENT_DATE
而不是'CURRENT_DATE'
。因此,请尝试以下操作:
编辑:如果您必须向其提供字符串,请改用
now
,这是有效的。请参阅第 9.9.4 节的末尾在有关它的文档中。You are giving the string 'CURRENT_DATE' to a date-column. Most likely it uses _ as an accepted separator when parsing the string as a date.
What you want is
CURRENT_DATE
not'CURRENT_DATE'
.So try this:
Edit: If you have to feed it a string, use
now
instead, which is valid. See end of section 9.9.4 in the docs about it.