UPDATE and DELETE

Print rowcount.

cursor.rowcount is how many rows changed. commit on a file DB.

Goal

Update Nairobi units, delete Kisumu, print rowcount.

import sqlite3
con = sqlite3.connect(":memory:")
con.execute("CREATE TABLE t (city TEXT, units INTEGER)")
con.executemany("INSERT INTO t VALUES (?, ?)", [("Nairobi", 12), ("Kisumu", 3)])
cur = con.execute("UPDATE t SET units = 15 WHERE city = 'Nairobi'")
print("updated", cur.rowcount)
print(con.execute("SELECT * FROM t").fetchall())
con.close()
import sqlite3
con = sqlite3.connect(":memory:")
con.execute("CREATE TABLE t (city TEXT)")
con.executemany("INSERT INTO t VALUES (?)", [("Nairobi",), ("Kisumu",)])
cur = con.execute("DELETE FROM t WHERE city = 'Kisumu'")
print("deleted", cur.rowcount)
print(con.execute("SELECT * FROM t").fetchall())
con.close()
import sqlite3
con = sqlite3.connect(":memory:")
con.execute("CREATE TABLE t (n INTEGER)")
con.executemany("INSERT INTO t VALUES (?)", [(1,), (2,), (3,)])
print(con.execute("DELETE FROM t WHERE n < 3").rowcount)
con.close()
import sqlite3
con = sqlite3.connect("kiosk.db")
con.execute("CREATE TABLE IF NOT EXISTS t (n INTEGER)")
con.execute("INSERT INTO t VALUES (1)")
con.commit()
print("committed")
con.close()