我的数据库test里有50个字段,在id=1的记录里 50个字段都有值  如果我用update更新前20个字段值 而后30个字段想自动默认更新为0的话  有什么简单的方法吗 谢谢

解决方案 »

  1.   

    update table set c1='a',c2='b',...,c21=',c23=0,...
    这样不行么?
    自动默认的话,或者将这条数据删除,然后重新insert一下,当然,ID为1,就不自动了。
      

  2.   

    难道要一直set c1='a',c2='b',...,c21=',c23=0,... 下去吗 不止一条记录的 有很多很多 
      

  3.   

    两种方式:
    1.数据库端做个触发器,当更新前20个字段的时候,给后30个字段指定的值,以后你更新数据的前20个,之后的30个都是按照你触发器里设置好的进行设置,逻辑可以直接写触发器里.2.服务器端代码控制的方式,在传参数的时候,给你后30个字段的值设置默认值,参考单默认值情况function set($y,$x='xxx'){
    ................
    }参数太多可写成数组
      

  4.   

    5楼很懂我的意思 呵呵 4楼那样的方法貌似还是要写很多 与其那样 或许还不如一直set下去好吧 或许我没明白你的意思 我是菜鸟 呵呵