PostgreSQL Python: Update Data in a Table
Summary: in this tutorial, you will learn how to update data in a PostgreSQL table from a Python program.
This tutorial picks up from where the Inserting Data Into Table Tutorial left off.
Steps for updating data in a PostgreSQL table from Python
To update data from a table in Python, you follow these steps:
- First, connect to the PostgreSQL server.
- Next, create a
cursor
object from theconnection
object. - Then, execute an UPDATE statement by calling the
execute()
method of thecursor
object. - After that, commit the changes by calling the
commit()
method of theconnection
object. - Finally, optionally obtain the number of updated rows from the
rowcount
property of thecursor
object.
Updating data in a table example
We will use the vendors
table in the suppliers
database for the demonstration:
1) Creating update.py module
Suppose a vendor changed its name, you need to reflect these changes in the vendors
table.
To achieve this, you can define a function update_vendor()
, which updates the vendor name based on the vendor id.
First, create a new module called update.py
in the project directory.
Second, define update_vendor()
function in the update.py
module:
2) Execute the update.py module
First, open the Command Prompt on Windows or Terminal on Unix-like systems.
Second, execute the update.py
module:
3) Verify the update
First, connect to the PostgreSQL server using the psql
client tool:
Second, change the current database to suppliers
:
Third, retrieve data from the vendors
table with the vendor id 1:
Output:
The name of the vendor id 1 has been changed as expected.
Download the project source code
Summary
- Use the
execute()
method of acursor
object to execute anUPDATE
statement that updates data in a table