详解DataTable用法
DataTable表示一个与内存有关的数据表,可以使用工具栏里面的控件拖放来创建和使用,也可以在编写程序过程中根据需要独立创建和使用,最常见的情况是作为DataSet的成员使用,在这种情况下就需要用在编程过程中根据需要动态创建数据表。
1 代码创建DataTable数据表
通过添加对象的方式直接在DataSet中创建数据表,可以通过使用Add方法将DataTable添加到DataSet中,这种是使用控件的可视化添加DataTable的操作,那么在代码中怎么来创建DataTable数据表呢?
在程序中创建DataTable对象可以使用相应的DataTable构造函数。创建一个表名为TableName的数据表,实现代码如下所示:
DataTable NewTable = new DataTable(TableName);
另外也可以通过以下方法创建DataTable对象:使用DataAdapter对象的Fill方法或FillSchema方法在DataSet中创建,这种方式都用于与数据库相连接操作的情况下。实现代码如下所示:
//数据库联接字符串
string connectionString =
"Data Source=local;Initial Catalog=Northwind;Integrated Security=True;UserID=sa;Password=";
//sql语句查询
string commandString = "Select * from Customers";
// 创建SqlDataAdapter对象,并执行sql命令
SqlDataAdapter dataAdapter = new SqlDataAdapter(commandString, connectionString);
//创建数据集dataSet
tabletotal函数DataSet dataSet = new DataSet();
//把数据表添加到数据集中
DataTable dataTable = dataSet.Tables("Customers");
//将数据填充到数据集中
dataAdapter.Fill(dataSet,"Customers");
注意:将一个DataTable作为成员添加到一个DataSet的Tables集合中后,不能再将其添加到任何其他DataSet的表集合中。
使用DataTable构造函数初次创建DataTable时,是没有架构(即结构,没有列)的。没有架构的DataTable数据表示没有办法使用的,因此要在使用这种DataTable数据表之前要定义表的架构,必须创建DataColumn对象并将其添加到表的Columns集合中。如何使用代码创建Columns列,将在本章后面几节中讲到。
创建DataTable时,不需要为TableName属性提供值,可以在其他时间指定该属性,或者将其保留为空,这些都不影响DataTable的使用。应该注意的是在将一个没有TableName值的表添加到DataSet中时,该表会得到一个从“Table”(表示Table0)开始递增的默认名称TableN。
以下示例创建DataTable对象的实例,并为其指定名称“Customers”。 实现代码如下所示:
DataTable workTable = new DataTable("Customers");
以下代码是将创建的DataTable实例Customers表添加到DataSet的Tables集合中。实现代码如下所示:
DataSet customers = new DataSet();
DataTable customersTable = customers.Tables.Add("CustomersTable");
或者
DataSet customers = new DataSet();
DataTable customersTable = new DataTable(“Customers”)
customers.Tables.Add(Customers);
2 用编程方式添加DataTable列
前面已经学过使用代码创建DataTable,但是使用DataTable构造函数初次创建 DataTable时,是没有架构(即结构,没有列)的。要定义表的架构,必须创建DataColumn 对象并将其添加到表的Columns集合中。也可以为表定义主键列,并且可以创建Constraint约束对象并将其添加到表的Constraints约束集合中。
DataColumn类型表示了DataTable上的一列。总的来说,绑定到某个DataTable的所有DataColumn类型的集合就表示一个表。
DataTable包含了由表的Columns属性引用的DataColumn对象的集合。这个列的集合与任何约束一起定义表的架构(即结构)。
通过使用DataColumn构造函数,或者通过调用表的Columns属性的Add方法,可在表内创建DataColumn对象。Add方法将接受可选的ColumnName、DataType参数,并将创建新的DataColumn作为集合的成员。它还会接受现有的DataColumn对象并会将其添加到集合中,并会根据请求返回对所添加的DataColumn的引用。
以下示例向DataTable中添加了四列。实现代码如下所示:
DataTable workTable = new DataTable("Customers");
DataColumn workCol = workTable.Columns.Add("CustID");
workTable.Columns.Add("CustLName");
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论