In general, dynamic SQL should not be used in applications where the design does not require the specific advantages listed under “Benefits of dynamic SQL”. Dynamic SQL commands incur more overhead than language commands. Also, since they are implemented internally as temporary stored procedures, they can cause resource-contention issues in the Adaptive Server Enterprise tempdb database.
See “Limitations of dynamic SQL” and “Alternatives to dynamic SQL”.