[翻译]使用asp.net 2.0中的SqlBulkCopy类批量复制数据
2007-04-09 08:47
597 查看
原文地址:http://gridviewguy.com/ArticleDetails.aspx?articleID=233
[原文源码下载]
[align=center][翻译]使用asp.net 2.0中的SqlBulkCopy类批量复制数据[/align]
原文发布日期:2007.03.01
作者:AzamSharp
翻译:webabcd
介绍:
在软件开发中,把数据从一个地方复制到另一个地方是一个普遍的应用。 在很多不同的场合都会执行这个操作,包括旧系统到新系统的移植,从不同的数据库备份数据和收集数据。 ASP.NET 2.0有一个SqlBulkCopy类,它可以帮助你从不同的数据源复制数据到SQL SERVER数据库。 本文中我将示范SqlBulkCopy类的不同应用。
数据库设计:
这个数据库的设计还是蛮简单的,它基于Northwind数据库的Products表。另外我还在Northwind数据库中创建了3个表。 详情可以看一下下面的数据库关系图。
private static void PerformBulkCopy()
private static void PerformBulkCopyDifferentSchema()
<?xml version="1.0" encoding="utf-8" ?>
<Products>
<Product productID="1" productName="Chai" />
<Product productID="2" productName="Football" />
<Product productID="3" productName="Soap" />
<Product productID="4" productName="Green Tea" />
</Products>
private static void PerformBulkCopyXMLDataSource()
{
string connectionString = @"Server=localhost;Database=Northwind;Trusted_Connection=true";
DataSet ds = new DataSet();
DataTable sourceData = new DataTable();
ds.ReadXml(@"C:\Products.xml");
sourceData = ds.Tables[0];
// 目的
using (SqlConnection destinationConnection = new SqlConnection(connectionString))
{
// 打开连接
destinationConnection.Open();
using (SqlBulkCopy bulkCopy = new SqlBulkCopy(destinationConnection.ConnectionString))
{
// 列映射
bulkCopy.ColumnMappings.Add("productID", "ProductID");
bulkCopy.ColumnMappings.Add("productName", "Name");
bulkCopy.DestinationTableName = "Products_TopSelling";
bulkCopy.WriteToServer(sourceData);
}
}
}
首先把XML文件读进DataTable,然后再使用SqlBulkCopy类的WriteToServer方法。 因为目的表示是Products_TopSelling,所以我们必须执行列映射。
结论
本文中我示范了如何使用.NET 2.0引入的SqlBulkCopy类。 SqlBulkCopy类可以非常简单的把数据从一个数据源复制到SQL SERVER数据库。
我希望你会喜欢本文,祝编程愉快!
[原文源码下载]
[align=center][翻译]使用asp.net 2.0中的SqlBulkCopy类批量复制数据[/align]
原文发布日期:2007.03.01
作者:AzamSharp
翻译:webabcd
介绍:
在软件开发中,把数据从一个地方复制到另一个地方是一个普遍的应用。 在很多不同的场合都会执行这个操作,包括旧系统到新系统的移植,从不同的数据库备份数据和收集数据。 ASP.NET 2.0有一个SqlBulkCopy类,它可以帮助你从不同的数据源复制数据到SQL SERVER数据库。 本文中我将示范SqlBulkCopy类的不同应用。
数据库设计:
这个数据库的设计还是蛮简单的,它基于Northwind数据库的Products表。另外我还在Northwind数据库中创建了3个表。 详情可以看一下下面的数据库关系图。
private static void PerformBulkCopy()
private static void PerformBulkCopyDifferentSchema()
<?xml version="1.0" encoding="utf-8" ?>
<Products>
<Product productID="1" productName="Chai" />
<Product productID="2" productName="Football" />
<Product productID="3" productName="Soap" />
<Product productID="4" productName="Green Tea" />
</Products>
private static void PerformBulkCopyXMLDataSource()
{
string connectionString = @"Server=localhost;Database=Northwind;Trusted_Connection=true";
DataSet ds = new DataSet();
DataTable sourceData = new DataTable();
ds.ReadXml(@"C:\Products.xml");
sourceData = ds.Tables[0];
// 目的
using (SqlConnection destinationConnection = new SqlConnection(connectionString))
{
// 打开连接
destinationConnection.Open();
using (SqlBulkCopy bulkCopy = new SqlBulkCopy(destinationConnection.ConnectionString))
{
// 列映射
bulkCopy.ColumnMappings.Add("productID", "ProductID");
bulkCopy.ColumnMappings.Add("productName", "Name");
bulkCopy.DestinationTableName = "Products_TopSelling";
bulkCopy.WriteToServer(sourceData);
}
}
}
首先把XML文件读进DataTable,然后再使用SqlBulkCopy类的WriteToServer方法。 因为目的表示是Products_TopSelling,所以我们必须执行列映射。
结论
本文中我示范了如何使用.NET 2.0引入的SqlBulkCopy类。 SqlBulkCopy类可以非常简单的把数据从一个数据源复制到SQL SERVER数据库。
我希望你会喜欢本文,祝编程愉快!
相关文章推荐
- [转载][翻译]使用asp.net 2.0中的SqlBulkCopy类批量复制数据
- [翻译]使用asp.net 2.0中的SqlBulkCopy类批量复制数据
- [翻译]使用asp.net 2.0中的SqlBulkCopy类批量复制数据
- [翻译]使用asp.net 2.0中的SqlBulkCopy类批量复制数据
- 使用asp.net 2.0中的SqlBulkCopy类批量复制数据
- 使用asp.net 2.0中的SqlBulkCopy类批量复制数据
- 使用asp.net 2.0中的SqlBulkCopy类批量复制数据
- 使用asp.net 2.0中的SqlBulkCopy类批量复制数据
- 使用asp.net 2.0中的SqlBulkCopy类批量复制数据
- 使用asp.net 2.0中的SqlBulkCopy类批量复制数据
- 使用asp.net 2.0中的SqlBulkCopy类批量复制数据
- 使用asp.net 2.0中的SqlBulkCopy类批量复制数据【BY周公】
- [翻译]Scott Mitchell 的ASP.NET 2.0数据教程之十四:使用FormView 的模板
- [翻译] Scott Mitchell 的ASP.NET 2.0数据操作教程之十:使用 GridView 和DetailView实现的主/从报表
- [翻译] Scott Mitchell 的ASP.NET 2.0数据操作教程之七:使用DropDownList过滤的主/从报表
- [翻译]Scott Mitchell 的ASP.NET 2.0数据教程之十四:使用FormView 的模板
- [翻译]Scott Mitchell 的ASP.NET 2.0数据教程之十二:在GridView控件中使用TemplateField
- [翻译]Scott Mitchell 的ASP.NET 2.0数据教程之十四:使用FormView 的模板
- [翻译] Scott Mitchell 的ASP.NET 2.0数据操作教程之八:使用两个DropDownList过滤的主/从报表
- [翻译] Scott Mitchell 的ASP.NET 2.0数据操作教程之十:使用 GridView 和DetailView实现的主/从报表