Mysql
 sql >> база данни >  >> RDS >> Mysql

MySQLdb.cursor.execute не може да изпълнява множество заявки

Като всички реализации на Python DB-API 2.0 , cursor.execute() методът е предназначен да вземе самоедин изявление, защото дава гаранции за състоянието на курсора след това.

Използвайте курсора cursor.executemany() метод вместо. Имайте предвид, че съгласно спецификацията на DB-API 2.0 :

Използване на това за множество INSERT изявленията трябва да са добре:

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

Ако трябва да изпълните серия от различни оператори, като например от скрипт, тогава в повечето случаи можете просто да разделите изразите на ; и захранвайте всяко изявление към cursor.execute() отделно.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Достъп до данни от сървлет

  2. Вмъкване на множество реда от php формуляр в базата данни

  3. Модел за глобални настройки на Laravel

  4. MySQL INSERT SELECT - Дублиращи се редове

  5. Прехвърляне от VARCHAR към INT - MySQL