LONGINT TO BLOB

4D - Documentation   Français   English   German   Español   English   4D v11 SQL, Comandos por temas   4D v11 SQL, Lista alfabética de comandos   4D v11 SQL, Constantes por temas   Regresar   Anterior   Siguiente

versión 6.0


LONGINT TO BLOB (enteroLargo; BLOB; byteOrden{; offset | *})

ParámetroTipoDescripción
enteroLargoNuméricoValor de tipo Entero largo a escribir en el BLOB
BLOBBLOBBLOB a recibir el valor Entero largo
byteOrdenNumérico0  Orden de bytes nativo
1  Orden de bytes Macintosh
2  Orden de bytes PC
offset | *Variable | *Offset en el BLOB (expresado en bytes)
o * para añadir el valor
Nuevo offset después de la escritura si se omite *

Descripción

El comando LONGINT TO BLOB escribe el valor de tipo Entero largo (4 bytes) enteroLargo en el BLOB blob.

El parámetro byteOrder fija el orden de los bytes ("byte ordering") del valor Entero largo (4 bytes) a escribir. Usted pasa una de las siguientes constantes predefinidas de 4D:

ConstanteTipoValor
Native byte orderingEntero largo0
Macintosh byte orderingEntero largo1
PC byte orderingEntero largo2

Nota sobre la independencia de plataforma: si intercambia BLOBs entre las plataformas Macintosh y PC, es su decisión administrar los temas de byte swapping cuando utilice este comando.

Si especifica el parámetro opcional *, el valor entero largo (4 bytes) se añade al BLOB y el tamaño del BLOB se extiende en consecuencia. Utilizando el parámetro opcional *, usted puede almacenar secuencialmente cualquier número de valores de tipo Entero, Entero largo, Real o Texto (ver otros comandos de BLOB) en un BLOB, siempre y cuando haya memoria disponible.

Si no especifica el parámetro opcional * ni la variable del parámetro offset, el valor entero largo (4 bytes) se almacena al inicio del BLOB, reemplazando su contenido anterior; el tamaño del BLOB se ajusta en consecuencia.

Si pasa una variable en el parámetro offset, el valor entero largo (4 byte) se escribe a partir del offset (comenzando desde cero) en el BLOB. Sin importar donde escriba el valor entero largo (4 bytes), el tamaño del BLOB se incrementa de acuerdo a la ubicación que pase (más hasta 4 bytes, si es necesario). Los bytes redefinidos, diferentes de los que está escribiendo, se inicializan en cero.

Después de llamar el comando, se devuelve la variable del parámetro offset , incrementada en el número de bytes que hayan sido escritos. Por lo tanto, puede reutilizar esa misma variable con otro comando de escritura de BLOB para escribir otro valor.

Ejemplos

1. Después de la ejecución de este código:

   LONGINT TO BLOB (0x01020304;vxBlob;Native byte ordering)

El tamaño de vxBlob es 4 bytes

En PowerPC vxBLOB{0}=$01, vxBLOB{1}=$02, vxBLOB{2}=$03, vxBLOB{3}=$04

En Intel:PC vxBLOB{0}=$04, vxBLOB{1}=$03, vxBLOB{2}=$02, vxBLOB{3}=$01

2. Después de la ejecución de este código:

   LONGINT TO BLOB (0x01020304;vxBlob;Macintosh byte ordering)

El tamaño de vxBlobes 4 bytes

En todas las plataformas vxBLOB{0}=$01, vxBLOB{1}=$02, vxBLOB{2}=$03, vxBLOB{3}=$04

3. Después de la ejecución de este código:

   LONGINT TO BLOB (0x01020304;vxBlob;PC byte ordering)

El tamaño de vxBlob es 4 bytes

En todas las plataformas vxBLOB{0}=$04, vxBLOB{1}=$03, vxBLOB{2}=$02, vxBLOB{3}=$01

4. Después de la ejecución de este código:

   SET BLOB SIZE (vxBlob;100)
   LONGINT TO BLOB (0x01020304;vxBlob;PC byte ordering;*)

El tamaño de vxBlob es 104 bytes

En todas las plataformas vxBLOB{100}=$04, vxBLOB{101}=$03, vxBLOB{102}=$02, vxBLOB{103}=$01

Los otros bytes del BLOB no cambian

5. Después de la ejecucióon de este código:

   SET BLOB SIZE (vxBlob;100)
   vlOffset:=50
   LONGINT TO BLOB (0x01020304;vxBlob;Macintosh byte ordering;vlOffset)

El tamaño de vxBlob es 100 bytes

En todas las plataformas vxBLOB{50}=$01, vxBLOB{51}=$02, vxBLOB{52}=$03, vxBLOB{53}=$04

Los otros bytes del BLOB no cambian

La variable vlOffset se ha incrementado en 4 (y ahora es igual a 54)

Ver también

BLOB to integer, BLOB to longint, BLOB to real, BLOB to text, INTEGER TO BLOB, REAL TO BLOB, TEXT TO BLOB.


4D - Documentation   Français   English   German   Español   English   4D v11 SQL, Comandos por temas   4D v11 SQL, Lista alfabética de comandos   4D v11 SQL, Constantes por temas   Regresar   Anterior   Siguiente