Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
Export (0) Print
Expand All

DataColumn.DefaultValue Property

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)

'Declaration
Public Property DefaultValue As Object

Property Value

Type: System.Object
A value appropriate to the column's DataType.

ExceptionCondition
InvalidCastException

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 Nothing 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
    table.Columns.Add(column)

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

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

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

    table.Rows.Add(row)
 End Sub

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0, 2.0, 1.1

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

XNA Framework

Supported in: 3.0, 2.0, 1.0
Show:
© 2015 Microsoft