Database db =
DatabaseFactory.CreateDatabase();
using (SqlConnection connection =
(SqlConnection)db.CreateConnection())
{
try
{
connection.Open();
string tableName =
"BG_Payment_Details";
using (SqlBulkCopy bulk =
new SqlBulkCopy(connection, SqlBulkCopyOptions.KeepIdentity,
null)
{
DestinationTableName =
tableName,
BatchSize =
10000
})
{
foreach (DataColumn dc
in dsPayment.Tables[
1].Columns)
{
bulk.ColumnMappings.Add(dc.ColumnName, dc.ColumnName);
}
bulk.WriteToServer(dsPayment.Tables[1]);
bulk.Close();
}
}
catch (Exception exp)
{
throw exp;
}
finally
{
connection.Close();
}
}
View Code
代码如上,实际上还是比较简单的,就是本地赋值好表,之后对应上服务器上的目标表,直接使用上面的程式就OK了。
DataTable直接到服务器的Table.
但是也有一个坑在那边,必须两边开启一个服务。
参照下面的网页
http://www.lmwlove.com/ac/ID1144
Win7中"已禁用对分布式事务管理器(MSDTC)的网络访问。请使用组件服务管理工具启用 DTC 以便在 MSDTC 安全配置中进行网络访问。"因为在程序中用到了TransactionScope对象,测试的时候报出了"已禁用对分布式事务管理器(MSDTC)的网络访问。请使用组件服务管理工具启用 DTC 以便在 MSDTC 安全配置中进行网络访问。"的错误,本人是Win7系统,解决方法如下:打开"控制面板"- >"管理工具"- >"组件服务" 如下图:
然后依次双击"计算机"- >"我的电脑"- >"Distributed Transaction Coordinator",然后右键点击"本地DTC",选择“属性”选项,在"安全"选项卡中设置如下即可:
转载于:https://www.cnblogs.com/wonder223/p/5725019.html
相关资源:JAVA上百实例源码以及开源项目