SQL Server での INSERT 後の自動生成キーへのアクセス
多くの場合、INSERT 操作の後に自動生成されたキーの値が必要になります。 SQL Server の OUTPUT
句は、これを達成するための合理的な方法を提供しており、特に SQL Server 2008 以降で役立ちます。
例:
「id」(自動生成) と「name」列を持つ「person」というテーブルがあるとします。 「bob」という名前のレコードを追加し、新しく生成された ID を取得するには、次のコマンドを使用します:
<code class="language-sql">INSERT INTO person (name) OUTPUT Inserted.id VALUES ('bob');</code>
内訳:
OUTPUT
句は、新しく挿入された行から指定された列の値 (この例では「id」) を返すように指示します。Inserted
は、挿入されたばかりの行を表す疑似テーブルとして機能します。Inserted.id
は、挿入された行から "id" 値をフェッチするように SQL Server に明示的に指示します。さらなる考慮事項:
OUTPUT
句は複数の列を取得できます。必要な列をカンマ区切りでリストするだけです。IDENTITY
列を超えて、GUID などの他の自動的に生成された列を包含します。OUTPUT
句のサポートは SQL Server 2005 から始まります。以上がSQL Server の OUTPUT 句は、自動生成された挿入値をどのように取得できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。