name1!=name2 and birthday1!=birthday2 and age1!=age2 and class1!=class2
四个条件同时满足!

解决方案 »

  1.   

    name1!=name2 and birthday1!=birthday2 and age1!=age2 and class1!=class2
    四个条件同时满足!***************楼主自己不是已经写出来了吗?
      

  2.   

    http://hi.baidu.com/boshiclub
    我们一起创业,我们一起发财,我们一起快乐,我们一起努力!
      

  3.   

    name1!=name2 && birthday1!=birthday2 && age1!=age2 && class1!=class2
      

  4.   

    把添加记录和修改记录区别开。
    if(add)-->$sql = select name from table 
    if(edit)-->$sql = select name freom table where id !=此记录的id
      

  5.   

    pg_query($conn,"BEGIN WORK;LOCK TABLE tbc_student IN EXCLUSIVE MODE;");
    $res=pg_query($conn,"select name,birthday,age,class from tbc_student where name='".${name.($i+1)}."' and birthday='".${birthday.($i+1)}."' and age='". ${age.($i+1)}."' and class='".${class.($i+1)}."' for update");
      pg_query($conn,"COMMIT WORK;");
      $row=pg_fetch_row($res);
      if($row>1)
       { alert_goback_script('记录重複,请重新输入!');
     exit;
       }
    当我保存修改状态的记录时(并没有修改该条记录),就执行了if语句
      

  6.   

    PostgreSQL不熟悉。id     name 
    =============
    1      a
    2      b
    3      c
    =============
    你要修改第二条数据,应该select name where name=... and id !=2;你上面的语句似乎整个表格搜了一遍.
      

  7.   

    难道是select name,birthday,age,class from tbc_student where name='".${name.($i+1)}."' and birthday='".${birthday.($i+1)}."' and age='". ${age.($i+1)}."' and class='".${class.($i+1)}."' and id!='$id'
    数据库里面是有个id号
    但是好像这样不行哟
      

  8.   

    id号码是唯一的,但就是在数据库记录中就不能name1!=name2 && birthday1!=birthday2 && age1!=age2 && class1!=class2
    这四个字段的不能有重复记录
      

  9.   

    id name  birthday    age  class
    1  张三  1982.2.21   25    2610
    2  张三  1982.2.21   25    2610
    3  张三  1982.2.21   25    2611
    4  张三  1983.2.21   24    2610
    5  李四  1982.2.21   25    2610
    第1条记录和第2条记录是不能出现的,在表单中id是隐藏。当修改状态时-----
      

  10.   

    1 张三 1982.2.21 25 2610
    2 张三 1982.2.21 25 2612
    3 张三 1982.2.21 25 2613
    4 张三 1983.2.21 24 2614
    ==============================
    比如你要修改id=1的数据,就应该把id=1(修改过或未修改)的数据和id为2,3,4的数据比较。把它当成一条新插入的数据来做。
      

  11.   

    所以比较数据时,就不要再和自己比较了。update talbe set ... where id !=1;如果你是没有任何改动就提交了数据,那这个条件肯定是必须的。
      

  12.   

    原理是明白,可就是想不出来用甚么语句呀
    foolbirdflyfirst(湖水清澈)能点代码出来
    谢谢了!!!!!!!!!!!!
      

  13.   

    我那个SQL语句和自己比较,同时和数据库里面的数据比较,那怎样才能做到不和自己比较?
      

  14.   

    主要是逻辑得明了
    处理页面:
    ============
    if(empty($_POST['id']))
    {//判断id是否为空,区别开添加和编辑操作
      //空则做添加操作
      $sql = "select ... from table";  
    }
    else
    {
     //有值则做编辑操作
      $sql = "select ... from table where id !=".$_POST['id']; 
    }
      

  15.   

    不明白你的需求?????
    if(empty($_POST['id']))
    {//判断id是否为空,区别开添加和编辑操作
    //空则做添加操作
    $sql = "select ... from table";
    if(没有相同数据) {$sql = "insert into ...."}
    }
    else
    {
    //有值则做编辑操作
    $sql = "select ... from table where id !=".$_POST['id'];
    if(没有相同数据) {$sql = "update ...."}
    }
      

  16.   

    你看看,这就是我写的code
    pg_query($conn,"BEGIN WORK;LOCK TABLE tbc_student IN EXCLUSIVE MODE;");
    $res=pg_query($conn,"select name,birthday,age,class from tbc_student where name='".${name.($i+1)}."' and birthday='".${birthday.($i+1)}."' and age='". ${age.($i+1)}."' and class='".${class.($i+1)}."' for update");
    pg_query($conn,"COMMIT WORK;");
    $row=pg_fetch_row($res);
    if($row>1)
    { alert_goback_script('记录重複,请重新输入!');
    exit;
    }
    当我保存修改状态的记录时(并没有修改该条记录),就执行了if语句
      

  17.   

    现我把语句改成下面的,还是不行!
    pg_query($conn,"BEGIN WORK;LOCK TABLE tbc_student IN EXCLUSIVE MODE;");
    $res=pg_query($conn,"select name,birthday,age,class from tbc_student where id!='".${id.($i+1)}."' for update");
    pg_query($conn,"COMMIT WORK;");
    $row=pg_fetch_row($res);
    if($row>1)
    { alert_goback_script('记录重複,请重新输入!');
    exit;
    }
      

  18.   

    $res=pg_query($conn,"select name,birthday,age,class from tbc_student where name='".${name.($i+1)}."' and birthday='".${birthday.($i+1)}."' and age='". ${age.($i+1)}."' and class='".${class.($i+1)}."'and id!='".${id.($i+1)}."' for update");
      

  19.   

    楼上不可行
    pg_fetch_row改成pg_num_rows也不行
      

  20.   

    在修改的时候表单中放四个隐藏的INPUT,分别是name1,birthday1,age1,class1对应的值是name,birthday,age,class
    然后有四个显示的INPUT分分别是name,birthday,age,class然后在提交以后判断
    if (name1!=name2 && birthday1!=birthday2 && age1!=age2 && class1!=class2)
       执行插入
      

  21.   

    这个问题搞了好久
    不知怎么解决
    不知是不是有甚么for循环语句?