Python 添加到插入中的sqlalchemy文本

Python 添加到插入中的sqlalchemy文本,python,sqlalchemy,on-duplicate-key,Python,Sqlalchemy,On Duplicate Key,我试图让sqlalchemy接受insert上的一些更复杂的行为,但无法找到实现它的惯用方法。为了简化,我只是尝试在查询的末尾添加一个文本字符串,但找不到有效的方法。我见过“text()”函数用于向查询添加字符串文本,但它的工作方式与我使用的方式不同。下面是我试图做的一个例子(这不会编译,但至少抓住了这个想法…) 如有任何建议,将不胜感激 事实上,这看起来很有用。。。 from sqlalchemy import * metadata = MetaData() user = Table('u

我试图让sqlalchemy接受insert上的一些更复杂的行为,但无法找到实现它的惯用方法。为了简化,我只是尝试在查询的末尾添加一个文本字符串,但找不到有效的方法。我见过“text()”函数用于向查询添加字符串文本,但它的工作方式与我使用的方式不同。下面是我试图做的一个例子(这不会编译,但至少抓住了这个想法…)


如有任何建议,将不胜感激

事实上,这看起来很有用。。。
from sqlalchemy import *

metadata = MetaData()

user = Table('user', metadata,
    Column('user_id', Integer, primary_key = True),
    Column('likes', Integer, nullable = False),
    Column('last_liked', TIMESTAMP, nullable = False),
)

userid = 1
newlikes = 5

user.insert().values(user_id=userid, likes=newlikes) + 
    text("ON DUPLICATE KEY UPDATE last_liked=NOW(), likes = likes + " + newlikes)