sql >> Database >  >> RDS >> Mysql

MySQL waarom cursor.execute(sql, multi=True) niet werkt, maar 2 cursor.execute(sql) wel?

Deze verklaring:

cursor.execute(sql, multi=True)

creëert een iterator over de resultaten. Het ziet eruit alsof het lui is (d.w.z. het voert SQL-instructies alleen uit als dat nodig is). Je vraagt ​​nooit om de resultaten voor de tweede instructie, dus het voert alleen de eerste uit. Probeer:

for _ in cursor.execute(sql, multi=True): pass

Over het algemeen is het beter om aparte execute() te gebruiken oproepen.




  1. MySQL sorteren op een lijst

  2. Selecteer de kleinste waarde uit meerdere kolommen met PHP/MySQL

  3. Trigger met dynamische veldnaam

  4. Hoe het ER-model van de database van de server te krijgen met Workbench