以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  access同步更新sql  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=176660)

--  作者:yxl2012
--  发布时间:2022/4/21 22:03:00
--  access同步更新sql
   请教老师,客户端电脑安装了个检测仪程序,每秒会在客户端ACCESS数据库中写入生产设备检测数据(每秒最多会写入八条记录,一台检测仪连接八台生产设备)。如何用FOXTABLE,将更新的数据(每条数据只会新增,不会修改)同步添加到服务器中的SQL数据库中(表结构一样)。需要考虑传递到服务器SQL中,上传的数据如果不成功时该如何重新上传。还有因检测数据是实时写入到ACCESS数据库中的,如果同步更新,希望类似有个触发器的功能,避免系统负荷量太大,影响整个检测系统工作。能否给个优化方案,谢谢!
--  作者:有点蓝
--  发布时间:2022/4/21 22:09:00
--  
写入生产设备检测数据 -- 这个保存数据的表有没有什么列可以区分哪些是新增的数据?比如自增主键,或者时间列等等
[此贴子已经被作者于2022/4/21 22:22:28编辑过]

--  作者:yxl2012
--  发布时间:2022/4/21 22:13:00
--  
由于写检测数据的程序是第三方软件,无法修改代码。但是ACCESS数据库是开放的。
--  作者:yxl2012
--  发布时间:2022/4/21 22:15:00
--  
我在数据库中添加了个字段,上传标识,通过这应该可以辨别
--  作者:有点蓝
--  发布时间:2022/4/21 22:22:00
--  
不需要改别人代码,分析它的表结构即可,最好是有自增主键,或者时间列之类的能够区分

假设上传标识是逻辑列,同步过的数据就设置为true

access没有触发器,只能通过写代码处理。Foxtable里添加计划管理,定时查询上传标识为false的数据,然后填充到SqlServer数据源对应的表里:http://www.foxtable.com/webhelp/topics/0680.htm,填充后把access查询的上传标识为false的数据更新为true

可以设置为1分钟同步一次,也就是480条数据左右