ASP.NET之SqlBulkCopy
2009-07-11 13:29
295 查看
[align=left]在ASP.NET 2.0中提供了一个新的类SqlBulkCopy类,它在性能上的优势更超过了上面的方法,它可以通过让DataSet或是DataReader中大量的数据通过数据流直接进行装载,然后可以将这些记录添加到指定的数据表中。[/align]
[align=left] SqlBulkCopy类只有在SQL Server的表中写入数据,但在使用其它的数据库时,可以通过数据源来使用,SqlBulkCopy类主要包括一个实例方法WriteToServer,它用来把数据从一个数据源传输到另外一个数据源。WriteToServer的方法可以快速的写入DataRow[]数组数据,DataTable和DataReader。在实际开发的过程中,可以视情况而定,选择我们所喜欢的方法,我们看它使用的方法:[/align]
[align=left] WriteToServer(DataTable)写入数据表[/align]
[align=left] WriteToServer(DataRow[])批次写入数据行[/align]
[align=left] WriteToServer(DataTable,DataRowState)按行状态写入数据库表[/align]
[align=left] WriteToServer(DataReader)写入DataReader对象[/align]
[align=left] 在多数情况下,我们选择最好的方法是DataReader对象,因为DataReader是一个读取只向前和只读流的方式,所以它要比DataTable和DataRows[]更快,我们现在来看看下面的代码,它用来把数据从一张表中传输到另一张表中。[/align]
string strConnection = ConfigurationManager.AppSettings["conStr"].ToString();//读取Web.config文件中的数据库连接字符串
SqlConnection sourceconnection = new SqlConnection(strConnection);//数据的连接方式是SQL Server
sourceconnection.Open();//打开数据库连接
SqlCommand cmd = new SqlCommand("Select * from MSreplication_options");//通过命令来读取SQL语句
cmd.Connection = sourceconnection;//获取连接方式
SqlDataReader reader = cmd.ExecuteReader();//开始执和结果集,获取DataReader记录集
//连接目标数据库连接,并且打开数据库连接方式,在此由于调用同一个数据库,连接字符串没有变
SqlConnection destinationConnection = new SqlConnection(strConnection);
destinationConnection.Open();
//调用SqlBulkCopy类的方法
SqlBulkCopy bulkCopy = new SqlBulkCopy(destinationConnection);
//获取目标表的名称
bulkCopy.DestinationTableName = "destination";
//写入DataReader对象
bulkCopy.WriteToServer(reader);
//关闭各个对象
reader.Close();
sourceconnection.Close();
destinationConnection.Close();
[align=left] SqlBulkCopy类只有在SQL Server的表中写入数据,但在使用其它的数据库时,可以通过数据源来使用,SqlBulkCopy类主要包括一个实例方法WriteToServer,它用来把数据从一个数据源传输到另外一个数据源。WriteToServer的方法可以快速的写入DataRow[]数组数据,DataTable和DataReader。在实际开发的过程中,可以视情况而定,选择我们所喜欢的方法,我们看它使用的方法:[/align]
[align=left] WriteToServer(DataTable)写入数据表[/align]
[align=left] WriteToServer(DataRow[])批次写入数据行[/align]
[align=left] WriteToServer(DataTable,DataRowState)按行状态写入数据库表[/align]
[align=left] WriteToServer(DataReader)写入DataReader对象[/align]
[align=left] 在多数情况下,我们选择最好的方法是DataReader对象,因为DataReader是一个读取只向前和只读流的方式,所以它要比DataTable和DataRows[]更快,我们现在来看看下面的代码,它用来把数据从一张表中传输到另一张表中。[/align]
string strConnection = ConfigurationManager.AppSettings["conStr"].ToString();//读取Web.config文件中的数据库连接字符串
SqlConnection sourceconnection = new SqlConnection(strConnection);//数据的连接方式是SQL Server
sourceconnection.Open();//打开数据库连接
SqlCommand cmd = new SqlCommand("Select * from MSreplication_options");//通过命令来读取SQL语句
cmd.Connection = sourceconnection;//获取连接方式
SqlDataReader reader = cmd.ExecuteReader();//开始执和结果集,获取DataReader记录集
//连接目标数据库连接,并且打开数据库连接方式,在此由于调用同一个数据库,连接字符串没有变
SqlConnection destinationConnection = new SqlConnection(strConnection);
destinationConnection.Open();
//调用SqlBulkCopy类的方法
SqlBulkCopy bulkCopy = new SqlBulkCopy(destinationConnection);
//获取目标表的名称
bulkCopy.DestinationTableName = "destination";
//写入DataReader对象
bulkCopy.WriteToServer(reader);
//关闭各个对象
reader.Close();
sourceconnection.Close();
destinationConnection.Close();
相关文章推荐
- ASP.NET的SqlBulkCopy用法
- asp.net 使用SqlBulkCopy极速插入数据到 SQL Server
- 用.NET SqlBulkCopy类执行批量复制
- c#ADO.NET / 用 SqlBulkCopy 类,海量批写入数据库
- 用.NET SqlBulkCopy类执行批量复制
- 用.NET SqlBulkCopy类执行批量复制
- 利用ADO.NET SqlBulkCopy 大批量快速导入数据
- ADO.NET 新特性之SqlBulkCopy
- C#批量保存方法-利用Net SqlBulkCopy 批量导入数据库,速度超快-通用方法源码提供
- ADO.Net使用SqlBulkCopy
- ADO.NET 大数据上传的利器 SqlBulkCopy
- 海量数据插入数据库效率对照測试 ---ADO.NET下SqlBulkCopy()对照LINQ 下InsertAllOnSubmit()
- 利用ADO.NET SqlBulkCopy 大批量快速导入数据
- ADO.NET下的SqlBulkCopy类执行数据库间批量复制操作
- IBatis.Net 下使用SqlBulkCopy 大批量导入数据 问题解决
- ADO.NET 新特性之SqlBulkCopy
- ADO.NET 新特性之SqlBulkCopy(批量插入大量数据)
- ADO.NET 2.0 - 读者询问能否使用 SqlBulkCopy 对象来大量复制文字文件
- 海量数据插入数据库效率对比测试 ---ADO.NET下SqlBulkCopy()对比LINQ 下InsertAllOnSubmit()