如何自定义数据表及字段对应关系

有时我们会希望在将数据置入DataSet对象后,数据表的名称或字段的名称与数据源不同,假设我们希望其对应关系如下:

数据源

置入DataSet对象后

pc(数据表名称)

Pricelist(数据表名称)

编号(字段名称)

ID(字段名称)

零部件种类(字段名称)

Category(字段名称)

品牌(字段名称)

Brand(字段名称)

价格(字段名称)

Price(字段名称)

日期(字段名称)

Date(字段名称)

厂商信息(字段名称)

Information(字段名称)

 

数据库里的pc表:

效果图:

代码如下:

using System.Data;

using System.Data.OleDb;

protected void Page_Load(object sender, EventArgs e)

    {

        string connstr = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" + Server.MapPath("DB.mdb");

        OleDbDataAdapter da = new OleDbDataAdapter("select * from pc", connstr);

 

        //创建数据表及字段对应

        da.TableMappings.Add("pc","pricelist");

        da.TableMappings[0].ColumnMappings.Add("编号","Id");

        da.TableMappings[0].ColumnMappings.Add("零部件种类","Category");

        da.TableMappings[0].ColumnMappings.Add("品牌","Brand");

        da.TableMappings[0].ColumnMappings.Add("价格","Price");

        da.TableMappings[0].ColumnMappings.Add("日期","Date");

        da.TableMappings[0].ColumnMappings.Add("厂商信息","Information");

 

        DataSet ds = new DataSet();

        da.Fill(ds, "pc");

        DataTable dt = new DataTable();

        dt=ds.Tables["pricelist"]; 

 

        int i, j;

        Response.Write("<table border='1'><tr align='center'>");

        for (i = 0; i < dt.Columns.Count; i++)

            Response.Write("<td>" + dt.Columns[i].Caption + "</td>");

        Response.Write("</tr>");

 

        for (i = 0; i < dt.Rows.Count; i++)

        {

            Response.Write("<tr>");

            for (j = 0; j < dt.Columns.Count; j++)

                Response.Write("<td>" + dt.Rows[i][j] + "</td>");

            Response.Write("</tr>");

        }

        Response.Write("</table>");

    }

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值