执行这条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
Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn