1

我正在开发使用 WebSql 作为本地数据库的移动应用程序。现在我正在创建一个搜索功能,当用户搜索记录时,我想在其中转义“_”。我尝试通过在方括号“[_]”中传递它来使用 MS-SQL 方法

下面是我的代码示例

 if ($.trim($('#txtPolicy').val()).length > 0) {
        policy = $.trim($('#txtPolicy').val());

        if (policy.indexOf("_") >= 0)
            policy = policy.replace(/_/g, "[_]");

       query += " (";
        var arrploicy = policy.split(',');
        for (var j = 0; j < arrploicy.length; j++) {
            query += " policy like ? or ";
            arr[i] = "%" + arrploicy[j] + "%";
            ++i;
        }
        query = query.substring(0, query.length - 3);
        query += ") ";
    }

我有一个数据为 1234_456789 的记录。但它不返回任何记录,可能是因为它可能将其视为字符串。

4

1 回答 1

0

您可以使用参数化查询而不要求 uou 转义。它也更安全。

于 2013-10-15T09:22:19.450 回答