Pobierz dużą blobę z bazy danych SQL sqlite

Przechowywałem fragmenty danych binarnych (protobufów) w bazie danych sqlite aplikacji na Androida, nie zdając sobie sprawy, że AndroidCursor może pomieścić maksymalnie 1 MB danych. Teraz wiem, że powinienem był przechowywać te boble binarne w plikach i odwoływać się tylko do plików w pozycjach bazy danych sqlite.

Muszę zaktualizować bazę danych (aplikacja była używana przez pewien czas), aby przenieść te porcje binarne do plików. Problem polega na tym, że dane niektórych użytkowników mogły już przekroczyć limit 1 MB i nie jestem w stanie pobrać ich z bazy danych (uzyskując dostęp do wynikowegoCursor dla pojedynczego wiersza zawierającego dużą kroplę rzucaIllegalStateException: Couldn't read row 0, col 0 from CursorWindow. Make sure the Cursor is initialize before accessing data from it).

Jak odzyskać obiekty binarne, które są większe niż 1 MBCursor limit, który został zapisany w bazie danych sqlite?

questionAnswers(2)

yourAnswerToTheQuestion