w3resource

Python: Update all the values of a specific column of a given SQLite table

Python SQLite Database: Exercise-10 with Solution

Write a Python program to update all the values of a specific column of a given SQLite table.

Sample Solution:

Python Code :

import sqlite3 
from sqlite3 import Error 
def sql_connection():
    try:
      conn = sqlite3.connect('mydatabase.db')
      return conn
    except Error:
      print(Error) 
def sql_table(conn):
    cursorObj = conn.cursor()
# Create the table
    cursorObj.execute("CREATE TABLE salesman(salesman_id n(5), name char(30), city char(35), commission decimal(7,2));")
# Insert records
    cursorObj.executescript("""
    INSERT INTO salesman VALUES(5001,'James Hoog', 'New York', 0.15);
    INSERT INTO salesman VALUES(5002,'Nail Knite', 'Paris', 0.25);
    INSERT INTO salesman VALUES(5003,'Pit Alex', 'London', 0.15);
    INSERT INTO salesman VALUES(5004,'Mc Lyon', 'Paris', 0.35);
    INSERT INTO salesman VALUES(5005,'Paul Adam', 'Rome', 0.45);
    """)    
    cursorObj.execute("SELECT * FROM salesman")
    rows = cursorObj.fetchall()
    print("Agent details:")
    for row in rows:
        print(row)
    print("\nUpdate all commision to .55:")
    sql_update_query = """Update salesman set commission = .55"""
    cursorObj.execute(sql_update_query)
    conn.commit()
    print("Record Updated successfully ")    
    cursorObj.execute("SELECT * FROM salesman")
    rows = cursorObj.fetchall()
    print("\nAfter updating Agent details:")
    for row in rows:
        print(row)
sqllite_conn = sql_connection()
sql_table(sqllite_conn)
if (sqllite_conn):
  sqllite_conn.close()
  print("\nThe SQLite connection is closed.")

Sample Output:

Agent details:
(5001, 'James Hoog', 'New York', 0.15)
(5002, 'Nail Knite', 'Paris', 0.25)
(5003, 'Pit Alex', 'London', 0.15)
(5004, 'Mc Lyon', 'Paris', 0.35)
(5005, 'Paul Adam', 'Rome', 0.45)

Update all commision to .55:
Record Updated successfully 

After updating Agent details:
(5001, 'James Hoog', 'New York', 0.55)
(5002, 'Nail Knite', 'Paris', 0.55)
(5003, 'Pit Alex', 'London', 0.55)
(5004, 'Mc Lyon', 'Paris', 0.55)
(5005, 'Paul Adam', 'Rome', 0.55)

The SQLite connection is closed.

Python Code Editor:

Have another way to solve this solution? Contribute your code (and comments) through Disqus.

Previous: Write a Python program to update a specific column value of a given table and select all rows before and after updating the said table.
Next: Write a Python program to delete a specific row from a given SQLite table.

What is the difficulty level of this exercise?

Test your Python skills with w3resource's quiz


Python: Tips of the Day

Creates a dictionary with the same keys as the provided dictionary and values generated by running the provided function for each value:

Example:

def tips_map_values(obj, fn):
  ret = {}
  for key in obj.keys():
    ret[key] = fn(obj[key])
  return ret
users = {
  'Owen': { 'user': 'Owen', 'age': 29 },
  'Eddie': { 'user': 'Eddie', 'age': 15 }
}

print(tips_map_values(users, lambda u : u['age'])) # {'Owen': 29, 'Eddie': 15}

Output:

{'Owen': 29, 'Eddie': 15}