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.vbseamall.com】 |