C# SqlBulkCopy通用数据同步程序|跨数据库导入数据
作者:作者不详  发布日期:2021/11/22 14:35:22
  C# SqlBulkCopy通用数据同步程序|跨数据库导入数据

C# SqlBulkCopy通用数据同步程序|跨数据库导入数据

C# SqlBulkCopy通用数据同步程序|跨数据库导入数据程序说明。


CSFramework.DataSync解决方案

开发环境:VS2019,ADO.NET, C#语言。
数据库:SQLServer2012,支持多数据库。


VS2019解决方案


贴图图片-csframework通用数据同步程序1



操作界面

测试两个阿里云数据库服务器的数据同步
阿里云ECS服务器 -> 阿里云虚拟主机的数据库,数据库:SQL2012

贴图图片-csframework通用数据同步程序


数据源:来源数据库,输入SQL Connection。
目标数据库:输入SQL Connection。
覆盖数据:勾选导入前清除目标数据库。


同步数据表(整张表导入)


C# Code:

//设置导入表,同步资料的表。导入数据前先清除目的数据库表的数据。
list.Add(new SyncItem(SyncItemType.ByTableName, null, "C_area", true));
list.Add(
new SyncItem(SyncItemType.ByTableName, null, "C_baseprice2", true));
list.Add(
new SyncItem(SyncItemType.ByTableName, null, "C_car", true));
list.Add(
new SyncItem(SyncItemType.ByTableName, null, "C_carhold", true));
list.Add(
new SyncItem(SyncItemType.ByTableName, null, "C_GROUP", true));
list.Add(
new SyncItem(SyncItemType.ByTableName, null, "C_wuliuload", true));

//来源:C/S框架网 | www.csframework.com | QQ:23404761



同步数据范围,同步条件范围的数据


C# Code:


//同步条件范围的数据
DataTable dt = helper.GetSql(sql, helper.SourceConnection);
dt.TableName
= "LogisticsInfo";
if (dt.Rows.Count > 0)
{
  list.Add(
new SyncItem(SyncItemType.ByTable, dt, "LogisticDate", chkReset.Checked));//添加DataTable对象
}

//来源:C/S框架网 | www.csframework.com | QQ:23404761




SyncItem类定义


C# Code:


/// <summary>
/// 同步项目类型
/// </summary>
public enum SyncItemType
{
  ByTableName,
  ByTable,
  BySQL
}

/// <summary>
/// 同步项目对象,定义参数
/// </summary>
public class SyncItem
{
  
/// <summary>
  
///
  
/// </summary>
  
/// <param name="type">同步项目类型</param>
  
/// <param name="value">需要同步的数据</param>
  
/// <param name="tableName">表名称</param>
  
/// <param name="overwriteData">覆盖数据</param>
  
public SyncItem(SyncItemType type, object value, string tableName, bool overwriteData)
  {
    
this.Value = value;
    
this.Type = type;
    
this.TableName = tableName;
    
this.OverwriteData = overwriteData;
  }
  
  
public object Value { get; set; }
  
  
public SyncItemType Type { get; set; }
  
  
public string TableName { get; set; }
  
  
public bool OverwriteData { get; set; }
}

//来源:C/S框架网 | www.csframework.com | QQ:23404761



源码下载(vip用户):






C/S框架网|原创精神.创造价值.打造精品


扫一扫加作者微信
C/S框架网作者微信 C/S框架网|原创作品.质量保障.竭诚为您服务
点击下载附件 点击下载附件 (如下载失败,请邮件通知我们寄回给您,或QQ:23404761留言.)
上一篇 下一篇