zoukankan      html  css  js  c++  java
  • 用like语句时的C#格式化函数

    模糊查询一般都是采用like '%xxx%'的方式,第一反应是[是特殊字符,需要转义。查了查帮助果然如此。并且转义还比较特别,使用中括号括起来,也即[[],并且除了这个符号之外,还有其它的几个符号。想想以前做的程序,都没有转义过,只是将里面的单引号替换成两个单引号而已。而且这些特殊字符在查询中确实比较难碰到。看来以前写的n多程序就bug多多了。因为我从来就没有转义过。从现在要改正了。写了一个C#的函数,不过还没有测试,贴出来先。想想有些bug通常就是因为经验不足而导致的,并非你要注意避免就一定能避免的了。而测试人员如何不了解的话,也很难测试出来。因为毕竟不可能测试无穷多个字符串。 
        
    /// <summary>
            
    /// 对字符串进行sql格式化,并且符合like查询的格式。
            
    /// </summary>
            
    /// <param name="str">要转换的字符串</param>
            
    /// <returns>格式化后的字符串</returns>

            public static string ToLikeSql(string sqlstr) 
            
    {
                
    if (sqlstr == null)  return "";
                StringBuilder str 
    = new StringBuilder(sqlstr);
                str.Replace(
    "'","''");
                str.Replace(
    "[","[[]");
                str.Replace(
    "%","[%]");
                str.Replace(
    "_","[_]");
                
    return str.ToString();
            }
  • 相关阅读:
    jpa项目倒入eclipse中,无法识别注解的实体类
    上传文件的js控件,无刷新
    Maven 安装
    location 浅解析
    小程序 上传图片(多张、多次上传),预览图片 删除图片
    小程序 跳转问题 (来源见注明)
    GIT 安装和升级
    span 不使用float 靠右对齐且垂直居中
    PHP 根据php传的值修改 select 中动态生成的 option 组的默认选中值
    MAC 隐藏功能
  • 原文地址:https://www.cnblogs.com/ivy/p/1248893.html
Copyright © 2011-2022 走看看