如何用SQLAlchemy更新表行?

时间:2012-03-10 08:58:26

标签: python sqlalchemy

我想更新一行表格。

添加我使用的,

session.add(unit) #here unit is unit object of class unit
session.commit()

要尝试更新,

session.merge(unit)
session.commit()

但是,在数据库中还有其他列,例如create_bycreated_onupdated_on,未在单位对象中设置,因此在合并时将其设置为NULL。

2 个答案:

答案 0 :(得分:4)

您只需修改用于表示行的类的属性,然后调用session.commit()。例如:

# Add a new user
user = User(name="John", age=20)
session.add(user)
session.commit()

# Modify the user we just added
user.age = 21
session.commit()

答案 1 :(得分:-1)

我使用merge(unit),通过修改模型结构。 从构造函数 init (...)中删除了create_by,created_on,updated_on等的初始化