web-dev-qa-db-ja.com

IDENTITY列が1つだけのテーブルに挿入する方法は?

このもう1つ に答えようとする過程で、この質問に答えました)

GroupTableと呼ばれる次のMS-SQLテーブルを検討してください。

 GroupID 
 ------- 
 1 
 2 
 3 

ここで、GroupIDは主キーであり、ID列です。

IDENTITY_INSERT ONを使用して、新しい行をテーブルに挿入する方法(および新しいIDを生成する方法)without

これに注意してください:

INSERT INTO GroupTable() Values ()   

...動作しません。

編集:ここでは、SQL 2005またはSQL 2008について説明しています。

80
codeulike

これは動作するはずです:

INSERT INTO GroupTable DEFAULT VALUES 
123
DJ.

どうぞ:

INSERT INTO GroupTable DEFAULT VALUES
17
tofi9

一度に複数の行を挿入することができます。

たとえば、30行を挿入します。 GroupTableのデフォルト値への挿入GO 30

これにより、毎回ID列をインクリメントして30行を挿入します。

3
RMK

シーケンスなどを使用してみてください。シーケンスから選択すると、シーケンス内の次の値が得られます。

0
Mike Pone