Modifying Data
Commands can be executed individually by the session with a call to "execute()".
Obtaining the Table Object
The query supplied to this method is constructed using the associated Table object of a mapped class. This Table object is obtained from the mapped class's metadata field, as below:
INVOICES_table = INVOICES.metadata.tables["INVOICES"]
Once the table object is obtained, the write operations are executed in the following ways. The queries are executed immediately without the need for a call to "commit()":
Insert
The following example adds a new record to the table:
session.execute(INVOICES_table.insert(), {"InvoiceId": "Jon Doe", "InvoiceNumber": "John"})
Update
The following example modifies an existing record in the table:
session.execute(INVOICES_table.update().where(INVOICES_table.c.Id == "1894553000000026007").values(InvoiceId="Jon Doe", InvoiceNumber="John"))
Delete
The following example removes an existing record from the table:
session.execute(INVOICES_table.delete().where(INVOICES_table.c.Id == "1894553000000026007"))