手牵手我们一起走:C# DATASET如何实现两表合并
来源:百度文库 编辑:高考问答 时间:2024/09/03 17:51:26
请问C# DATASET如何实现两表合并,这两个表是等价的。比如
表1 ID NAME
1 张三
表2 ID USER
1 李四
用dataGrid表示出来
表:ID NAME USER
1 张三 李四
请别谈用SQL语句合并..情况特殊.请详细指点。感谢
可能是我没说清楚..从DB2里取的数据(DB2是企业数据库,不能动),取的数据有张三、李四的销量,也有他们的客户数量,分别从不同表取,取时已多表关联,还要从本地数据库取计划数量、等信息。我想结合到一个表一起显示。
我查到一些信息:能否帮解释一下
DataSet ds = new DataSet();
ds.Merge(olderDs.Tables[0]);
DataTable dt = olderDs.Tables[1].Copy();
dt.TableName = ds.Tables[0].TableName;
ds.Merge(dt);
表1 ID NAME
1 张三
表2 ID USER
1 李四
用dataGrid表示出来
表:ID NAME USER
1 张三 李四
请别谈用SQL语句合并..情况特殊.请详细指点。感谢
可能是我没说清楚..从DB2里取的数据(DB2是企业数据库,不能动),取的数据有张三、李四的销量,也有他们的客户数量,分别从不同表取,取时已多表关联,还要从本地数据库取计划数量、等信息。我想结合到一个表一起显示。
我查到一些信息:能否帮解释一下
DataSet ds = new DataSet();
ds.Merge(olderDs.Tables[0]);
DataTable dt = olderDs.Tables[1].Copy();
dt.TableName = ds.Tables[0].TableName;
ds.Merge(dt);
private void Form1_Load(object sender, System.EventArgs e)
{
SqlConnection con = new SqlConnection("server = Kittey_1999;DataBase = Test;user id = sa;password = sa");
SqlDataAdapter da = new SqlDataAdapter("select Table1.id,Table1.[name],Table2.[User] from Table1 join Table2 on Table1.id = Table2.id",con);
DataTable dt = new DataTable();
da.Fill(dt);
this.dataGrid1.DataSource = dt;
}
也可以在数据库里用视图表示出来,这样还简单一点。另外,写程序要分层次,最好将数据库操作的代码写到数据层里去。
给一个表里新建一行
比如要往第一个表里加一行
datarow dr=ds.table[0].newrow()
然后给这一行赋值哈
dr[0]=..
dr[1]=..
然后添加这一行
ds.table[0].rows.add(dr)
就行了
没区分大小写 你可以自己试一下