执行这条sql之后,用mysql_insert_id无法获得insert id。有什么方法/函数能获得replace into产生的新id? ------解决方案-------------------- replace 指令可能产生,也可能不产生新的 id 所以获取不到是正常的
那么 有什么方法/函数能获得replace into产生的新id? 答案是没有,但你可以指定 id ------解决方案-------------------- select LAST_INSERT_ID() as `id` from `create_id`; 與 select id from `create_id` order by id desc limit 1 不是一樣嗎? ------解决方案--------------------
并发的情况下, order by id desc 可能就是别人的id了 LAST_INSERT_ID() 是在某个数据库连接的范围内吗? ------解决方案-------------------- 原来这样也可以获id,学习了 ------解决方案-------------------- select id from tb order by id desc limit 1 ------解决方案-------------------- 这个只可以获取库里面的id吧?楼主是在插入数据的时候,要获取当前id。 我用TP写的: $Form=M('member'); $sql="show table status where Name='fht_member'"; $rs=$Form->query($sql); $Mid=$rs[0]['Auto_increment']; 返回记录集有个['Auto_increment'],就是当前插入的自增id
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn