gpt4 book ai didi

c# - 内联参数化查询超时

转载 作者:太空宇宙 更新时间:2023-11-03 13:14:18 25 4
gpt4 key购买 nike

我有一个最近开始超时的内联参数化查询。

Dim dal As New DalMain()

Dim sbSql As New StringBuilder()
sbSql.Append(" select column1, column2 ")
sbSql.Append(" from table ")
sbSql.Append(" where column3 = @Value ")

dal.AddSqlParms("@Value", DalMain.SqlParmType.STR, "100")

其中 DalMain 是数据访问类,DalMain.SqlParmType.STR 是 DbType.String 类型。该查询在过去 5 年内运行良好,现在我运行它时超时了。

相同的查询在 sql management studio 中运行良好。如果我硬编码如下所示的值,那么它可以正常运行而不会超时。

sbSql.Append(" select column1, column2 ")
sbSql.Append(" from table ")
sbSql.Append(" where column3 = '100' ")

问题只发生在那个特定的表上,其余的参数化查询工作正常。非常感谢任何帮助。

最佳答案

数据库上的数据类型是nc​​har/nvarchar吗?如果 db 上的数据类型是 varchar 并且提供的参数声明为 nvarchar(反之亦然),则 SQL Server 通常不使用索引。检查 sql profiler 中生成的内容以确保。

关于c# - 内联参数化查询超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27137606/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com