4

Does anybody know, if there is a command string size limitation in Firebird?

When executing a small "insert" script it works perfectly, but when the script has a lot of lines it returns the following errer: "Unexpected end of command - line X, column Y".

Interessting, the line and column number varies dependanding on the actual script size.

I'm using Firebird 2.5

Here is the executing script:

set term ^ ;
EXECUTE BLOCK AS BEGIN
insert into TABLE (COLUMNA) values (13);
...
insert into TABLE (COLUMNA) values (14);
END^
set term ; ^
3
  • How are you sending this script to the database engine? Commented Jan 22, 2013 at 9:10
  • 2
    why embed them to the block, instead of passing each after another. Logical data granularity should be mantained by transactions and savepoints Commented Jan 22, 2013 at 9:19
  • Oh ... I think I had some errors in my thoughts. I just changed it. Commented Jan 22, 2013 at 10:00

1 Answer 1

8

Firebird 2.5 and earlier have a limitation of 64 kilobytes for the query text, for Firebird 3.0 this limit was increased to 10 MB when the new API is used. An EXECUTE BLOCK is one query, so it should not exceed 64 kilobyte.

Sign up to request clarification or add additional context in comments.

2 Comments

but he perhaps can overcome it by internal gbak-insert batch command
And the 64kB BLR and 48kB plan, which is mentioned in your link as well.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.