2011-08-04 17 views
8

exactamente estoy tratando de cargar más de 1MB de datos de la base de datos sqlite al cursor android. En el momento de la carga que da siguiente error comocómo cargar más de 1 MB de datos desde sqlite db al cursor android?

08-04 11:10:15.813: ERROR/CursorWindow(4465): need to grow: mSize = 2097152, size = 403719, freeSpace() = 209669, numRows = 1 
08-04 11:10:15.813: ERROR/CursorWindow(4465): Attempting to grow window beyond max size (2097152) 
08-04 11:10:15.813: ERROR/Cursor(4465): Failed allocating 403719 bytes for blob at 0,13 
08-04 11:10:15.813: DEBUG/Cursor(4465): finish_program_and_get_row_count row 0 
08-04 11:10:15.899: ERROR/CursorWindow(4465): need to grow: mSize = 2097152, size = 403719, freeSpace() = 209669, numRows = 1 
08-04 11:10:15.899: ERROR/CursorWindow(4465): Attempting to grow window beyond max size (2097152) 
08-04 11:10:15.899: ERROR/Cursor(4465): Failed allocating 403719 bytes for blob at 0,13 
08-04 11:10:15.899: DEBUG/Cursor(4465): finish_program_and_get_row_count row 0 
08-04 11:10:15.899: ERROR/CursorWindow(4465): Bad request for field slot 0,0. numRows = 0, numColumns = 14 
08-04 11:10:15.899: DEBUG/AndroidRuntime(4465): Shutting down VM. 

si alguien sabe cómo cargar datos de gran tamaño (más de 1 MB) hasta el cursor androide? gracias,

+0

¿Por qué tiene 1MB de datos en un cursor? Toneladas de filas? ¿Estás usando una proyección para usar solo las columnas que necesitas? ¿Usas blobs? ¿Puedes limitar los resultados? – EboMike

+0

Tengo dos objetos blob en una tabla, uno para imagen y otro para audio. El tamaño de dos blobs es más de 1MB. Un solo tamaño de fila es más de 1mb. entonces, ¿cómo puedo hacer? –

Respuesta

6

No almacene blobs de 500KB en su base de datos. Almacene los identificadores en su base de datos y coloque los blobs como archivos en el almacenamiento. Si usa MODE_PRIVATE, otros procesos no podrán acceder a ellos.

+1

ok gracias por su sugerencia. pero quiero usar la base de datos por alguna razón. –

+2

... ¿cuáles son? Está utilizando una plataforma móvil, por lo que necesita una buena razón para preferir un método de almacenamiento ineficiente. – EboMike

+0

cómo crear un modo carpetas privadas en el directorio de la aplicación? –

Cuestiones relacionadas