Mysql
 sql >> Database >  >> RDS >> Mysql

Python MySQLdb / MySQL INSERT IGNORA e verifica se ignorato

Naturalmente, un'ultima ricerca dopo aver pubblicato la domanda produce il risultato.

mysql - dopo l'inserimento ignore get primary key

Tuttavia, questo richiede ancora un secondo viaggio al database. Mi piacerebbe vedere se esiste un modo pythonic pulito per farlo con una singola query.

query = "INSERT IGNORE ..."
cursor.execute(query)

# Last row was ignored
if cursor.lastrowid == 0:

Questo esegue una query INSERT IGNORE e se l'inserimento viene ignorato (duplicato), il lastrowid sarà 0.