ADO.NET之二:断开连接层之启用自增列

来源:互联网 发布:led显示屏软件下载 编辑:程序博客网 时间:2024/05/18 02:15

可能会配置的DataColumn的另一个方面就是自增带的能力。简单地说,自增列是为了保证为表添加了新行后,该列自动被分配值,该值基于当前的自增步进。当需要确保该列的值是不重复的时候非常有用(比如说主键)。

这个功能使用AutoColumnAutoIncrementSeedAutoIncrementStep属性来实现。第二个属性指定列的起始值,第三个参数指定每次增加的步进值。看下面对carIDColumnDataColumn改进:

Static void FillDataSet(DataSet ds)

{

   DataColumn carIDColumn = new DataColumn(“CarID”,typeof(int));

   carIDColumn .ReadOnly = true;

   carIDColumn .Caption= ”Car ID”;

   carIDColumn.AllowDBNull = false;

   carIDColumn.Unique = ture;

   carIDColumn.AutoIncrement = true;

   carIDColumn.AutoIncrementSeed = 0

   carIDColumn.AutoIncrement = 1

...

}

在这里,我们配置了carIDColumn对象来保证当表新增了一行后,列值自增1。因为我们设置了起始值为0,所以列值回事0123等。

ADO.NET之二:断开连接层之DataColumn对象加入DataTable

DataColumn类型显然不能单独存在,需要加入到一个相关的DatTable中去。为了演示,我们创建一个新的DataTable对象(稍后会详细介绍),然后使用Column属性加入列集合中的所有DataColumn对象:

DataColumn对象:

Static void FillDataSet(DataSet ds);

{

...

//DataColumn加入到DataTable

DataTable inventoryTable = new DataColumn[]

{carIDColumn,carMarkeColumn,carColorColumn,carPetNameColumn});

}

至此,DataColumn对象的集合用来表示内存中Inventory表的架构。然而,表当前并没有数据,并且也不在DataSet维护的表集合中。我们稍后会处理这些不足,首先让我们通过DataRow对象来填充表。

原创粉丝点击