php と mysqli _
* 関数を使用してストアド プロシージャを使用して挿入クエリを実行した場合、自動インクリメント ID フィールドの値を取得する方法はありますか?
mysqli->insert_id
動作しないようです。
6699 次
4 に答える
8
最後に実行したクエリは INSERT でしたか?
mysqli->insert_id
適切な答えのようです:
戻り値
AUTO_INCREMENT
前のクエリによって更新されたフィールドの値。接続に以前のクエリがなかった場合、またはクエリがAUTO_INCREMENT
値を更新しなかった場合は、0 を返します。
于 2009-09-19T17:42:01.870 に答える
1
于 2009-09-19T17:32:33.473 に答える
1
挿入後にストアド プロシージャに次のステートメントを追加できます。
SET @saved_id = LAST_INSERT_ID()
次に、プロシージャを呼び出した後、次のクエリを実行します。
SELECT @saved_id
于 2009-09-19T18:49:27.163 に答える
0
mysqli->insert_id
(ここでmysqli
、データベース接続を表します) は、挿入の直後に使用する必要があります。読み取りを試みる前に同じ接続で他のクエリを実行すると、insert_id
0 が返されます。
于 2014-01-07T10:20:49.953 に答える