Saya ingin memasukkan 10.00.000 baris ke dalam database, tetapi penyisipannya memakan waktu terlalu lama.
misalnya Sekarang saya mencobanya dengan 2055 baris dan butuh 3 menit untuk mengunggah data ini ke database.. dan kali ini terlalu banyak untuk 2055 entri.
Berikut cara saya memasukkan data ke dalam database:
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();
}
}
dan di kelas lain bernama: Parsing Data: di sini saya mengurai file csv dan saat mengurai:
mencoba {
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
}
}
jadi di sini Ini menguraikan baris satu per satu dan memanggil metode penyisipan untuk memasukkan entri ke dalam database..
Tapi ini memakan banyak waktu.. Bagaimana cara meningkatkan kinerja ini??