为什么带有参数的ISqlQuery比没有参数的ISqlQuery慢?

时间:2019-07-01 19:29:48

标签: c# sql-server nhibernate

我有获取30个参数并返回一些数字的数据库函数。我有ISqlQuery,其参数如下:

Select * from MyFunction(:p1, :p2, ..., :p30)

当我打电话时:

var result = mySqlQuery.UniqueResult();

需要30秒钟以上,并且出现超时异常。当我使用不带任何参数的ISqlQuery时:

Select * from MyFunction('value1', 'value2', ... 'value30')

我不到3秒。但是在第二种情况下,我认为必须在代码中构建查询,并以其不太优雅的方式构建查询。为什么性能会有如此大的差异?

我使用c#和nhibernate。

0 个答案:

没有答案