找回密码
 立即注册

QQ登录

只需一步,快速开始

yxp998

金牌服务用户

4

主题

7

帖子

51

积分

金牌服务用户

积分
51

微信认证勋章

yxp998
金牌服务用户   /  发表于:2020-4-5 09:36  /   查看:2182  /  回复:7
1金币
应用外联了一个mysql数据库中的会员表和一个mssql数据库中的用户表,主要字段"用户ID"和“手机号”,如何能在mysql数据库会员表发生新增或修改会员时自动同步到mssql数据库的用户表?如不能自动同步,定时同步能否实现?


7 个回复

倒序浏览
app转转风悬赏达人认证 活字格认证
中级会员   /  发表于:2020-4-5 11:36:12
沙发
建议处理方法:
直接用c#写一个程序放在服务器上,
根据根据数据要同步的频率和数量量来设置同步时间间隔。

也可以通过活字格来写webapi来解决


采用什么方法,一定要看应用场景?两个数据库分布在什么位置?所处的服务器环境和网络环境是什么?同步的时间要求?同步的数量有多少?


回复 使用道具 举报
yxp998
金牌服务用户   /  发表于:2020-4-5 11:44:33
板凳
可以帮我写个程序吗,可以付费
回复 使用道具 举报
sang
注册会员   /  发表于:2020-4-6 01:48:26
地板
  1. Forguncy.getTableDataByOData("BD_CORP?$select=*",
  2. //获取成功的情况
  3.         function(data){
  4.                 console.log("长度:"+data.length);
  5.                 for(var i = 0; i < data.length; i++)
  6.                 {       
  7.                         console.log("i:"+i);
  8.                         var code = data[i]["UNITCODE"];
  9.                         var name = data[i]["UNITNAME"];
  10.                         console.log("ID=" + code + "; Name=" + name);
  11.                         var myArray=new Array(code,name);
  12.                         (function(arg){
  13.                                 //alert(arg[0]);
  14.                                 var corpcode=new String(arg[0]);
  15.                                 var par="公司表?$select=unitcode&$filter=unitcode eq '"+arg[0]+"'";
  16.                                 console.log(par);
  17.                                 //获取数据表中的数据
  18.                                 Forguncy.getTableData("公司表",
  19.                                         {
  20.                                                 "unitcode":corpcode
  21.                                         },
  22.                                         //获取数据成功时弹出警告框,显示姓名列的值
  23.                                         function(data){           
  24.                                                 console.log("公司表有数:"+ arg[0]);
  25.                                         },
  26.                                         //获取数据失败时弹出警告框,显示失败信息
  27.                                         function(errorMessage){
  28.                                                         //为指定的数据表添加数据
  29.                                                         Forguncy.addTableData("公司表",
  30.                                                                 {
  31.                                                                 //指定列名与数据
  32.                                                                 unitcode: arg[0],
  33.                                                                 unitname:arg[1]
  34.                                                                 },
  35.                                                                 //添加成功时弹出警告框,显示添加成功
  36.                                                                 function (data) {
  37.                                                                         console("添加成功:"+ arg[1]);
  38.                                                                 },
  39.                                                                 //添加失败时弹出警告框,显示失败信息
  40.                                                                 function (errorMessage) {
  41.                                                                         alert("添加失败。");
  42.                                                                         alert(errorMessage);
  43.                                                                 }
  44.                                                         );       
  45.                                         }
  46.                                 );               
  47.                         })(myArray);
  48.                
  49.                        
  50.                 }
  51.         },
  52.         // 获取失败的情况
  53.         function(errorMessage){
  54.                 alert(errorMessage);
  55.         }
  56. );
复制代码
回复 使用道具 举报
yxp998
金牌服务用户   /  发表于:2020-4-6 08:13:16
5#
辛苦老师了,不知上面如何使用,还请指导一下,耽误您的时间,您看看需要多少辛苦费。
现有3台阿里云ECS服务器,全部windows2019环境

服务器1:护卫神全能环境,安装门户网站,mySQL数据库,会员表如下


服务器2:MSSQL2012+雅奇中文编程,居民表如下:



服务器3:MSSQL2012+活字格

需求:
1、用户在门户网站(服务器1)注册并绑定手机后,在服务器2的数据库表中增加一条记录;
2、用户在门户网站(服务器1)重新绑定手机后,在服务器2的数据库表中修改相应记录的手机号;
3、如不能实时同步,30S左右定时同步也可。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
sang
注册会员   /  发表于:2020-4-6 10:38:32
6#
定时同步,BD_CORP(外联表),code,name,外联表字段;公司表(内建表);
对外联表获取的记录进行循环遍历,如果在内建表查到对应数据存在,则不做操作,如果内建表无对应数据,插入一条数据。
回复 使用道具 举报
sang
注册会员   /  发表于:2020-4-6 10:40:32
7#
可以创建个页面,定时访问这个页面,如果数据有规律,可以在查询条件里设置只查找未同步的新数据
回复 使用道具 举报
Simon.hu讲师达人认证 悬赏达人认证 活字格认证
超级版主   /  发表于:2020-4-7 14:04:21
8#
这个东西,更活字格有什么关系啊?

总感觉,用活字格很容易的;
首先,
你直接使用活字格把这个2个表都连接到活字格中,
做法1:
然后搞一个页面,循环命令,把一个表给另一个表更新就行
然后你定时触发一下这个按钮就行;
做法2:
使用活字格服务端定时任务命令,你吧逻辑搞好就行
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部