[英]Flask sqlalchemy update limit
我尝试使用Flask-SQLAlchemy(而非SQLAlchemy!)在Flask中执行具有限制的更新查询。
db.session.query(ItemObject).filter_by(owner_type=0,item_id=item_id.decode('hex')).update({'owner_type': '1'})
当我尝试“ .limit(1)”或“ update({'owner_type':'1'},mysql_limit = 1)“时,我得到了错误
AttributeError: 'long' object has no attribute 'limit'
要么
TypeError: update() got an unexpected keyword argument 'mysql_limit'
如何不使用execute()进行此查询?
对于您的第一个错误,听起来您正在尝试在调用update()之后再调用limit()。
db.session.query(ItemObject).filter_by(owner_type=0,item_id=item_id.decode('hex')).update({'owner_type': '1'})
这行返回很long
的行,因为update()
返回匹配的行数(未修改!)。 更新后无法链接限制。
您也无法对带有update
的查询调用limit
,因此无论如何都无法正常工作。 那只是MySQL的事情。
看一下先前的答案-https: //stackoverflow.com/a/25943713/175320-它向您展示了如何使用子查询以可移植的方式获得相同的最终结果。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.