在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 教程/ C#/ ADO.Net DataTable類
ADO.Net教程
ADO.Net簡(jiǎn)介
ADO.Net Web表單實(shí)例
ADO.Net SqlConnection類
ADO.Net DataAdapter類
ADO.Net DataTable類
ADO.Net連接SQL Server
ADO.Net數(shù)據(jù)提供程序
ADO.Net SqlCommand類
ADO.Net DataSet類
ADO.Net SqlDataReader類

ADO.Net DataTable類

DataTable類將關(guān)系數(shù)據(jù)表示為表格形式。ADO.NET提供了一個(gè)DataTable類來(lái)獨(dú)立創(chuàng)建和使用數(shù)據(jù)表。它也可以和DataSet一起使用。 最初,當(dāng)創(chuàng)建DataTable時(shí),它沒有表模式。我們可以通過(guò)向表中添加列和約束來(lái)創(chuàng)建表模式。在定義表模式之后,可以向表中添加行。

在創(chuàng)建DataTable之前,必須包含System.Data名稱空間。

DataTable的簽名

public class DataTable : System.ComponentModel.MarshalByValueComponent, System.ComponentModel.IListSource,  
System.ComponentModel.ISupportInitializeNotification, System.Runtime.Serialization.ISerializable,  
System.Xml.Serialization.IXmlSerializable

DataTable構(gòu)造函數(shù)

下表列出了DataTable類的構(gòu)造函數(shù)。

編號(hào) 構(gòu)造函數(shù) 描述
1 DataTable() 它用于初始化沒有參數(shù)的DataTable類的新實(shí)例。
2 DataTable(String) 它用于使用指定的表名初始化DataTable類的新實(shí)例。
3 DataTable(SerializationInfo, StreamingContext) 它用于使用SerializationInfoStreamingContext初始化DataTable類的新實(shí)例。
4 DataTable(String, String) 它用于使用指定的表名和名稱空間初始化DataTable類的新實(shí)例。

DataTable屬性

下表列出了DataTable類的屬性。

編號(hào) 屬性 描述
1 Columns 它用于獲取屬于此表的列的集合。
2 Constraints 它被用來(lái)獲取由這個(gè)表維護(hù)的約束的集合。
3 DataSet 它用于獲取此表所屬的DataSet
4 DefaultView 它用于獲取可能包含過(guò)濾視圖的表的自定義視圖。
5 HasErrors 它用于獲取指示DataSet表中的任何行中是否存在錯(cuò)誤的值。
6 MinimumCapacity 它用于獲取或設(shè)置此表的初始起始大小。
7 PrimaryKey 它用于獲取或設(shè)置一個(gè)用作數(shù)據(jù)表主鍵的列數(shù)組。
8 Rows 它用于獲取屬于此表的行的集合。
9 TableName 它用于獲取或設(shè)置DataTable的名稱。

DataTable方法

下表列出了DataTable類的方法。

編號(hào) 屬性 描述
1 AcceptChanges() 它用于提交對(duì)此表進(jìn)行的所有更改。
2 Clear() 它用來(lái)清除所有數(shù)據(jù)的DataTable。
3 Clone() 它被用來(lái)克隆DataTable的結(jié)構(gòu)。
4 Copy() 它用于復(fù)制DataTable的結(jié)構(gòu)和數(shù)據(jù)。
5 CreateDataReader() 它用于返回與此DataTable中的數(shù)據(jù)相對(duì)應(yīng)的DataTableReader。
6 CreateInstance() 它用于創(chuàng)建DataTable的新實(shí)例。
7 GetRowType() 它用于獲取行類型。
8 GetSchema() 它用來(lái)獲取表的模式。
9 ImportRow(DataRow) 它用于將DataRow復(fù)制到DataTable中。
10 Load(IDataReader) 它用于使用提供的IDataReader從數(shù)據(jù)源填充DataTable。
11 Merge(DataTable, Boolean) 它用于合并指定的DataTable和當(dāng)前的DataTable。
12 NewRow() 它用于創(chuàng)建一個(gè)與表具有相同模式的新DataRow。
13 Select() 它用于獲取所有DataRow對(duì)象的數(shù)組。
14 WriteXml(String) 用于使用指定的文件將DataTable的當(dāng)前內(nèi)容寫為XML。

數(shù)據(jù)表示例

在下面的例子中,我們創(chuàng)建一個(gè)將數(shù)據(jù)填充到瀏覽器的數(shù)據(jù)表。首先創(chuàng)建一個(gè)Web項(xiàng)目:AdoNetDataTable,打開Visual Studio創(chuàng)建一個(gè)ASP.NET空網(wǎng)站項(xiàng)目,如下所示 -

向這個(gè)項(xiàng)目中添加一個(gè)新建項(xiàng),在項(xiàng)目名稱上點(diǎn)擊右鍵,在彈出的菜單中選擇:添加 ->添加新項(xiàng),文件的名稱為:Default.html,如下圖所示 -

本示例包含以下文件,Default.html -

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.html.cs" Inherits="_Default" %>
<!DOCTYPE html>  
<html xmlns="http://www.w3.org/1999/xhtml">  
<head runat="server">  
    <title>DataTable示例</title>  
</head>  
<body>  
    <form id="form1" runat="server">  
        <div>  
        </div>  
        <asp:GridView ID="GridView1" runat="server">  
        </asp:GridView>  
    </form>  
</body>  
</html>

文件:Default.html.cs -

using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class _Default : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        DataTable table = new DataTable();
        table.Columns.Add("編號(hào)");
        table.Columns.Add("姓名");
        table.Columns.Add("電子郵箱");
        table.Rows.Add("101", "Javaer", "javaer@yiibai.com");
        table.Rows.Add("102", "Sam James", "sam.php@yiibai.com");
        table.Rows.Add("103", "Subram Ruby", "ruby@yiibai.com");
        table.Rows.Add("104", "Ankur Python", "ankur.python@yiibai.com");
        GridView1.DataSource = table;
        GridView1.DataBind();
    }
}

執(zhí)行上面項(xiàng)目,點(diǎn)擊菜單:調(diào)試 -> 開始執(zhí)行(不調(diào)試) ,Visual Studio自動(dòng)打開瀏覽器,看到結(jié)果如下所示 -