比如我有一个database,其中一个表名为info,表中有字段id(int unsigned auto_increment型的),name(char(10)),address(char(30))等等。现在我在PHP中写一条语句,
"insert into info values(NULL,"'$name'","'$address'")";请问是这么写的吗?自动编号的id是对应NULL吗?

解决方案 »

  1.   

    插入name,address值就行了,id不用管,你设计表的时候将其设为auto_increment
      

  2.   

    ID是自动增涨的,一般的写成insert into a values('','$name','$address');
    如果想将自动增涨的值改为你自己要的值,
    $res=mysql_query("select max(id) from a");
    $row=mysql_fetch_row($res);
    $newid=$row[0]+2;
    mysql_query("insert into a values('$newid','$name','$address')");
    当然要保证$newid和之前的id不重复!
      

  3.   

    "insert into info values("'$name'","'$address'")"; 
      

  4.   

    字段 id 必须为 int 类型,而且要设置为auto_increment
      

  5.   

    这样肯定会错,如果ID不写的话,那insert into 后面要指定字段insert into info (name,address) values("'$name'","'$address'")
    这样才对
      

  6.   

    我比较同意2楼的想法
     引用2楼
    ID是自动增涨的,一般的写成insert into info(name,address) values('$name','$address'); 
    如果想将自动增涨的值改为你自己要的值, 
    $res=mysql_query("select max(id) from a"); 
    $row=mysql_fetch_row($res); 
    $newid=$row[0]+2; 
    mysql_query("insert into info values('$newid','$name','$address')"); 
    当然要保证$newid和之前的id不重复! 
      

  7.   

    $re = mysql_query("SHOW TABLE STATUS LIKE 'info'");
    return $re[0]['Auto_increment'];
      

  8.   

    insert into info values('',"'$name'","'$address'");这样就行了.不要NULL