Mysql
 sql >> Baza danych >  >> RDS >> Mysql

MySQLdb.cursor.execute nie może uruchamiać wielu zapytań

Jak wszystkie implementacje Python DB-API 2.0 , cursor.execute() metoda jest zaprojektowana, bierze tylko jeden oświadczenie, ponieważ gwarantuje później stan kursora.

Użyj kursora cursor.executemany() metoda zamiast. Pamiętaj, że zgodnie ze specyfikacją DB-API 2.0 :

Używanie tego do wielu INSERT oświadczenia powinny być w porządku:

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

Jeśli potrzebujesz wykonać serię różnych instrukcji, takich jak ze skryptu, w większości przypadków możesz po prostu podzielić instrukcje na ; i przekaż każdą instrukcję do cursor.execute() osobno.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak usunąć wiersze z trzech tabel - błąd zapytania

  2. Jak stworzyć bloga w PHP i bazie danych MySQL - projektowanie DB

  3. MySQL aktualizuje pole za pomocą zmiennej inkrementacyjnej

  4. Konwertuj datę w formacie MM/DD/RRRR na datę MySQL

  5. Korzystanie z relacyjnych baz danych MySQL w Arch Linux