MySQL で新しく作成されたレコードの ID を決定する
データベースを操作する場合、多くの場合、新しく作成されたレコードに割り当てられた一意の識別子を取得することが必要になります。 。 SQL Server では、SCOPE_IDENTITY() 関数がこの目的を果たします。ただし、MySQL を使用している場合、その機能は異なります。
MySQL での同等物: LAST_INSERT_ID()
SCOPE_IDENTITY() に相当する MySQL は LAST_INSERT_ID() です。関数。データベースによって生成された最後の自動インクリメント値の ID を取得します。
使用例
CREATE TABLE Product ( ProductID INT AUTO_INCREMENT PRIMARY KEY ); INSERT INTO Product (Name) VALUES ('New Product'); # Get the ID of the newly created record SELECT LAST_INSERT_ID();
このクエリは、新しく挿入されたレコードの ProductID を返します。 .
トリガーによる挿入に関する注意
LAST_INSERT_ID() は、現在のセッションまたはトランザクション内で生成された最後の自動インクリメントの ID を返すことに注意することが重要です。追加の挿入を実行する挿入トリガーの場合、LAST_INSERT_ID() は、トリガー中に挿入されたテーブルではなく、元のテーブルの ID を返します。
結論
クロスプラットフォームのデータベース アプリケーションを効果的に操作するには、SQL Server の機能に相当する MySQL を理解することが重要です。 LAST_INSERT_ID() を利用すると、MySQL 内で新しく作成されたレコードの ID を取得できます。
以上がMySQL で新しく作成されたレコードの ID を取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。