如何直接将数据从DataTable添加到数据库表?

时间:2012-02-17 10:30:41

标签: c# .net sql-server dataset

如何直接将数据从DataTable添加到数据库表?

我在互联网上搜索过无法从任何网站获取信息。

我有一个DataTable,现在我想将该数据添加到数据库表中。

 importData.Tables[1];
 for(int r = 0; r< totalrecoreds; r++;)
 {
         Array test[] =  importData.Tables[1].Rows[r].ItemArray.ToArray;
 }

我该怎么办?我是否必须使用for循环逐个添加数据,还是有其他方法?

1 个答案:

答案 0 :(得分:3)

如果DataTable的架构与数据库表的架构相同,则只需use a DataAdapter即可插入数据。

using(var connection = new SqlConnection(...))
using(var adapter = new SqlDataAdapter("SELECT * FROM TABLENAME", connection))
using(var builder = new SqlCommandBuilder(adapter))
{
    adapter.UpdateCommand = builder.GetUpdateCommand();
    adapter.InsertCommand = builder.GetInsertCommand();
    adapter.DeleteCommand = builder.GetDeleteCommand();

    adapter.Update(importData.Tables[1]);
}

如果模式不同,则必须向DataAdapter添加映射,如the MSDN DataAdapter example所示。