Einfügen von 1000000 Zeilen in die sqlite3-Datenbank

Ich möchte 10.00.000 Zeilen in die Datenbank einfügen, aber das dauert zu lange wie beim Einfügen.

z.B. Jetzt versuche ich es mit 2055 Zeilen und es dauert 3 Minuten, um diese Daten in die Datenbank hochzuladen. Und diese Zeit ist zu viel für 2055 Einträge.

Das Folgende ist meine Methode zum Einfügen der Daten in die Datenbank:

      public void insert_database(Context context,String field1,String field2,String field3,String field4,String field5,String field6 ,String field7,String field8,String field9,String field10)
{

    try
    {
        //RayAllen_Database.beginTransaction();
        RayAllen_Database.execSQL(" insert or replace into "+ TableName_csv+" values( '"+field1+"' ,'"+field2+"','"+field3+"','"+field4+"','"+field5+"','"+field6+"','"+field7+"','"+field8+"','"+field9+"','"+field10+"');");


    }
    catch(Exception e)
    {
        //Log.i("Database Exception", "Exception");
        e.printStackTrace();
    }

}

und in der anderen Klasse namens: Parsing Data: hier analysiere ich die CSV-Datei und beim Analysieren:

Versuchen {

CSVReader reader=new CSVReader(new FileReader(filename));
String [] nextLine;

//create database
obj.create_database(context);
obj.OpenDatabase(context);
//reader.readNext();

while ((nextLine=reader.readNext())!=null)
{
          //here I am calling the insert_database function
    }
 }

Es wird Zeile für Zeile analysiert und die insert-Methode aufgerufen, um den Eintrag in die Datenbank einzufügen.

Aber es dauert zu lange. Wie kann ich die Leistung verbessern?

Antworten auf die Frage(3)

Ihre Antwort auf die Frage