Zbiorcze wstawianie ogromnych danych do SQLite za pomocą Pythona
Przeczytałem to:Importowanie pliku CSV do tabeli bazy danych sqlite3 przy użyciu Pythona
i wydaje się, że wszyscy sugerują używanie czytania po wierszu zamiast masowego importu z SQLite. Jednak to spowoduje, że wstawianie będzie naprawdę powolne, jeśli masz miliony wierszy danych. Czy jest jakiś inny sposób na obejście tego?
Aktualizacja: Próbowałem następującego kodu, aby wstawić wiersz po wierszu, ale prędkość nie jest tak dobra, jak się spodziewałem. Czy i tak ma to poprawić
for logFileName in allLogFilesName:
logFile = codecs.open(logFileName, 'rb', encoding='utf-8')
for logLine in logFile:
logLineAsList = logLine.split('\t')
output.execute('''INSERT INTO log VALUES(?, ?, ?, ?)''', logLineAsList)
logFile.close()
connection.commit()
connection.close()