Does Sql Server caches parameterized anonymous blocks? &quot;Anonymous block&quot; is a term from Oracle. But speaking of the thing for sql server
Declare
   ....
Begin
    begin trans
 . . . 
    commit
End

If I send this SQL in parameterized form to the server via ADO.NET, will it be cached and reused or it will be recompiled every time?
From my brief reading on Anonymous Blocks in Oracle, this is essentially just an ad-hoc query in SQL Server. Yes, ad-hoc queries are cached in the query plan cache of SQL Server, and therefore on subsequent runs won't be recompiled, for as long as they stay in the cache. (The query plan cache has mechanisms to remove old and/or rarely used plans from the cache based on the busyness of the server.)