sql >> Databáze >  >> RDS >> Mysql

MySQLdb.cursor.execute nemůže spouštět více dotazů

Stejně jako všechny implementace Python DB-API 2.0 , cursor.execute() metoda je navržena tak, že stačí jedna prohlášení, protože poskytuje záruky o stavu kurzoru poté.

Použijte cursor.executemany() metoda namísto. Pamatujte, že podle specifikace DB-API 2.0 :

Použití pro více INSERT prohlášení by měla být v pořádku:

cursor.executemany('INSERT INTO table_name VALUES (%s)',
    [(1,), ("non-integer value",)]
)

Pokud potřebujete provést řadu nesourodých příkazů jako ze skriptu, pak ve většině případů stačí příkazy rozdělit na ; a vložit každý příkaz do cursor.execute() samostatně.



  1. zkopírování databázového souboru z /assets do složky /data/data v průzkumníku souborů - Android

  2. Příklad MICROSECOND() – MySQL

  3. Boolean vs tinyint(1) pro booleovské hodnoty v MySQL

  4. Vraťte hodnoty sloupců před aktualizací pouze pomocí SQL