新客网WWW.XKER.COM:致力做中国最专业的网络学院!
学院: 操作系统 - 网络应用 - 服务器 - 网络安全 - 工具软件 - 办公软件 - Web开发 - 数据库 - 网页设计 - 图形图像 - 媒体动画 - 硬件学堂 - 存储频道 - QQ专区
您的位置:首页 > 软件开发 > .Net开发 > Asp.net教程 > 正文:ADO.NET对象的构造(3)_DataTable(续)

ADO.NET对象的构造(3)_DataTable(续)

新客网 XKER.COM 2004-05-17 来源: 收藏本文
n Overloads Public Overridable Function Add() As DataTable

n Overloads Public Overridable Sub Add(ByVal table As DataTable)

n Overloads Public Overridable Function Add(ByVal name As String) As DataTable

n Public Sub AddRange(ByVal tables() As DataTable)

参数

1. table 要添加的 DataTable 对象。

2. name 要赋予已创建的 DataTable 的名称。

3. tables 要添加到集合中的 DataTable 对象的数组。



DataTableCollection 包含特定 DataSet 的所有 DataTable 对象。若要访问 DataSet 的 DataTableCollection,请使用 Tables 属性。

DataTableCollection 使用诸如 Add、Clear 和 Remove 之类的方法管理集合中的项目。

使用 Contains 方法确定集合中是否有特定表(由索引或名称指定)。

若要从一个表浏览到另一个表,请使用 DataTable 的 ChildRelations 或 ParentRelations 属性来访问它的 DataRelation 对象的集合。还可使用 Relations 属性浏览给定的 DataSet 集合中 DataTables 的父/子关系。



示例

Private Sub AddTable()

Dim dSet As DataSet= CType(DataGrid1.DataSource, DataSet)

Dim dt As DataTable



dt = dSet.Tables.Add("myNewTable")

MessageBox.Show(dt.TableName)

MessageBox.Show(dSet.Tables.Count.ToString() & " tables")



Dim i As Integer

For i = 0 to 2

dSet.Tables.Add()

Next i

MessageBox.Show(dSet.Tables.Count.ToString() & " tables")



Dim tables As DataTableCollection = CType(DataGrid1.DataSource, DataSet).Tables

tables.Add(New DataTable)

MessageBox.Show(dSet.Tables.Count.ToString() & " tables")



Dim t As DataTable

Dim r As DataRow

Dim c As DataColumn

For Each t In dSet.Tables

Console.WriteLine(t.TableName)

For Each r In t.Rows

For Each c in t.Columns

If Not (r(c) Is Nothing) Then

Console.WriteLine(r(c))

End If

Next

Next

Next



Dim t1 As DataTable = New DataTable("Customers" )

t1.Columns.Add("customerId", Type.GetType("System.Int32")).AutoIncrement = True

t1.Columns.Add("name", Type.GetType("System.String"))

t1.PrimaryKey = New DataColumn() { t1.Columns("customerId") }



Dim t2 As DataTable = New DataTable("Orders" )

t2.Columns.Add("orderId", Type.GetType("System.Int32")).AutoIncrement = True

t2.Columns.Add("customerId", Type.GetType("System.Int32"))

t2.Columns.Add("amount", Type.GetType("System.Double"))

t2.PrimaryKey = New DataColumn() { t2.Columns("orderId") }



dSet.Tables.AddRange( New DataTable() {t1, t2} )



For Each t In dSet.Tables

Console.WriteLine(t.TableName )

For Each c In t.Columns

Console.Write("{0}" & vbTab, c.ColumnName)

Next

Console.WriteLine()

Next

MessageBox.Show(dSet.Tables.Count.ToString() & " tables")

End Sub
收藏】 【评论】 【推荐】 【投稿】 【打印】 【关闭
发表评论
要记得去论坛讨论,点击注册新会员匿名评论
评论内容:不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
阅读排行
随机推荐
实用信息推荐