I am migrating a long-lived web application (based on .net webforms, with some classic ASP) from SQL Server 2000 to SQL Server 2014.
Should I refactor my queries to use prepared statements? In most cases, the web application will prepare, then execute, each query. The next user of the same query will prepare, then execute it, again.
Is there any performance benefit, or scale-up benefit, of using prepared SQL queries in place of direct execution? Will it help the table server's query planner avoid repeating expensive operations?
Is there any secure way to store the prepared query objects in the web server (IIS) so the next client can reuse them?
I know there's a big advantage on Oracle of doing this; it can reuse execution plans for prepared statements, and the advantage of that far outweighs the cost of re-preparing identical statements. Is this also true on SQL Server 2014?
(I'm aware of the use of prepared statements to overcome sql injection vulnerabilities; I'm not asking about that.)
The question here is specifically about SQL Server, the Microsoft product.