function upd(age)
{
  String sql="update tab set age="+age+" where sex=1"
  //...更新操作
}我想问下,有没有这样的一个判断函数,就是age值如果和数据库中已经有的值不一样,则执行age="+age+"赋值,否则不变eg. 假设这个函数名是 udpEqual(str)String sql="update tab set age=udpEqual("+age+") where sex=1"如果传入的age是20,而数据库里的age也是20,则不更新数据库里的age
如果传入的age是26,而数据库里的age是20,则更新数据库里的age为26

解决方案 »

  1.   

    就是不想用if,才看看有没有这个函数
    function   upd(age) 

        String sql="";
        if(age!='-1')
          sql="update   tab   set   age="+age+" address='abc'   where   sex=1" 
        else
          sql="update   tab   set   address='abc'   where   sex=1"
        //...更新操作 
    } 这样用if的办法是通过age的默认值是否是"-1"来判断age是否被改变,如果有个更新字段比较函数,就不用默认值判断了sql="update   tab   set   age=udpEqual("+age+")  address='abc' where sex=1" 多优美,可惜是没有,写MySql的函数又不现实,如果有这个功能的话