【问题标题】:intersystem cache C# query with name like?名称类似的系统间缓存 C# 查询?
【发布时间】:2016-06-15 16:58:01
【问题描述】:

我正在尝试在 Cache sql 查询中使用 like:

select * from person where name like ?. 

我正在传递如下参数。

CacheParameter param = new CachemParameter("NAME", CacheDBType.NVarChar);
param.Value = tbxName.Text.ToUpper();
command.parameters.Add(param);

然后我执行阅读器。

结果什么都没有。 我知道在 MSSQL 中我使用像“Lawson%”这样的名称。如何在缓存查询中执行此操作?

TIA 迈克

【问题讨论】:

    标签: c# caching intersystems


    【解决方案1】:

    根据doc example

    您的命令可以使用%STARTSWITH 而不是like

    select * from person where name %STARTSWITH ?
    

    【讨论】:

      【解决方案2】:

      我终于发现我所要做的就是将“%”连接到正在传递的参数,它的工作原理如下: param.Value = tbxName.Text.ToUpper() + "%";

      【讨论】:

      • 请注意,使用 like 可能会导致用户在文本框中输入 % 字符或将其留空。
      猜你喜欢
      • 2021-11-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多