2012-06-04 35 views

回答

0
SELECT MAX(that_field) AS last_auto_increment_value FROM that_table; 

OR

SELECT auto_increment -1 AS last_auto_increment_value 
FROM information_schema.tables 
WHERE table_name='that_table' 
AND table_schema = 'that_database'; 

OR

mysql_insert_id() //in PHP 
+0

爲什麼要使用這些複雜的查詢,而不是mysql_insert_id或PDO等同的ID? – stUrb

+2

'SELECT MAX()'會返回最大的值,它可能是也可能不是最後一次插入運行的值。用'mysql_insert_id()'它會返回從'INSERT'創建的id,因爲它在同一連接實例上 –

+0

@stUrb我沒有仔細閱讀這個問題。 – cypher

1

php.net/mysql_insert_id

mysql_query("INSERT INTO mytable (product) values ('kossu')"); 
printf("Last inserted record has id %d\n", mysql_insert_id());