c# 用SqlParameter實現多字段模糊查詢

 

用sqlserver的SqlParameter方法實現多字段模糊查詢,全字段查找關鍵字,本方法兼容不帶參數的查找

 

 internal static DataTable getData(params  string[] keyWord)
        {
            
            string sql = "select * from [dbo].[Bom]  ";

            SqlParameter[] sp=new SqlParameter[]{};
            //如果沒有參數就直接查詢,不帶where
            if (keyWord.Length > 0)
            {
               
                sql += " where [SerialId] like @keyWord or [Levels] like @keyWord or [PartsCodeName] like @keyWord  ";
              
                
               //多字段模糊查詢
                sp = new SqlParameter[]{
                          new SqlParameter("@KeyWord" , "%"+ SqlNull(keyWord[0])+"%")
                    };

            }
            DataSet ds = DbHelperSQL.Query(sql, sp);
            return ds.Tables[0];
 
        }

        //防止找到的數據是null導致報錯,需要對null的情況作一個判斷
        public static object SqlNull(object obj)
        {
            if (obj == null || obj.ToString() == "")
            {
                return DBNull.Value;
            }
            else
            {
                return obj;
            }
        }

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章