您的位置:首页 > 其它

利用通用权限管理系统底层解决数据从不同库的导入导出问题

2016-08-16 09:06 477 查看
/// <summary>
/// 同步地区的处理
/// Base_Area表从Oracle同步到MySQL数据库
/// </summary>
/// <returns></returns>
public ActionResult SyncAreaFromOracleToMySql()
{
BaseResult baseResult = new BaseResult();
string currentId = string.Empty;
try
{
BaseAreaManager areaOracleManager = new BaseAreaManager(UserCenterDbHelper, OperateContext.Current.UserInfo);
//MySQl库
string mySQLConn = "server=192.168.3.12;uid=root;password=123456;database=sapp2;pooling=true;character set=utf8;Min Pool Size=5;Max Pool Size=50";
IDbHelper mySQLDbHelper = DbHelperFactory.GetHelper(CurrentDbType.MySql, mySQLConn);
BaseAreaManager areaMySQLManager = new BaseAreaManager(mySQLDbHelper, OperateContext.Current.UserInfo);
using (IDataReader dr = areaOracleManager.ExecuteReader(0, BaseAreaEntity.FieldCode))
{
while (dr.Read())
{
BaseAreaEntity entity = BaseEntity.Create<BaseAreaEntity>(dr, false);
currentId = entity.Id;
int result = areaMySQLManager.Update(entity);
if (result == 0)
{
areaMySQLManager.Add(entity, false, false);
}
}
}
baseResult.Status = true;
baseResult.StatusMessage = "地区数据同步到MySql完成。";
}
catch (Exception ex)
{
baseResult.Status = false;
baseResult.StatusMessage = "地区数据Id=" + currentId + "同步到MySql出现异常:" + ex.Message;
}

return Json(baseResult, JsonRequestBehavior.AllowGet);
}


直接上代码了,上面实现的功能是从Oracle库将Base_Area表导入到MySQL库中Base_Area表的功能实现,同样可以导入到其它库中,充分利用了底层的功能,解决不同数据库导入导出的问题。

大家参考这个,就可以实现权限数据库向不同库的切换问题了,底层同时支持多种数据库,修改一下数据库连接配置即可,代码部分无需任何改动。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐