Represents the schema of a column in a DataTable.
Assembly: System.Data (in System.Data.dll)
Thetype exposes the following members.
|DataColumn||Initializes a new instance of a class as type string.|
|DataColumn(String)||Inititalizes a new instance of the class, as type string, using the specified column name.|
|DataColumn(String, Type)||Inititalizes a new instance of the class using the specified column name and data type.|
|DataColumn(String, Type, String)||Initializes a new instance of the class using the specified name, data type, and expression.|
|DataColumn(String, Type, String, MappingType)||Initializes a new instance of the class using the specified name, data type, expression, and value that determines whether the column is an attribute.|
|AllowDBNull||Gets or sets a value that indicates whether null values are allowed in this column for rows that belong to the table.|
|AutoIncrement||Gets or sets a value that indicates whether the column automatically increments the value of the column for new rows added to the table.|
|AutoIncrementSeed||Gets or sets the starting value for a column that has its AutoIncrement property set to true.|
|AutoIncrementStep||Gets or sets the increment used by a column with its AutoIncrement property set to true.|
|Caption||Gets or sets the caption for the column.|
|ColumnMapping||Gets or sets the MappingType of the column.|
|ColumnName||Gets or sets the name of the column in the DataColumnCollection.|
|Container||Gets the container for the component. (Inherited from MarshalByValueComponent.)|
|DataType||Gets or sets the type of data stored in the column.|
|DateTimeMode||Gets or sets the DateTimeMode for the column.|
|DefaultValue||Gets or sets the default value for the column when you are creating new rows.|
|DesignMode||Gets a value indicating whether the component is currently in design mode. (Inherited from MarshalByValueComponent.)|
|Events||Gets the list of event handlers that are attached to this component. (Inherited from MarshalByValueComponent.)|
|Expression||Gets or sets the expression used to filter rows, calculate the values in a column, or create an aggregate column.|
|ExtendedProperties||Gets the collection of custom user information associated with a .|
|MaxLength||Gets or sets the maximum length of a text column.|
|Namespace||Gets or sets the namespace of the .|
|Ordinal||Gets the position of the column in the DataColumnCollection collection.|
|Prefix||Gets or sets an XML prefix that aliases the namespace of the DataTable.|
|ReadOnly||Gets or sets a value that indicates whether the column allows for changes as soon as a row has been added to the table.|
|Site||Gets or sets the site of the component. (Inherited from MarshalByValueComponent.)|
|Table||Gets the DataTable to which the column belongs to.|
|Unique||Gets or sets a value that indicates whether the values in each row of the column must be unique.|
|CheckNotAllowNull||Infrastructure. This member supports the .NET Framework infrastructure and is not intended to be used directly from your code.|
|CheckUnique||Infrastructure. This member supports the .NET Framework infrastructure and is not intended to be used directly from your code.|
|Dispose||Releases all resources used by the MarshalByValueComponent. (Inherited from MarshalByValueComponent.)|
|Dispose(Boolean)||Releases the unmanaged resources used by the MarshalByValueComponent and optionally releases the managed resources. (Inherited from MarshalByValueComponent.)|
|Equals(Object)||Determines whether the specified Object is equal to the current Object. (Inherited from Object.)|
|Finalize||Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from MarshalByValueComponent.)|
|GetHashCode||Serves as a hash function for a particular type. (Inherited from Object.)|
|GetService||Gets the implementer of the IServiceProvider. (Inherited from MarshalByValueComponent.)|
|GetType||Gets the Type of the current instance. (Inherited from Object.)|
|MemberwiseClone||Creates a shallow copy of the current Object. (Inherited from Object.)|
|OnPropertyChanging||This member supports the .NET Framework infrastructure and is not intended to be used directly from your code.|
|RaisePropertyChanging||This member supports the .NET Framework infrastructure and is not intended to be used directly from your code.|
|SetOrdinal||Changes the ordinal or position of the to the specified ordinal or position.|
|ToString||Gets the Expression of the column, if one exists. (Overrides MarshalByValueComponent.ToString.)|
The is the fundamental building block for creating the schema of a DataTable. You build the schema by adding one or more objects to the DataColumnCollection. For more information, see Adding Columns to a DataTable (ADO.NET).
Each has a DataType property that determines the kind of data the contains. For example, you can restrict the data type to integers, or strings, or decimals. Because data that is contained by the DataTable is typically merged back into its original data source, you must match the data types to those in the data source. For more information, see Data Type Mappings in ADO.NET.
Properties such as AllowDBNull, Unique, and ReadOnly put restrictions on the entry and updating of data, thereby helping to guarantee data integrity. You can also use the AutoIncrement, AutoIncrementSeed, and AutoIncrementStep properties to control automatic data generation. For more information about AutoIncrement columns, see Creating AutoIncrement Columns (ADO.NET). For more information, see Defining Primary Keys (ADO.NET).
You can also make sure that values in a are unique by creating a UniqueConstraint and adding it to the ConstraintCollection of the DataTable to which the belongs. For more information, see DataTable Constraints (ADO.NET).
The following example creates a DataTable with several objects.
Private Sub MakeTable() ' Create a DataTable. Dim table As DataTable = new DataTable("Product") ' Create a DataColumn and set various properties. Dim column As DataColumn = New DataColumn column.DataType = System.Type.GetType("System.Decimal") column.AllowDBNull = False column.Caption = "Price" column.ColumnName = "Price" column.DefaultValue = 25 ' Add the column to the table. table.Columns.Add(column) ' Add 10 rows and set values. Dim row As DataRow Dim i As Integer For i = 0 to 9 row = table.NewRow() row("Price") = i + 1 ' Be sure to add the new row to ' the DataRowCollection. table.Rows.Add(row) Next i End Sub
Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.