MySQL中如何获取下一条插入的自增ID 或 刚刚插入的id |
发布时间: 2012/8/22 17:53:07 |
MySQL中如何获取下一条插入的自增ID 或 刚刚插入的id
1.$sql_addinfo = " insert into contact_info_group set contact_group_id='',contact_id='' " ; int mysql_insert_id ( [resource link_identifier]) 如果上一查询没有产生 AUTO_INCREMENT 的值,则 mysql_insert_id() 返回 0。如果需要保存该值以后使用,要确保在产生了值的查询之后立即调用 mysql_insert_id()。 注: MySQL 中的 SQL 函数 LAST_INSERT_ID() 总是保存着最新产生的 AUTO_INCREMENT 值,并且不会在查询语句之间被重置。 mysql_insert_id() 将 MySQL 内部的 C API 函数 mysql_insert_id() 的返回值转换成 long(PHP 中命名为 int)。如果 AUTO_INCREMENT 的列的类型是 BIGINT,则 mysql_insert_id() 返回的值将不正确。可以在 SQL 查询中用 MySQL 内部的 SQL 函数 LAST_INSERT_ID() 来替代。 具体使用如下语句:mysql_query(”SELECT LAST_INSERT_ID()”); PS: 在插入数据时候可以这样写insert into xxx (col_a, col_b) values (11,22);select LAST_INSERT_ID()这样不就可以取到最近生成的ID了吗.
1. 方法1 2. 方法2 得到的结果集里面有一列AUTO_INCREMENT,是一个Int值变量,获取之后就是下一个要插入的ID了。
//-------------------cms mysql_insert_id()----------------------------- 本文出自:亿恩科技【www.enkj.com】 |