You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在PowerShell调用MySQL存储过程时正确使用LIKE关键字

你自行修改后的查询写法不正确,需要调整。

错误原因

  1. 你删除了原匹配条件中键、值两侧的单引号,原本需要匹配的是JSON格式片段'worklistConfig':'clientLevel',修改后只要出现worklistConfig:clientLevel就会命中,匹配范围不符合你的原始需求。
  2. 你使用两对单引号包裹通配符的写法,若未结合转义规则使用,也会导致匹配条件错误。另外查询中包含的\r\n是SQL语法允许的空白字符,不会影响执行结果,不需要额外处理。

正确处理方案

场景1:直接在PowerShell中拼接SQL语句调用存储过程

PowerShell中单引号包裹的字符串不会自动解析变量,内部的单引号用两个单引号转义即可,正确写法如下:

SELECT * 
FROM ch_form_worklist WHERE id = 1987 AND worklist LIKE '%''worklistConfig'':''clientLevel''%';

上述写法里,SQL层面会将两个连续的单引号解析为单个单引号,最终的匹配条件和你最开始验证过的正常运行的语句完全一致。

场景2:将匹配内容作为参数传入存储过程

你可以直接构造匹配字符串作为参数值传递,不需要在SQL侧做额外转义,PowerShell侧构造参数的示例:

$matchPattern = "%'worklistConfig':'clientLevel'%"

存储过程内部直接使用该参数做LIKE匹配即可。

内容的提问来源于stack exchange,提问作者Noufal netspective

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 07:45:04