where 1=1

来源:互联网 发布:赛维网络 编辑:程序博客网 时间:2024/04/26 15:48
今天在看SQLJ  程序的时候看到这样的语句:
 String sqlWhere1 = " a.type <> 'I'";
 if (aa)  sqlWhere1 = "1=1";

解释:
where后面总要有语句,加上了1=1后就可以保证语法不会出错!  
   
  假如后面确定有条件语句,就可以不用1=1;  
  不能确定where后面是否有语句的时候就要加上1=1了,当没有其他条件语句时候,还有1=1,就不会输错了   。  
  例子:  
  SQL="SELECT   *   FROM   TABLE   WHERE   1=1   "&WHERE_STR    
  WHERE_STR是根据前面填入的得到的一个串.这样就不用管是否为空,都不会出现错误.就这点技巧了。  
 
看了解释之后,恍然大悟,以前自己写过动态的where 子句,怎么就从来没有注意过这点呢,可能总是有至少一个where子句吧。。。
原创粉丝点击