Ваш код содержит 2 проблемы.
Во-первых, execute
ожидает последовательность в качестве второго параметра. Здесь вы передаете (var)
, который не является кортежем в соответствии с внутренним синтаксическим анализом Python, а просто заключает в скобки значение, поэтому вы выполняете c_rec.execute ("INSERT INTO first_table (column_five) VALUES (?)", var)
Вы должны изменить его, чтобы значение отображалось как кортеж с запятой:
c_rec.execute ("INSERT INTO first_table (column_five) VALUES (?)", (var,))
Далее вы обрабатываете только 15 строк (из-за all_rows = c.fetchmany(15)
). Вполне вероятно, что ни один из них не соответствует следующему if (row[0]) > 1819700 and row[0]< 1822799:
, и этот код просто ничего не делает. Немедленное исправление здесь:
all_rows = c.fetchall()
После этих 2 исправлений вторая база данных должна иметь некоторые значения ...
При этом, если все, что вы хотите сделать, это скопировать значение из одной базы данных в другую без какой-либо дополнительной обработки, решение от Шона, безусловно, будет проще поддерживать ...