Hallo,
Geht es um dynamisch zusammengestellte Queries, kann - wie Ilja ausgeführt hat - eine Vorkompilierung gar nicht stattfinden, da die Query sowieso erst zur Laufzeit bekannt ist.
Dynamische Queries sollten auch nicht verwendet werden, sondern Parameter.
z.B.:
INSERT INTO ARTIKEL(A_NR, A_NAME, A_PREIS)
VALUES(12, 'Oberhemd', 39.80)
wird zu:
INSERT INTO ARTIKEL(A_NR, A_NAME, A_PREIS)
VALUES(@anr, @aname, @apreis)
wobei die Werte für @anr, @aname und @apreis beim Aufruf der Prozedur übergeben werden.
Eine Prozedur zu verwenden um darin dynamische SQL-Statements, sprich Strings zusammen zu bauen ist Unfug (wenn das einziger Zweck ist) und erzeugt in der Tat Overhead. Ich ging davon aus, dass dies klar ist.
MfG