Sql server 2005 我如何启用";“准备好的报表”;在NHibernate中使用SQL Server 2005以及如何验证它?
我的配置如下所示:Sql server 2005 我如何启用";“准备好的报表”;在NHibernate中使用SQL Server 2005以及如何验证它?,sql-server-2005,nhibernate,prepared-statement,Sql Server 2005,Nhibernate,Prepared Statement,我的配置如下所示: <hibernate-configuration xmlns="urn:nhibernate-configuration-2.2" > <session-factory name="kvws.kist.suche.dbadapter.nhentities"> <!-- Driver --> <property name="connection.driver_class">NHibernate.Driver.
<hibernate-configuration xmlns="urn:nhibernate-configuration-2.2" >
<session-factory name="kvws.kist.suche.dbadapter.nhentities">
<!-- Driver -->
<property name="connection.driver_class">NHibernate.Driver.SqlClientDriver</property>
<property name="dialect">NHibernate.Dialect.MsSql2005Dialect</property>
<!-- DB-Connection settings -->
<property name="connection.connection_string">
...
</property>
<property name="adonet.batch_size">10</property>
<property name="show_sql">true</property>
<property name="format_sql">true</property>
<property name="prepare_sql">true</property>
<property name="command_timeout">0</property>
<!-- other settings -->
<!-- using a proxy is mandantory, LinFu is easiest to setup (no setup...) -->
<property name="proxyfactory.factory_class">NHibernate.ByteCode.LinFu.ProxyFactoryFactory, NHibernate.ByteCode.LinFu</property>
</session-factory>
</hibernate-configuration>
NHibernate.Driver.SqlClientDriver
NHibernate.dialogue.mssql2005dialogue
...
10
真的
真的
真的
0
NHibernate.ByteCode.LinFu.ProxyFactoryFactory,NHibernate.ByteCode.LinFu
我的印象是prepare\u sql
的设置确保了在NHibernate中使用prepared语句。然而,它并没有这种“感觉”
如何测试/查看是否使用了“准备好的声明”
上述设置是否正确用于“准备好的声明”
其他设置会干扰执行吗?我认为您的配置文件正确。我知道没有其他设置会覆盖prepare_sql值。我所知道的证明它正常工作的唯一方法是使用Sql Profiler查看执行计划是否被缓存/重用
需要注意的一点是,您需要指定可变长度的参数(varchar等)的大小。有关这方面的更多信息,请参阅本文:感谢您提供了指向Sql Profiler的指针-我倾向于忘记这一点。