4D v14

BLOBs

Inicio

 
4D v14
BLOBs

BLOBs    


 

 

Además de las manipulaciones explicadas en el vídeo, también debe tener en cuenta lo siguiente:

Al comenzar, siempre hacemos las mismas preguntas:

  • ¿Cómo me puede servir y en qué circunstancias?
  • Poner la información es muy fácil, pero ¿Cómo y en qué orden saldrán?

Vamos a comenzar por abordar la segunda pregunta:

A pesar de que se puede acceder a cualquier byte del BLOB, en la mayoría de los casos vamos a utilizar lo que llamamos FIFO (First In First Out). Esto significa que usted recupera el contenido del BLOB en el orden en que lo puso en él.
Para hacer una analogía simple, vamos a tomar una estantería donde se guardan los libros de izquierda a derecha. Usted comienza por poner un libro pequeño a la izquierda y luego un gran libro al lado del primero y luego otro gran libro y luego una foto de su suegra y una chuchería de sus últimas vacaciones, etc. Cuando llegue el momento de desempolvar la estantería, usted no piensa en cuántas pulgadas del lado izquierdo se encuentra un libro. Los toma en el orden en que están y ajusta su mirada (y manos), dependiendo del tamaño del último objeto elegido.

Es lo mismo en un BLOB, sobre todo porque usted sabe lo que guardó en el BLOB.

Por ejemplo, cuando pone:

  • un entero, es de 2 bytes
  • un entero largo es de 4 bytes
  • mientras que una fecha es de 6 bytes
  • ...
  • Para el texto, se indica cómo quiere que se guarde y cómo se expresa la longitud del texto (cadena C, cadena Pascal, etc.).

Al volver a leer, usted tomará la información en el mismo orden nuevamente y la guardará en las variables que se adaptan al contenido esperado (digitado correctamente).

De esta forma el BLOB se lee de una manera consistente.
Aquí está la respuesta a la primera pregunta (¿Cuál es el propósito de un BLOB?) Puede utilizar un BLOB, por ejemplo, en los siguientes casos:

  • Para guardar variables, listas jerárquicas, arrays
  • Para el intercambio de documentos entre el cliente y el servidor
  • Para proteger datos confidenciales en un BLOB encriptado
  • Para guardar las variables que contienen plug-ins
  • Para enviar imágenes, textos o documentos en un navegador web
  • Para comunicarse con un servicio web.

El comando VARIABLE TO BLOB guarda los datos en un formato interno 4D. Es por eso que el espacio requerido es ligeramente mayor que el tamaño bruto de los datos.La ventaja de este comando es que evita tener que gestionar el Byte Swapping (posición del byte más significativo) cuando se trabaja en varias plataformas.

Cuando llena un BLOB, puede utilizar el carácter * en lugar de la variable $PositionInBlob variable que utilizamos.

Cuando se utiliza este parámetro, 4D entiende que debe almacenar la variable al final del BLOB y aumentar su tamaño como resultado.

Ahora imaginemos que usted tiene una serie de parámetros en su base de datos que deben tenerse en cuenta para cada usuario (o cada sitio donde está instalada la aplicación):

  • la pantalla de inicio
  • el color de fondo
  • la fuente y el tamaño de los caracteres
  • y así sucesivamente.
    Ellos son las preferencias del usuario.

Para conservalos, hay varias soluciones (crear una tabla, un archivo texto, un archivo XML, etc.).

En nuestro caso, vamos a conservar estas preferencias en un BLOB, que se guarda en un archivo en el disco.

Los comandos de escritura y de lectura de los BLOBs son BLOB TO DOCUMENT y DOCUMENT TO BLOB.

Para ahorrar  espacio y/o tiempo de transferencia, es posible que desee considerar la posibilidad de comprimir sus BLOBs.

Recuerde que 4D sólo comprime BLOBs si su tamaño es superior a 255 bytes.

Al descomprimir BLOBs, recuerde revisar para ver si el BLOB se comprime realidad. De lo contrario, tratar de descomprimirlo generará un error.

 
 

 
PROPIEDADES 

Producto: 4D
Tema: BLOBs

 
ARTICLE USAGE

Autoformación ( 4D v13)
Autoformación ( 4D v14)