0

接続を使用していくつかの挿入を行いましたが、最新の挿入は INSERT IGNORE ステートメントです。この後、LAST_INSERT_ID() を呼び出します。INSERT IGNORE がサイレントに失敗した場合は、0 になることを期待しています。ただし、そのIDが最新の挿入ステートメント以外のステートメントによって挿入された場合でも、最後に正常に挿入されたIDを返します...

4

1 に答える 1

0

これを回避する方法は、LAST_INSERT_ID を取得した後に接続でリセットされていることを確認することでした。

私はこのように LAST_INSERT_ID を取得することでそれを行いました:

SELECT LAST_INSERT_ID(), LAST_INSERT_ID(0);

そのため、ID を取得し、それをゼロに設定します。挿入が実際に成功しない限り、LAST_INSERT_ID への後続の呼び出しはゼロの値を取得します。

于 2013-10-29T14:39:22.807 に答える