首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

如何把DataTable的数据写入数据库,循环除外

2012-03-26 
怎么把DataTable的数据写入数据库,循环除外RT从数据库表A中读数据,生成并填充到DataTable,然后操作DataTab

怎么把DataTable的数据写入数据库,循环除外
RT
从数据库表A中读数据,生成并填充到DataTable,然后操作DataTable,最后把DataTable的数据写入到数据库表B

//生成MyDataTable
DataTable myDataTable = new DataTable();
SqlDataAdapter myAdapter = new SqlDataAdapter("读表A数据", myconn);
myAdapter.Fill(myDataTable);
//以上修改DataTable数据
myDataTable.Columns.Add("newColumn",typeof(int));
……

//然后要写入表B,除了循环写入,还有什么比较好的方法亚。



表A字段 MyDataTable字段 表B字段
A A A
B B B
C C E
D D  
  E
怎么把MyDataTable的数据写入到表B,除了循环写入,还有什么比较好的方法求教一下。
感觉好像循环写入有点不大对劲,效率有点问题

[解决办法]

C# code
SqlBulkCopy sqlBulkCopy = new SqlBulkCopy(connectionString); sqlBulkCopy.DestinationTableName = "Passport"; sqlBulkCopy.BatchSize = dataTable.Rows.Count; SqlConnection sqlConnection = new SqlConnection(connectionString); sqlConnection.Open(); if (dataTable!=null && dataTable.Rows.Count!=0) { sqlBulkCopy.WriteToServer(dataTable); } sqlBulkCopy.Close(); sqlConnection.Close();
[解决办法]
DataTable数据批量写入数据库三种方法比较
[解决办法]
C# code
SqlBulkCopy sqlbulkcopy = new SqlBulkCopy(connectionString, SqlBulkCopyOptions.UseInternalTransaction);sqlbulkcopy.DestinationTableName = "Table_1";//数据库中的表名sqlbulkcopy.WriteToServer(dataset.Tables[0]); 

热点排行