五分钟教你理解ADO.NET数据表

开发 后端
这里就创建ADO.NET数据表、给ADO.NET数据表添加列、表达式列、自动增量列四个方面做出详细的介绍,其实ADO.NET数据表就是指内存数据表。

ADO.NET还是比较常用的,于是我研究了一下ADO.NET数据表,ADO.NET数据表(DataTable)是指内存数据表,在这里拿出来和大家分享一下,希望对大家有用。它包含一个表示该表的模式的列集合(ColumnsCollection)。一个数据表还包含有一个列集合(RowsCollection),表示该表所拥有的数据。它记得最初的的状态以及当前的状态,并跟踪已经发生的各种变化。要使用数据表,用户必须包含System.Data。

创建ADO.NET数据表

  1. DataTable有两个构造函数:  
  2. public DataTable()  
  3. public DataTable(string tableName) 

给ADO.NET数据表添加列

DataTable包含一个DataColumn对象集合。这个列集合定义了该表的结构。要给这个集合添加一个新列,可以使用这个集合的Add方法。在下面的例子中,我们使用ColumnsCollection类的Add方法,给一个数据表添加了3列;这种方法指定了ColumnName和DataType属性。

  1. DataColumn dc = null;  
  2. DataTable dt = new DataTable("test");  
  3. dc = dt.Columns.Add("CustID",System.Type.GetType("System.Int32") );          
  4. dc = dt.Columns.Add("CustomerNameLast", System.Type.GetType("System.String") );  
  5. dc = dt.Columns.Add("CustomerNameFirst", System.Type.GetType("System.String") );  
  6. dc = dt.Columns.Add("Purchases", System.Type.GetType("System.Double") ); 

DataTable上的ColumnsCollection的Add方法有两个重载(overload)函数:

  1. Public DataColumn Add(String columnname, Type type)  
  2. Public DataColumn Add(String columnname) 

表达式列

ADO.NET还允许用户创建和定义表达式列。ADO+中的表达式用于进行:过滤, 计算, 汇总列信息。要创建一个表达式列,需要将DataType属性设置为适合该表达式返回数值的类型;然后将Expression属性设为一个有效的表达式:

  1. DataColumn dc = New DataColumn;  
  2. dc.DataType = System.Type.GetType("System.Currency");  
  3. dc.Expression = "total * .086"

你还可以使用Add方法来创建一个表达式列。例如,下面的代码添加了一列,根据客户购买金额的10%计算折扣。这个表达式将名为“Purchases”的列乘以10%。

  1. DataColumn dc = New DataColumn;  
  2. dcdt.Columns.Add("rectg", System.Type.GetType("System.Double"), "total * 0.1"); 

当这个表加入数据后,这个列的数值将是total列中数值的10%

自动增量列

#T#DataColumn 的另一个特性是其能够作为自动增量列的能力。自动增量列在添加新列时,自动增加该列中的数值。要创建一个自动增量列,需要将这个列的 AutoIncrement属性设为真(true)。一旦设置了这个属性,该列开始时将使用该列的AutoIncrementSeed属性中定义的数值。在添加了一列后,自动增量列的数值将按该列的AutoIncrementStep属性中的数值作为步长递增。

  1. dc = dt.Columns.Add("CustID",System.Type.GetType("System.Int32") );  
  2. dc.AutoIncrement = true;  
  3. dc.AutoIncrementSeed = 1;  
  4. dc.AutoIncrementStep = 1
责任编辑:田树 来源: 博客
相关推荐

2009-11-11 13:46:41

ADO.NET异步查询

2009-10-29 11:39:52

ADO.NET连接池

2009-11-12 09:16:15

ADO.NET数据库连

2009-11-11 16:08:21

ADO.NET数据服务

2009-06-02 10:57:22

ADO.NET多数据表操作

2009-11-13 09:30:28

2009-11-13 14:46:21

ADO.NET Dat

2009-06-18 09:56:44

ADO.NET对象模型

2009-11-04 17:18:34

ADO.NET连接池

2009-11-13 14:29:13

ADO.NET Mer

2009-11-04 13:08:29

ADO.NET Dat

2011-08-08 09:22:10

Python

2009-11-04 09:43:45

ADO.NET Dat

2009-10-22 16:18:19

Oracle表空间

2023-07-26 07:11:50

LVM底层抽象

2009-12-28 15:11:36

ADO.NET专家

2009-12-22 14:15:08

ADO.Net处理数据

2009-11-11 15:09:35

ADO.NET数据集

2009-12-21 17:02:19

ADO.NET Sql

2009-11-12 10:06:01

ADO.NET读取数据
点赞
收藏

51CTO技术栈公众号