Обновление sqlite (android) крайне медленно - PullRequest
1 голос
/ 10 ноября 2011

У меня есть эта таблица в Android sqlite:

db.execSQL("CREATE TABLE " + IMAGE_TABLE_NAME + " (" + TABLE_IMAGE_COLUMN_ID + " INTEGER PRIMARY KEY," +
                                                       TABLE_IMAGE_COLUMN_FULL_PATH + " TEXT UNIQUE, " + 
                                                       TABLE_IMAGE_COLUMN_FOLDER + " TEXT, " +
                                                       TABLE_IMAGE_COLUMN_IMAGE_NAME + " TEXT, " +
                                                       TABLE_IMAGE_COLUMN_LAST_MODIFIED_DATE + " INTEGER, " +
                                                       TABLE_IMAGE_COLUMN_IS_PROCESSED + " INTEGER, " +
                                                       TABLE_IMAGE_COLUMN_PROCESS_ORDER + " INTEGER, " +
                                                       TABLE_IMAGE_COLUMN_DATE_PHOTO_TAKEN + " INTEGER, " + 
                                                       TABLE_IMAGE_COLUMN_ORIENTATION + " INTEGER, " + 
                                                       TABLE_IMAGE_COLUMN_WIDTH + " INTEGER, " + 
                                                       TABLE_IMAGE_COLUMN_HEIGHT + " INTEGER, " + 
                                                       TABLE_IMAGE_COLUMN_RATING + " INTEGER, " + 
                                                       TABLE_IMAGE_COLUMN_SIZE + " INTEGER, " + 
                                                       TABLE_IMAGE_COLUMN_CAMERA_MODEL + " TEXT, " + 
                                                       TABLE_IMAGE_COLUMN_CAMERA_MAKE + " TEXT, " + 
                                                       TABLE_IMAGE_COLUMN_MICRO_THUMBNAIL + " BLOB) ");

Когда я пытаюсь выполнить простую инструкцию обновления:

update Image set IsProcessed=1

Это займет около 20 секунд. Это выглядит как ваааааа, чтобы замедлить меня.

Вот пара замечаний, которые могут быть полезны:

  • база данных находится на SDCard
  • Поле BLOB заполнено элементами размером около 2-4 КБ
  • количество элементов в таблице около 450

Буду очень признателен за любую помощь, как ускорить процесс.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...