REAL TO BLOB

4D - Documentation   Français   English   German   Español   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


REAL TO BLOB (real; BLOB; formatoReal{; offset | *})

ParámetroTipoDescripción
realNuméricoValor de tipo real a escribir en el BLOB
BLOBBLOBBLOB a recibir el valor Real
formatoRealNumérico0  Formato real nativo
1  Formato real extendido
2   Formato real doble Macintosh
3   Formato real doble Windows
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 REAL TO BLOB escribe el valor de tipo Real (o numérico) real en el BLOB blob.

El parámetro formatoReal fija el formato interno y el orden de los bytes ("byte ordering") del valor de tipo Real a escribir. Usted pasa uno de las siguientes constantes predefinidas por 4D:

ConstanteTipoValor
Native real formatEntero largo0
Extended real formatEntero largo1
Macintosh double real formatEntero largo2
PC double real formatEntero largo3

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

Si especifica el parámetro opcional *, el valor real se adjunta al BLOB; 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 BLOB) en un BLOB, siempre y cuando tenga memoria disponible.

Si no especifica el parámetro opcional * ni la variable en el parámetro offset, el valor Real se almacena al comienzo del BLOB, reemplazando su contenido anterior; el tamaño del BLOB se ajusta en consecuencia.

Si pasa la variable en el parámetro offset, el valor Real se escribe en el offset (comenzando desde cero) en el BLOB. Sin importar donde escribe el valor Real, el tamaño del BLOB aumenta de acuerdo a la ubicación pasada (más hasta 8 o 10 bytes, si es necesario). Los bytes redefinidos, diferentes a los que está escribiendo, se inicializan en cero.

Después de llamar el comando, la variable del parámetro es devuelta, incrementada en el número de bytes que hayan sido escritors. Por lo tanto, usted puede reutilizar la 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:

   C_REAL (vrValor)
   vrValor := ...
   REAL TO BLOB (vrValor;vxBlob;Native real format)

En todas las plataformas, el tamaño de vxBlob es 8 bytes

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

   C_REAL (vrValor)
   vrValor := ...
   REAL TO BLOB (vrValor;vxBlob;Extended real format)

En todas las plataformas, el tamaño de vxBlob is 10 bytes

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

   C_REAL (vrValor)
   vrValor := ...
   REAL TO BLOB (vrValor;vxBlob;Macintosh Double real format) ` o Formato real doble Windows 

En todas las plataformas, el tamaño de vxBlob es 8 bytes

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

   SET BLOB SIZE (vxBlob;100)
   C_REAL (vrValor)
   vrValor:= ...
   INTEGER TO BLOB (vrValor;vxBlob;Windows Double real format) ` o Formato real doble Macintosh 

En todas las plataformas, el tamaño de vxBlob es 8 bytes

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

   SET BLOB SIZE (vxBlob;100)
   REAL TO BLOB (vrValor;vxBlob;Extended real format;*)

En todas las plataformas, el tamaño de vxBlob es 110 bytes

En todas las plataformas, el valor real se almacena en los bytes #100 a #109

Los otros bytes del BLOB no son modificados

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

   SET BLOB SIZE (vxBlob;100)
   C_REAL (vrValor)
   vrValor:= ...
   vlOffset:=50
   REAL TO BLOB (vrValor;vxBlob;Windows Double real format;vlOffset) ` o Formato real doble Macintosh 

En todas las plataformas, el tamaño de vxBlob es 100 bytes

En todas las plataformas, el valor real se almacena en los bytes #50 a #57

Los otros bytes del BLOB se dejan sin cambiar

La variable vlOffset se ha incrementado en 8 (y ahora es igual a 58)

Ver también

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


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