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:
Customer_table = Customer.metadata.tables["Customer"]
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(Customer_table.insert(), {"No": "Jon Doe", "Contact": "John"})
Update
The following example modifies an existing record in the table:
session.execute(Customer_table.update().where(Customer_table.c.Id == "http://myserver:7048/DynamicsNAV71/OData/Customer('01234567')").values(No="Jon Doe", Contact="John"))
Delete
The following example removes an existing record from the table:
session.execute(Customer_table.delete().where(Customer_table.c.Id == "http://myserver:7048/DynamicsNAV71/OData/Customer('01234567')"))