• ベストアンサー

IDENTITY列

データベースなどにあるIDENTITY列とは何でしょうか?AutoNumber型と理解しているですが、間違ってないでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

AutoNumber型と発想は似ておりますが、 identityは型ではなく、カラムの属性となります。 テーブルに渡って番号が増加するデータを持つ場合に、IDENTITY属性を指定し、SQL Serverに自動的にセットさせることができます。 IDENTITYを使用する場合はデータ型を「int」かつ、「NULLを許容」にする必要があります。 IDENTITY属性は、シードと呼ばれる初期値とインクリメントと呼ばれる増分を指定し、数値を初期値からレコード追加の際に増分を加算された値で自動セットしてくれるので便利ですが、登録された値を取得するには@@IDENTITYをSELECTしないと取得できなかったり、TableAdapterのUpdateメソッドでは対象テーブルのIDENTITY属性を持つフィールドを含めたDataTableを使用するとうまくいかなかったりなったりと制約もありますので使用の際には検討が必要です。 ご注意ください。

jmine
質問者

お礼

confunkshun様 分かりやすい回答ありがとうございます。 よく理解できました。

関連するQ&A