DataColumn.DefaultValue Property


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.

Gets or sets the default value for the column when you are creating new rows.

Namespace:   System.Data
Assembly:  System.Data (in System.Data.dll)

public object DefaultValue { get; set; }

Property Value

Type: System.Object

A value appropriate to the column's DataType.

Exception Condition

When you are adding a row, the default value is not an instance of the column's data type.

A default value is the value that is automatically assigned to the column when a DataRow is created (for example, the date and time when the DataRow was created.

When AutoIncrement is set to true, there can be no default value.

You can create a new row using the ItemArray property of the DataRow class and passing the method an array of values. This is a potential problem for a column with a default value because its value is generated automatically. To use the ItemArray property with such a column, place null in the column's position in the array. For more information, see the ItemArray property.

The following example creates several DataColumn objects that have different data types, and sets appropriate default values to each column.

Private Sub CreateColumns()
    Dim column As DataColumn
    Dim table As New DataTable

    column = New DataColumn
    With column
       .DataType = System.Type.GetType("System.String")
       .DefaultValue = "Address"
       .Unique = False
    End With

    column = New DataColumn
    With column
       .DataType = System.Type.GetType("System.Int32")
       .DefaultValue = 100
    End With

    column = New DataColumn
    With column
       .DataType = System.Type.GetType("System.DateTime")
       .DefaultValue = "1/1/2001"
    End With

    Dim row As DataRow
    ' Add one row. Since it has default values, 
    ' no need to set values yet.
    row = table.NewRow

 End Sub

.NET Framework
Available since 1.1
Return to top