MySQL RowCount всегда возвращает 1 на операторе INSERT INSERTMySql

Форум по Mysql
Anonymous
MySQL RowCount всегда возвращает 1 на операторе INSERT INSERT

Сообщение Anonymous »

Я использую соединитель pymysql для выполнения некоторых вставки в мою базу данных. Я пытаюсь вернуть, была ли запись, была добавлена ​​или обновлена.

Код: Выделить всё

import pymysql
db = pymysql.connect(host='127.0.0.1',user='USERNAME',password='PASSWORD',database='DATABASE')
cursor = db.cursor()

sql = "INSERT IGNORE INTO `Table` (key, via) SELECT temp.`id`, 'Via_Bot' FROM (SELECT %s AS id) temp LEFT JOIN `Other_Table` ON `Other_Table`.id = temp.id WHERE `Other_Table`.id IS NULL;"
key_id = 'ab12cd'
rows = cursor.execute(sql, (key_id,))

db.commit()
В этой ситуации строки и cursor.rowcount всегда возвращает 1, даже если запись не была вставлена/изменена. Как правильно увидеть, была ли запись обновлена/вставлена?

Подробнее здесь: https://stackoverflow.com/questions/794 ... -statement

Вернуться в «MySql»