MYSQL中拼接字符串查询的BUG,like concat语句格式错误 返回

C#论坛 老数据
2639
该叫什么 ReapeR 发布于2020/3/12
悬赏:5 飞吻

实测在Mysql中,如果string s="|"+变量+"|";再通过Where(a=>("|"+a.X+"|").Contains(s)),实际生成的SQL语句是

WHERE ('|'+'X字段'+'|') LIKE CONCAT('%','|"+变量+'|') ,导致查询结果不对,正确的SQL拼接应该是

WHERE CONCAT('|','X字段','|') LIKE CONCAT('%','|",变量,'|') ,希望能尽快修复,目前遇到这种情况只能通过手写了

热忱回答0