次の方法で共有


方法 : 列の ID プロパティを変更する

更新 : 2007 年 11 月

テーブルに新しいレコードを追加したときに自動的に生成されて、その列に格納される連続番号を再定義する場合は、列の ID プロパティを変更します。ID プロパティは、テーブルごとに 1 つの列にだけ設定できます。

ID プロパティを持つ列には、システムによって生成される連続した値が含まれます。この値は、テーブル内の各行を一意に識別します (従業員の識別番号など)。ID 列を含むテーブルに値を挿入すると、Microsoft SQL Server は、最後に使用された ID 値 ([IDENTITY シード] プロパティ) および列の作成時に指定された増分値 ([IDENTITY インクリメント] プロパティ) に基づいて、次の ID を自動的に生成します。

x5s13zy2.alert_note(ja-jp,VS.90).gifメモ :

ID プロパティを設定できるのは、NULL 値が許可されていない decimal、int、numeric、smallint、bigint、または tinyint データ型の列に対してだけです。主キー列に対しても ID プロパティは設定できません。

列の ID プロパティを変更するには

  1. サーバー エクスプローラで、ID プロパティを変更するテーブルを右クリックし、[テーブル定義を開く] をクリックします。

    テーブルが [テーブル デザイナ] 内で開かれます。

  2. 変更する列の [Null を許容] チェック ボックスをオフにします。

  3. [列のプロパティ] タブの [IDENTITY の指定] プロパティを展開します。

  4. [Is Identity] 子プロパティのグリッド セルをクリックし、ドロップダウン リストの [はい] をクリックします。

  5. [IDENTITY シード] セルに値を入力します。この値は、テーブルの最初の行に割り当てられます。既定では値 1 が割り当てられます。

  6. [IDENTITY インクリメント] セルに値を入力します。この値は、2 行目以降の各行に対して [IDENTITY シード] に加算される増分値です。既定では値 1 が割り当てられます。

たとえば、ordersテーブルに追加される各行に対して、10000 から始まり 10 ずつ増える 5 桁の注文 ID を自動的に生成する場合を考えます。この場合は、[IDENTITY シード] に10000 を入力して、[IDENTITY インクリメント] に 10 を入力します。

テーブルの ID プロパティを変更しても、既存の ID 値は保持されます。新しい設定が適用されるのは、テーブルに新しく追加される行だけです。

x5s13zy2.alert_note(ja-jp,VS.90).gifメモ :

頻繁に削除が行われるテーブルに ID 列があると、ID 値の間に間隔が生じることがあります。間隔が生じると問題がある場合は、ID プロパティを使用しないでください。

グリッド セルの外部をクリックするか、Tab キーを使用して別のグリッド セルに移動すると、[IDENTITY の指定] プロパティの新しい値が、[テーブル デザイナ] の列に割り当てられます。[テーブル デザイナ] で変更を保存すると、値がデータベースに反映されます。

参照

参照

Column プロパティ

その他の技術情報

列の使用