不是简单的合并,比如table1的字段为:
UserId Password Table2的字段为:
UserId Tel如何将这两个表合并成这样一张表:
UserId Password Tel由于这两张表一个是通过WebService取来的一个是访问本地数据库的,所以合并只能在C#中完成。
UserId Password Table2的字段为:
UserId Tel如何将这两个表合并成这样一张表:
UserId Password Tel由于这两张表一个是通过WebService取来的一个是访问本地数据库的,所以合并只能在C#中完成。
解决方案 »
- 为什么在虚拟主机上不能插入内容过多的新闻
- 如何为用户角色权限表创建存储过程(菜鸟求助大虾)
- 想自定义一个类似于DropDownList的控件,目的是使用它的时候能预先加入一些item
- 关于Cookies的问题,很严重!急
- 这两种代码的写法,哪种好点,谁能说说呀!
- 如何获得远程网页的http标头 ContentType 的值?
- 求用ASP.netWEB页面实现套打的实现思路
- 内容页如何获取母板页treeview 的节点
- 为什么我的datagrid分页后显示的总是第一页的数据?
- 初学,请问一般通用的数据库查询是怎么实现的??
- 请问:如果频繁的操作一个指定的缓存,是否也会像数据库那样出现并发操作的错误?
- 救命,,我一个项目一打开电脑就自动重启,,这可怎么办呀??
DataTable t2 = new DataTable();
// t1 , t2 获取数据...
t2.Columns.Add("Password");
for(int i = 0 ; i < t1.Rows.Count ; i ++)
{
t2.Rows[i]["Password"] = t1.Rows[i]["Password "];
}
这样试试
string cnStr = @"Data Source=.;Initial Catalog=northwind;Integrated Security=True"; using (SqlConnection cn = new SqlConnection(cnStr))
{
cn.Open();
SqlCommand cmd = new SqlCommand(sqlAllCustomers, cn);
SqlDataAdapter adpt = new SqlDataAdapter(cmd);
DataTable dtCust1 = new DataTable("Customers");
adpt.Fill(dtCust1);
dtCust1.PrimaryKey = new DataColumn[]{dtCust1.Columns["CustomerID"]};
DataTable dtCust2 = dtCust1.Clone();
DataRow row1 = dtCust2.NewRow();
row1["CustomerID"] = "ALFKI";
row1["CompanyName"] = "Some Company";
dtCust2.Rows.Add(row1); DataRow row2 = dtCust2.NewRow();
row2["CustomerID"] = "FOO";
row2["CompanyName"] = "Some Other Company";
dtCust2.Rows.Add(row2); DataSet ds = new DataSet("MySillyDataSet");
ds.Tables.Add(dtCust1);
ds.Merge(dtCust2); dgTest.DataSource = dtCust1;
}.net2.0方法
在ADO.NET 2.0中,对DataTable作了改进,同样提供了Merge方法。因此如上的代码中,如果要合并表dtCust1和dtCust2,就不必再引入DataSet对象了:
dtCust1.Merge(dtCust2);
http://msdn2.microsoft.com/zh-cn/library/system.data.datatable.merge.aspx
Dim table1 As New DataTable("Items") ' Add columns
Dim column1 As New DataColumn("id", GetType(System.Int32))
Dim column2 As New DataColumn("item", GetType(System.Int32))
table1.Columns.Add(column1)
table1.Columns.Add(column2) ' Set the primary key column.
table1.PrimaryKey = New DataColumn() {column1} ' Add RowChanged event handler for the table.
AddHandler table1.RowChanged, AddressOf Row_Changed ' Add some rows.
Dim row As DataRow
For i As Integer = 0 To 3
row = table1.NewRow()
row("id") = i
row("item") = i
table1.Rows.Add(row)
Next i ' Accept changes.
table1.AcceptChanges()
PrintValues(table1, "Original values") ' Create a second DataTable identical to the first.
Dim table2 As DataTable = table1.Clone() ' Add three rows. Note that the id column can't be the
' same as existing rows in the original table.
row = table2.NewRow()
row("id") = 14
row("item") = 774
table2.Rows.Add(row) row = table2.NewRow()
row("id") = 12
row("item") = 555
table2.Rows.Add(row) row = table2.NewRow()
row("id") = 13
row("item") = 665
table2.Rows.Add(row) ' Merge table2 into the table1.
Console.WriteLine("Merging")
table1.Merge(table2)
PrintValues(table1, "Merged With table1")End SubPrivate Sub Row_Changed(ByVal sender As Object, _
ByVal e As DataRowChangeEventArgs)
Console.WriteLine("Row changed {0}{1}{2}", _
e.Action, ControlChars.Tab, e.Row.ItemArray(0))
End SubPrivate Sub PrintValues(ByVal table As DataTable, _
ByVal label As String)
' Display the values in the supplied DataTable:
Console.WriteLine(label)
For Each row As DataRow In table.Rows
For Each col As DataColumn In table.Columns
Console.Write(ControlChars.Tab + " " + row(col).ToString())
Next col
Console.WriteLine()
Next row
End SubC# 复制代码private static void DemonstrateMergeTable()
{
DataTable table1 = new DataTable("Items"); // Add columns
DataColumn column1 = new DataColumn("id", typeof(System.Int32));
DataColumn column2 = new DataColumn("item", typeof(System.Int32));
table1.Columns.Add(column1);
table1.Columns.Add(column2); // Set the primary key column.
table1.PrimaryKey = new DataColumn[] { column1 }; // Add RowChanged event handler for the table.
table1.RowChanged +=
new System.Data.DataRowChangeEventHandler(Row_Changed); // Add some rows.
DataRow row;
for (int i = 0; i <= 3; i++)
{
row = table1.NewRow();
row["id"] = i;
row["item"] = i;
table1.Rows.Add(row);
} // Accept changes.
table1.AcceptChanges();
PrintValues(table1, "Original values"); // Create a second DataTable identical to the first.
DataTable table2 = table1.Clone(); // Add three rows. Note that the id column can't be the
// same as existing rows in the original table.
row = table2.NewRow();
row["id"] = 14;
row["item"] = 774;
table2.Rows.Add(row); row = table2.NewRow();
row["id"] = 12;
row["item"] = 555;
table2.Rows.Add(row); row = table2.NewRow();
row["id"] = 13;
row["item"] = 665;
table2.Rows.Add(row); // Merge table2 into the table1.
Console.WriteLine("Merging");
table1.Merge(table2);
PrintValues(table1, "Merged With table1");}private static void Row_Changed(object sender,
DataRowChangeEventArgs e)
{
Console.WriteLine("Row changed {0}\t{1}",
e.Action, e.Row.ItemArray[0]);
}private static void PrintValues(DataTable table, string label)
{
// Display the values in the supplied DataTable:
Console.WriteLine(label);
foreach (DataRow row in table.Rows)
{
foreach (DataColumn col in table.Columns)
{
Console.Write("\t " + row[col].ToString());
}
Console.WriteLine();
}
}
UserId Password Tel1
Tel2
Tel3
哪种是你需要的?