--- title: "system.db.commitTransaction" description: "Performs a commit for the given transaction." --- # system.db.commitTransaction > Performs a commit for the given transaction. This function is used in **Python Scripting**. ## Description Performs a commit for the given transaction. This will make all statements executed against the transaction since its beginning or since the last commit or rollback take effect in the database. Until you commit a transaction, any changes that the transaction makes will not be visible to other connections. :::note If you are done with the transaction, you must close it after you commit it. ::: ## Client Permission Restrictions This scripting function has [Client Permission](ignition-modules\vision\vision-project-properties\vision-project-properties.md#vision-permissions-properties) restrictions. ## Syntax `system.db.commitTransaction(tx)` ### Parameters Type | Parameter | Description ------- | ------- | ----- String | `tx` | The transaction ID. Returns Nothing ### Scope Gateway, Vision Client, Perspective Session ## Code Examples ```python title="Running a Query Using Query Transactions" # This example starts a transaction with a 5 second timeout against the project's default database, using the default isolation level. Then it executes a series of update calls, # and commits and closes the transaction. txId = system.db.beginTransaction(timeout=5000) status=2 for machineId in range(8): system.db.runPrepUpdate("UPDATE MachineStatus SET status=? WHERE ID=?", args=[status, machineId], tx=txId) system.db.commitTransaction(txId) system.db.closeTransaction(txId) ```