Does it send sqlstatements one by one, or at once?
I found that Firebird supports EXECUTE BLOCK, for example in the case of inserting multiple records.
It can be done with TSQLQuery with SQL statement like:
EXECUTE BLOCK AS BEGIN
INSERT INTO table1 (f1, f2) VALUES (1, 2);
INSERT INTO table1 (f1, f2) VALUES (11, 12);
INSERT INTO table1 (f1, f2) VALUES (21, 22);
....
END;
But with TSQLQuery I have to drop EXECUTE BLOCK statement itself. So, TSQLScript.Script would be
INSERT INTO table1 (f1, f2) VALUES (1, 2);
INSERT INTO table1 (f1, f2) VALUES (11, 12);
INSERT INTO table1 (f1, f2) VALUES (21, 22);
....
without EXECUTE BLOCK AS BEGIN and END.
If TSQLQuery sends each statement one by one, TSQLQuery using Execute Block would have merit in performance.