Description
Hi,
This is my select that works in Firebird 4.0.4 and Firebird 5:
select * from SP_COUNT(1, 18000) join SP_TEST on 1 = 1
If I use the ROWS-Clause rows 17500 to 18000 I got this error:
Unsuccessful execution caused by system error that does not preclude successful execution of subsequent statements.
Too many temporary blobs.
At procedure SP_TEST line: 6, col: 3.
Full Statement:
select * from SP_COUNT(1, 18000) join SP_TEST on 1 = 1 rows 17500 to 18000
This is the Source of the used stored procedures:
first, you need a possibility to generate records, i use this method:
create or alter procedure SP_COUNT (
ASTART bigint,
AEND bigint)
returns (
OVALUE bigint)
as
begin
:OValue = :AStart;
while (:OValue <= :AEND) do
begin
suspend;
:OValue = :OValue + 1;
end
end
than you need a stored procedure using Blob_append like this:
create or alter procedure SP_TEST
returns (
Memo BLOB SUB_TYPE 1 SEGMENT SIZE 80 CHARACTER SET UTF8 COLLATE UTF8)
as
begin
:Memo = blob_append(null, '');
:Memo = blob_append(:Memo, 'Hello');
:Memo = blob_append(:Memo, ' World');
suspend;
end
Regards, Jan