我向表里面insert了一条数据,想得到该条数据的id值,运行了select @@identity,但是返回为0,这是为什么呢?我将
id的属性设置为自增了并且保持了数据库连接没有断开~是怎么回事呢?请大家指教~~

解决方案 »

  1.   

    select @@identity 是MS SQL中的。mySQL中用 select LAST_INSERT_ID()
      

  2.   

    用了LAST_INSERT_ID()也是返回0,id字段是int型的,自增的~~我在phpmyadmin中先执行insert语句,再select LAST_INSERT_ID(),还会是什么原因呢??
      

  3.   

    MYSQL版本?都是在phpmyadmin中INSERT、SELECT LAST_INSERT_ID()?
      

  4.   

    select LAST_INSERT_ID()
    必须和 insert 语句在同一个session里面才有效
      

  5.   


    MySQL 6.0.6-alpha
    全是在phpmyadmin中做的操作
      

  6.   

    在SQLYOG下测试:
    INSERT INTO TEST(GG) VALUES ('123');
    SELECT LAST_INSERT_ID()
    有一个ID自增字段,结果是正确的
      

  7.   

    问题解决了,谢谢大家~~select LAST_INSERT_ID()是要和insert写在一起运行的~我是分别执行的,结果总返回
    0,结贴~