当前位置:数据库 > Access >>

SQL数据库A表,ACCESS数据库B表,如何将SQL A表中ACCESS B表中不存在的数据找出来,并存入ACCESS B表中?

我要把数据从SQL数据库中实时读到ACCESS中. 如果要从SQL数据库中读一条数据插入到ACESS中,就要查找一次ACCESS数据库,如果没有在插入,这样每一条数据都要查找一次访问一次数据库,这样速度相当慢,还占CPU.请问有没有容易的方法? 请各位大大们帮我解决下谢谢.
补充:ACCESS不支持事务.
因为客户机上装的是SQL或ACCESS,我要把他们的数据存到我的ACCESS数据库中,他们的数据是实时更新的数据.不适合在客户机上手动操作加链接服务器.
只有通过代码实现.三楼的代码我没明白是什么意思?..
答案:实时读到ACCESS中
不知道你到底是要做什么样的操作.

尝试在 SQL Server 中,建立一个  “链接服务器” 链接到这个 Access 文件。
然后 直接表关联 插入/更新。 还是比较省事的。

如果 那个表 是更新的比较频繁,还可以折腾个触发器什么的,如果SQL Server的那个表,增加了一行, 就同步向 Access那里增加一行。不需要做检索的操作。 

-----
如果无法在 SQL Server 那一端,创建 “链接服务器”

问题就是: Access 拿到 SQL Server 的数据以后, 是只读的? 还是要做二次处理的。

如果是 只读,不修改的话,直接在 Access 里面,创建一个 SQL Server 的数据库 链接表。 不需要任何的代码,服务器修改了, Access 这里就直接能看到了。

如果是拿到数据以后,还要做修改,或者是表结构都不一样,只是要部分列的数据的话。 
那么需要了解,楼主需要的 实时同步的 频率。
是 每秒 同步? 每分同步? 半小时同步一次? 一小时同步一次?

如果时间比较长的话,还是可以通过这个 链接表
执行类似下面方式的 SQL

INSERT INTO Access表
    SELECT * FROM SQLServer链接表
        WHERE 主键 NOT IN ( SELECT 主键 FROM Access表)

如果要求的同步间隔时间很短的话,上面的做法不可行。
其他:insert into tanlename (fieldnam,fieldnam2)values (1,'values') 直接导出access的 

上一个:access 数据库中表:总成零件关系表,字段:总成编号,零件编号,零件数量都设置为长整型
下一个:怎样用C或C++(最好是C)语言向Access数据库写入或读出数据?

Oracle
MySQL
Access
SQLServer
DB2
Excel
SQLite
SYBASE
Postgres
如果你遇到数据库难题:
请访问www.zzzyk.com 试试
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,