U moet de verbinding na elke query vastleggen. Hiermee wordt de huidige transactie vastgelegd en wordt ervoor gezorgd dat de volgende (impliciete) transactie wijzigingen oppikt die zijn gemaakt terwijl de vorige transactie actief was.
# Main loop
while True:
# SQL query
sql = "SELECT * FROM table"
# Read the database, store as a dictionary
mycursor = mydb.cursor(dictionary=True)
mycursor.execute(sql)
# Store data in rows
myresult = mycursor.fetchall()
# Transfer data into list
for row in myresult:
myList[int(row["rowID"])] = (row["a"], row["b"], row["c"])
print(myList[int(row["rowID"])])
# Commit !
mydb.commit()
print("---")
sleep (0.1)
Het concept hier is isolatieniveaus. Van de docs (nadruk van mij):