Use declarative mapping for the embedded SQL expressions example

Change-Id: I1e778409f2d6e50dfba40bafc58e56f3625e7a27
(cherry picked from commit 7816476cdd0a6c83cdd0eeab8698c2469aa0197b)
This commit is contained in:
Mike Bayer
2019-02-07 10:19:08 -05:00
parent 3e88af6970
commit 1359bd74ff
+7 -4
View File
@@ -12,14 +12,17 @@ expression instead of a literal value. It's especially useful for atomic
updates, calling stored procedures, etc. All you do is assign an expression to
an attribute::
class SomeClass(object):
pass
mapper(SomeClass, some_table)
class SomeClass(Base):
__tablename__ = "some_table"
# ...
value = Column(Integer)
someobject = session.query(SomeClass).get(5)
# set 'value' attribute to a SQL expression adding one
someobject.value = some_table.c.value + 1
someobject.value = SomeClass.value + 1
# issues "UPDATE some_table SET value=value+1"
session.commit()