Wstawianie 1000000 wierszy w bazie danych sqlite3

Chcę wstawić 10 000 000 wierszy do bazy danych, ale wstawianie zajmuje zbyt dużo czasu.

na przykład Teraz próbuję z 2055 wierszami, a załadowanie tych danych do bazy danych zajmuje 3 minuty .. i tym razem jest za dużo dla 2055 wpisów.

Oto moja metoda wstawiania danych do bazy danych:

      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();
    }

}

w innej klasie o nazwie: Parsing Data: tutaj parsuję plik csv i podczas analizowania:

próbować {

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
    }
 }

tak tutaj Parsowanie wiersza jeden po drugim i wywoływanie metody wstawiania w celu wstawienia wpisu do bazy danych.

Ale to za dużo czasu. Jak mogę poprawić wydajność tego?

questionAnswers(3)

yourAnswerToTheQuestion