string sql = "select * from dingdan";
            if (sheng != "")
            {
                sql += " and Province='" + sheng + "'";
            }
            if (shi != "")
            {
                sql += " and City='" + shi + "'";
            }像这样sql会等于"select * from dingdan"" and Province='" + sheng + "'"" and City='" + shi + "'";而不是"select * from dingdan and Province='" + sheng + "' and City='" + shi + "'";请教这样改怎样解决

解决方案 »

  1.   

    string sql = "select * from dingdan where 1=1 "; 
      

  2.   

    string sql = "select * from dingdan where 1=1 "; 
                if (sheng != "") 
                { 
                    sql += " and Province='" + sheng + "'"; 
                } 
                if (shi != "") 
                { 
                    sql += " and City='" + shi + "'"; 
                } 
      

  3.   

    LZ你这样写会在SQL中出现这样的双隐号? 看不出来。
      

  4.   

    sql 语句拼接——丑陋而危险滴代码!请问 lz 这个项目 who 在做架构设计么?!