ホームページ >データベース >mysql チュートリアル >SQL Server で INSERT 後に自動生成されたキーを取得するにはどうすればよいですか?

SQL Server で INSERT 後に自動生成されたキーを取得するにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2025-01-17 13:11:09236ブラウズ

How Can I Retrieve an Auto-Generated Key After an INSERT in SQL Server?

SQL Server INSERT 後の自動生成キーへのアクセス

問題: SQL Server テーブルに新しい行を追加した後、自動生成されたキー値を取得する必要があります。

解決策:

以前は、これには別の SELECT クエリが必要でしたが、SQL Server 2008 以降のバージョンでは、OUTPUT 句を使用したより効率的な方法が提供されています。

構文は次のとおりです:

<code class="language-sql">INSERT INTO table (name)
OUTPUT Inserted.ID
VALUES('bob');</code>

この 1 つのステートメントは、新しいレコードを挿入し、同時に Inserted 疑似テーブルから新しく生成された ID を返します。 この ID は、同じバッチ内で使用するためにすぐにアクセスできるようになります。

重要な考慮事項:

  • この手法は、IDENTITY 列と非 IDENTITY 列 (GUID など) の両方に有効です。
  • OUTPUT 句で複数の列を指定すると、新しく挿入されたレコードから追加情報を取得できます。

以上がSQL Server で INSERT 後に自動生成されたキーを取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。