数据库查询与orm查询效率不成正比 返回
SqlSugar
处理完成
16
462

悬赏:0 飞吻
数据库里里的查询都是毫秒级别的出来,但是ORM 响应 5分钟内都无法查询出来,还超时
这可能是什么地方设置不对吗?
sql都是同样的,但是执行效果却相差极大
热忱回答(16)
-
奋青 VIP0
2024/7/260 回复 -
fate sta VIP0
2024/7/26这个改成nvarchar或者配置字符串类型 , 默认字符串类型不同引起的索引失效
0 回复 -
fate sta VIP0
2024/7/26https://www.donet5.com/Home/Doc?typeId=2361
0 回复 -
fate sta VIP0
2024/7/26DbType.string是nvarchar不是varchar
DbType.AnsiString 这个是varchra
0 回复 -
奋青 VIP0
2024/7/26
早上您说的是string 所以我才改的0 回复 -
奋青 VIP0
2024/7/26@fate sta:主要是我之前就是ansistring 但是效果跟现在是一样的 查询慢
0 回复 -
fate sta VIP0
2024/7/26@奋青:你是sqlserver吗?
0 回复 -
fate sta VIP0
2024/7/26sqlsugar版本是不是新的,太老不行
0 回复 -
fate sta VIP0
2024/7/26如果是sqlserver用sqlprofile监控执行的SQL
0 回复 -
fate sta VIP0
2024/7/26可以拿到真实的执行SQL
0 回复 -
fate sta VIP0
2024/7/26如果是ORACLE,varchar2要这么写
[SugarColumn(ColumnDataType =
"nvarchar2"
,SqlParameterDbType =
typeof
(Nvarchar2PropertyConvert) )]
public
string
Name {
get
;
set
; }
要这么写
0 回复 -
fate sta VIP0
2024/7/26这个问题参数类型不同引起的索引失效,你可Queryable.Where("name='xxx'") 进行测试 ,不用参数化 。
0 回复 -
fate sta VIP0
2024/7/26基本每种库我都文档有写注意点
0 回复 -
奋青 VIP0
2024/7/26@fate sta:oracle 数据库
0 回复 -
奋青 VIP0
2024/7/26@fate sta:我是拿的orm 生成的sql 在数据库执行的
0 回复 -
奋青 VIP0
2024/7/26@fate sta:这个我再试试看
0 回复