レコードが既に存在する場合は行を更新するか、存在しない場合は新しい行を作成する必要があります。ON DUPLICATE KEY が MYSQLdb を使用してこれを達成できるかどうかはわかりませんが、機能させるのに問題があります。私のコードは以下です
cursor = database.cursor()
cursor.execute("INSERT INTO userfan (user_id, number, round VALUES (%s, %s, %s) ON DUPLICATE KEY UPDATE user_id =%s, number=%s, round=%s", (user_id, number, round))
database.commit()
主キーは user_id