tipos nube microsoft guardar funciona como archivos almacenamiento ios core-data blob

ios - nube - guardar archivos en azure



Almacenamiento de blobs en una ubicación externa con la opción integrada CoreData (2)

He administrado objetos que tienen propiedades de imagen. Como almacenar blobs grandes en CoreData es una mala idea, estoy tratando de usar la opción incorporada de CoreData " Almacenar en archivo de registro externo " que puede ver en el Inspector de modelo de datos.

A pesar de habilitar esta opción, no veo ningún dato de imagen almacenado externamente. A juzgar por el tamaño, parece que todavía se guardan en el archivo sqlite. ¿Cual es el problema?


sqlite2 no permite que el tamaño de los datos BLOB sea superior a 1 MB, sin embargo, sqlite 3 permite BLOB más grande. Primero, compruebe qué versión de sqlite usa. Y si tu archivo está en MB, prefiero que se almacenen en una base de datos local.


Si su tipo de tienda es NSSQLiteStoreType , su atributo es NSBinaryDataAttributeType . Ha habilitado setAllowsExternalBinaryDataStorage y su tamaño de datos del objeto es mayor que aproximadamente 1MB.

  • Los objetos que son más pequeños que 1MB se almacenan en la base de datos sqlite.
  • Los objetos que son más grandes son solo una referencia a un archivo externo.

Encontrará los archivos (externos) en un subdirectorio oculto en la misma ubicación que el almacén persistente.

<path>/<database>.sqlite <path>/<your_database>_SUPPORT/_EXTERNAL_DATA/