2012-02-26 60 views
-1

我有兩個表ProductionProduction_DetailProduction_Detail持有某些訂單的詳細信息,並有一個外鍵Production。當我在Production中插入一行時,自動遞增列將爲該行設置鍵。我需要這個密鑰,以便它可以與在Production中插入主行後插入的新行Production_Detail連接。返回新插入的索引值

使用PHP,我插入數據:

insert into Production Values ('','$producer_id','$order_date','$company_id','$emp_id'); 

我需要找到一個''一部分,所以它可以用於以後奎雷斯。

+0

要看你用什麼函數或方法執行插入 – 2012-02-26 21:04:58

+0

http://stackoverflow.com/questions/2266604/select-last-insert- id重複多次。 – 2012-02-26 21:05:05

+0

我使用ajax來調用這個,我想要這個id,這樣我就可以使用該id與其他插入問題。 – Namit 2012-02-26 21:07:01

回答

0

在取決於什麼MySQL的/你正在使用的查詢擴展,但PHP有mysql_insert_id函數返回自動遞增值最近插入的行。

0

如果使用PDO可以使用功能

$id = $pdo->lastInsertId(); 
+0

但如果有多個用戶使用該腳本呢?它會不會導致衝突? – Namit 2012-02-26 21:05:57

+0

不,我不知道確切的解釋方法,但它會給你上面查詢的id,因爲它與數據庫是相同的「連接」。也許別人可以精確解釋。 – romainberger 2012-02-26 21:08:09

+0

謝謝!我讀了這個描述,它說它用'mysql_connect()'打開了一個連接。 – Namit 2012-02-26 21:10:19

0

取決於你如何使用的數據庫,你可能要通過數據庫變量。

MySQL的

$last_id = mysql_insert_id($db); 

的mysqli

$last_id = mysqli_insert_id($db);