タグアーカイブ IDENTITY

Insert時に新しく付与されたIDの取得方法(SQL Server)

IDENTITYプロパティ

SQL Serverに一意のIDを生成させる方法として、列にIDENTITYプロパティを指定する方法があります。 IDENTITYプロパティには次の特徴があります。

   * ひとつのテーブルのひとつの列にしか指定できません。
   * 指定する列のデータ型はint型、bigint型、smallint型、tinyint型、decimal型、numeric型に限ります。
   * (設定により変更可能ですが)基本的に値のセットは出来ません。

IDENTITYを指定した列に値を挿入したい場合は、IDENTITY_INSERTプロパティをONに設定します。 この設定は同一セッション内でのみ有効です。

BEGIN TRANSACTION SERIALIZABLE;

INSERT INTO …

SELECT SCOPE_IDENTITY();

COMMIT TRANSACTION;

IDENTITY列の番号リセット(SQL Server)

SQLServerで、Identity属性を使用して自動的に番号をセットしている項目があります。
この採番を1からやり直したい時

DBCC CHECKIDENT (tablename ,RESEED ,0)
にて変更可能です。
0の部分を戻したい値に変更する事も可能です。