簡體   English   中英

SQL返回上次查詢中受影響的行的值?

[英]SQL return values of affected rows in last query?

我有一個SQL查詢,它將新記錄插入到table1 記錄'id'是PK( field1 )並具有自動遞增屬性:

INSERT INTO table1 (field2, field3) VALUES ("Hello", "World")

我的下一個查詢(緊隨其后)將一條記錄插入table2 ,並要求在上一個查詢中受影響的行的ID。

INSERT INTO table2 (field2) VALUES (PKValueOfAffectedRowInPreviousQuery)

是否有一個函數可以為查詢中受影響的行返回結果集,類似$result = $stmt->return_affected_records()這樣,以便我可以訪問此field1值?

這與返回受影響的行完全不同,我知道這是使用$stmt->affected_rows收到的。 我關心那些受影響的記錄中的

我認為您可以在這兩個insert之間進行select

$value1 = "Hello";
$value2 = "World";

INSERT INTO table1 (field2, field3) VALUES ($value1,$value2);

$sql = "SELECT field1 FROM table1 WHERE field2 ='" . $value1 . "' AND field3 = '" . $value2 . "'"; 

現在,您只需要從結果中提取id並進行第二次插入即可。

暫無
暫無

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

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