簡體   English   中英

在PHP mysql_query()中一次運行兩個MySQL查詢

[英]Running two MySQL queries at a time in PHP mysql_query()

我需要使用MySQL的SELECT LAST_INSERT_ID()函數來獲取最后插入行的ID。 當我嘗試運行時: -

  mysql_query("
    INSERT INTO `posts`
           (`user`, `body`, `time`, `pageID`)
           VALUES('pachykutty', 'testMessage', '2012-10-26 04:59:43', 1);
    SELECT LAST_INSERT_ID();");

給我錯誤,但當我像這樣單獨運行兩個查詢時: -

mysql_query("
INSERT INTO `posts`
       (`user`, `body`, `time`, `pageID`)
       VALUES('pachykutty', 'testMessage', '2012-10-26 04:59:43', 1)");
mysql_query("SELECT LAST_INSERT_ID()");

沒關系。 我擔心如果兩個客戶端同時運行查詢,它們的LAST_INSERT_ID將發生沖突。 所以我想毫不拖延地一起運行這兩個查詢。 有什么辦法嗎?

你可以使用這樣的查詢

mysql_query("
INSERT INTO `posts`
       (`user`, `body`, `time`, `pageID`)
       VALUES('pachykutty', 'testMessage', '2012-10-26 04:59:43', 1)");
$var =  mysql_insert_id();

mysql_insert_id作用於上次執行的查詢。

所以不用擔心並使用上面的代碼。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM