0

私はSQLサーバー2005(テスト用)と2007(本番用)を使用しています。

別のテーブルの「最後のレコード ID」列を使用して、既存の列のテーブル内のすべてのレコードに一意のレコード ID を追加する必要があります。だから、私はテーブルのいくつかの並べ替えを行うつもりですがUPDATE、他のテーブルから「最後のレコード ID」を取得し、それをインクリメントし、そのテーブルを更新してから、レコードを更新する必要があります。

誰でもこれを行う方法の例を教えてもらえますか? 他のユーザーもカウンターをインクリメントしている可能性があります。

4

1 に答える 1

3

1 つのテーブルに挿入してから次のテーブルを更新する場合は、@@IDENTITY を使用して最初のテーブルから自動インクリメント ID を取得できます。

例えば

INSERT INTO table1 (description) VALUES ('blah');
UPDATE table2 SET (tabel1ID = @@IDENTITY) WHERE condition

@@IDENTITY は、最後に挿入された行の ID を提供します。

于 2010-03-17T04:41:33.523 に答える