Große Blobfelder werden in Firebird nicht in der DataPage des Datensatzes gespeichert, sondern in eigenen Blob Pages irgendwo anders in der Datenbank. Somit muss der Server diese Daten von ganz anderen Stellen abrufen, als den Rest der Daten. In der Row steht praktisch nur ein Verweis auf das Blob. Wenn die Zeile in der Datenbank klein ist, kann der Server sogar mehrere Datensätze in einer Page speichern und so auch schneller abrufen.
Dazu kommt, dass immer komplette Blob-Pages gespeichert werden. Wenn Deine Pagesize z.B. 4K ist, und Du ein 5K-Blob speicherst, werden dafür 2 komplette Blob-Pages verwendet, die der Server beim Abrufen auch wieder lesen muss.
Daher, ruf die Daten aus dem Blobfeld erst dann ab, wenn Du es wirklich brauchst (also zur Anzeige). Kannst Dir ja eine Query machen, die Du schon vorbereitest (prepared Query). Das wird die Last auf dem Server stark reduzieren. Und auch der Netzwerkverkehr ist natürlich deutlich geringer.
_________________
Gruß, Jens
Zuerst ignorieren sie dich, dann lachen sie über dich, dann bekämpfen sie dich und dann gewinnst du. (Mahatma Gandhi)