Einzelnen Beitrag anzeigen

hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.276 Beiträge
 
Delphi 10.4 Sydney
 
#4

AW: Firedac probleme mit Blob

  Alt 20. Jul 2016, 08:06
Hallo,
die Blob_Size hat noch historische Gründe.
siehe hier zu Blob_Size 80 = Terminalzeichen pro Zeile

https://www.ibphoenix.com/resources/...general/doc_54

Intern in FB wird ein Puffer mit genau dieser Größe angelegt und immer diese Größe in den Puffer geladen.
Bei Blob_Size 80 und einer Größe des Blobs von 90 Byte wird also hintereinander einmal die 80 Byte
in einen statischen Puffer (char[80]) geladen, und wenn es mehr als 80 Byte sind,
ein zweiter 2., dynamischen Puffer benutzt.
Der statische Puffer ist natürlich schneller.

Wenn der Blob i.d.R. nur 80 Byte hat, reicht Puffer 1,

Beim Client kommen aber die 90 Byte an.

(Ob das immer noch so ist, weiss ich nicht.)

Versuch doch mal hiermit die Größe direkt über FB zu ermitteln
http://stackoverflow.com/questions/4...ld-in-firebird
( OCTET_LENGTH() )

Heiko
Heiko

Geändert von hoika (20. Jul 2016 um 08:10 Uhr)
  Mit Zitat antworten Zitat