問題: SQL Server 2008 で INSERT
操作の後に自動的に生成されたキー値 (ID 列の「id」など) を取得するにはどうすればよいですか?
解決策: SQL Server は、OUTPUT
句を使用した簡単な方法を提供します。
<code class="language-sql">INSERT INTO table (name) OUTPUT Inserted.ID VALUES('bob');</code>
OUTPUT
句は、INSERT
の完了後に指定された列を返すように指示します。 ここでは、新しく挿入された行のデータを保持する ID
疑似テーブルから Inserted
列を選択します。
説明:
ID 列を含むテーブルにデータを挿入すると、データベースは新しい一意の値を割り当てます。 OUTPUT
句は、この生成された値を INSERT
と同時に効率的に取得し、別個の SELECT
ステートメントの必要性を回避します。
重要な注意: 句は ID 列に限定されません。他の非 ID 列 (GUID を含む) を取得することもできます。OUTPUT
以上がSQL Server で INSERT 後に ID 値を取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。