1
Забыть вызвать commit()
Без commit() изменения остаются во временном хранилище транзакции и пропадают после закрытия соединения.
Неправильно:
cursor.execute("INSERT INTO products (name, price) VALUES (%s, %s)", ("Pen", 1.00))
# нет commit() — данные не сохранятся
Правильно:
cursor.execute("INSERT INTO products (name, price) VALUES (%s, %s)", ("Pen", 1.00))
connection.commit()