Как вставить большое количество записей списка в операторы sqlite - PullRequest
0 голосов
/ 30 октября 2010

Хорошо, я использую apsw с sqlite, и у меня большой список записей. Каждая запись содержит новую строку для вставки.Число записей иногда составляет 20, иногда 21. Поскольку apsw поддерживает несколько операторов sql в curser.execute (), мне было интересно, не будет ли менее запутанного способа вставить все записи списка в базу данных, чем просто сделать что-то вроде

for entry in foo:
    cursor.execute(INSERT OR UPDATE INTO database.main ("{0}".format(entry))

Я хочу сделать это во всех одном потоке, потому что sqlite автоматически фиксирует базу данных каждый раз, когда завершается выполнение.Есть ли более простой, эффективный и менее запутанный способ?

1 Ответ

1 голос
/ 30 октября 2010

apsw курсоры имеют метод executemany :

cursor.executemany('INSERT OR UPDATE INTO database.main values (?)',foo)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...