Openerp 7-如何运行datetime更新查询

时间:2017-06-05 05:05:20

标签: python postgresql odoo openerp-7

我遇到此更新查询的问题,我不明白这里的错误。请帮我解决这个问题。

字段

'sign_in' : fields.datetime("Sign In"),

可变

sgn_in1 = datetime.datetime.strptime(sign_in, DATETIME_FORMAT1).time()

查询

cr.execute("""UPDATE allowance.attendances SET sign_in = %s WHERE id =%s"""%(sign_in1,colmn_id))

错误

  

ProgrammingError:语法错误在“:”处或附近:LINE 1:UPDATE   allowance.attendances SET sign_in = 08:15:00

1 个答案:

答案 0 :(得分:1)

查询应该是这样的,

cr.execute("UPDATE allowance_attendances SET sign_in = '%s' WHERE id =%s"%(sign_in1,colmn_id))

日期时间/时间/日期值必须以单引号传递。对于整数/长整数,它不是必需的。

在数据库中执行直接查询时,odoo模型不包含。 (点)名称,只有在您通过odoo ORM方法执行操作时才允许使用。

所以模特不应该 allowance.attendances ,它应该是 allowance_attendances