DataColumn.AutoIncrement 屬性
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
取得或設定值,指出對於加入至資料表的新資料列而言,該資料行是否自動遞增資料行的值。
public:
property bool AutoIncrement { bool get(); void set(bool value); };
public bool AutoIncrement { get; set; }
[System.Data.DataSysDescription("DataColumnAutoIncrementDescr")]
public bool AutoIncrement { get; set; }
member this.AutoIncrement : bool with get, set
[<System.Data.DataSysDescription("DataColumnAutoIncrementDescr")>]
member this.AutoIncrement : bool with get, set
Public Property AutoIncrement As Boolean
屬性值
如果資料行值自動遞增,則為 true
,否則為 false
。 預設為 false
。
- 屬性
例外狀況
該資料行是計算的資料行。
範例
下列範例會設定 AutoIncrement、 AutoIncrementSeed和 AutoIncrementStep 屬性。
private void AddAutoIncrementColumn()
{
DataColumn column = new DataColumn();
column.DataType = System.Type.GetType("System.Int32");
column.AutoIncrement = true;
column.AutoIncrementSeed = 1000;
column.AutoIncrementStep = 10;
// Add the column to a new DataTable.
DataTable table = new DataTable("table");
table.Columns.Add(column);
}
Private Sub AddAutoIncrementColumn()
Dim column As New DataColumn()
column.DataType = System.Type.GetType("System.Int32")
With column
.AutoIncrement = True
.AutoIncrementSeed = 1000
.AutoIncrementStep = 10
End With
' Add the column to a new DataTable.
Dim table As DataTable
table = New DataTable
table.Columns.Add(column)
End Sub
備註
如果設定此屬性時,此數據行的類型不是 Int16、Int32 或 Int64,則會 DataType 強制屬性為 Int32。 如果這是計算數據行,就會產生例外狀況。 已 Expression 設定屬性。 只有在加入數據行集合時,這個數據行的數據列值等於預設值時,才會使用遞增值。
您可以使用 類別的 DataRow 屬性,並傳入值的陣列,建立新的資料列ItemArray。 這是數據行設定為 AutoIncrementtrue
的潛在問題,因為其值會自動產生。 若要使用 ItemArray 屬性,請將 放在 null
數位中的數據行位置。 如需詳細資訊,請參閱 ItemArray 類別的 DataRow 屬性。
如果資料行的類型為 SqlInt16 或 SqlInt32, AutoIncrement 將無法運作。 請改用 Int16 或 Int32。
如果數據行的類型為 SqlInt64 或 SqlDecimal, AutoIncrement 則只會部分運作。 請改用 Int64 或 Decimal。
AutoIncrementStep將值新增至目前值時,會隱藏溢位檢查。