Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server Sql Server是否跨事务缓存已编译查询和执行计划?_Sql Server_Sql Server 2005_Ado.net_Sqlclient - Fatal编程技术网

Sql server Sql Server是否跨事务缓存已编译查询和执行计划?

Sql server Sql Server是否跨事务缓存已编译查询和执行计划?,sql-server,sql-server-2005,ado.net,sqlclient,Sql Server,Sql Server 2005,Ado.net,Sqlclient,各位 我使用准备好的sql语句来执行许多因相同参数而变化的插入/更新。我的设计有两个选择:1。所有的工作都在一个事务中完成。2.将工作分解为多个事务(不是每个语句一个事务,而是适合我的环境并发性的事务)。如果选择#2,SQL是否会跨事务利用缓存的编译查询/执行计划?或者,由于查询是在事务中进行的,缓存的寿命将限于事务?查询缓存独立于事务,因此无论您选择哪个选项,您的查询都将被缓存。计划与事务无关。或者在这方面的联系 也就是说,一个计划可以由许多TXN和/或用户和/或连接共享。如果计划有效且仍在缓

各位


我使用准备好的sql语句来执行许多因相同参数而变化的插入/更新。我的设计有两个选择:1。所有的工作都在一个事务中完成。2.将工作分解为多个事务(不是每个语句一个事务,而是适合我的环境并发性的事务)。如果选择#2,SQL是否会跨事务利用缓存的编译查询/执行计划?或者,由于查询是在事务中进行的,缓存的寿命将限于事务?

查询缓存独立于事务,因此无论您选择哪个选项,您的查询都将被缓存。

计划与事务无关。或者在这方面的联系

也就是说,一个计划可以由许多TXN和/或用户和/或连接共享。如果计划有效且仍在缓存中,则在不同的时间执行