У меня есть деятельность, которая работает с принтерами моего университета. Принтеры можно загрузить через Интернет, а затем сохранить в базе данных SQLite. Проблема в том, что для их хранения необходимо сделать около 500 записей в базе данных, что с моим кодом требует очень много времени (около 30 секунд на Google Nexus S). Мой код для этого следующий:
printerDB = new PrinterListOpenHelper(this);
SQLiteDatabase db = printerDB.getWritableDatabase();
db.execSQL("INSERT INTO destination (id, destination) VALUES(1,'BSAC240');");
db.execSQL("INSERT INTO destination (id, destination) VALUES(2,'BSAD152');");
...
Далее следует ок. 500 подобных рядов. Я также пытался сделать это с помощью одного
db.rawQuerry("INSERT INTO destination (id, destination) VALUES(1,'BSAC240');
INSERT INTO destination (id, destination) VALUES(2,'BSAD152');.......");
, но тогда фактически выполняется только первый оператор INSERT.
Кто-нибудь знает, как сделать это эффективным? Или базы данных Android на самом деле такие медленные?
Большое спасибо за вашу помощь! Я также пытался сделать это с помощью одного
db.rawQuerry("INSERT INTO destination (id, destination) VALUES(1,'BSAC240');
INSERT INTO destination (id, destination) VALUES(2,'BSAD152');.......");
, но тогда фактически выполняется только первый оператор INSERT.
Кто-нибудь знает, как сделать это эффективным? Или базы данных Android на самом деле такие медленные?
Большое спасибо за вашу помощь! Я также пытался сделать это с помощью одного
db.rawQuerry("INSERT INTO destination (id, destination) VALUES(1,'BSAC240');
INSERT INTO destination (id, destination) VALUES(2,'BSAD152');.......");
, но тогда фактически выполняется только первый оператор INSERT.
Кто-нибудь знает, как сделать это эффективным? Или базы данных Android на самом деле такие медленные?
Большое спасибо за вашу помощь! Саймон