跨数据库表的连接?有难度哦~~~~~~~~~
做一个考勤系统遇到的问题,如下:
我在一台机器(公司服务器)上有一个ACCESS数据库,数据库中有一个职工表(zgdata).然后在我自己的机器上也有一个ACCESS数据库,数据库中有一个表为考勤表(kqdata),两个表中有相同的一个字段为kh。
问题:
如何才可以连接这两个表,并进行查询呢,注意是不同机器上的两不同的数据库,如果要查询是不是得先将其中一个数据库中的表读到另一个数据库中才可以查询??????
------解决方案--------------------可以使用如下两种方式访问另一个MDB:
1、
SELECT * from 表名 in 'C:\db2.mdb '
--其中表名是在db2中的表名
2、
select * from [;database=C:\db2.mdb].表名
追加到另一个MDB:
insert into 目标MDB的表名(字段列表) in 'C:\db2.mdb ' select 字段列表 from 当前MDB的表名
或
insert into [;database=C:\db2.mdb].目标MDB的表名(字段列表) select 字段列表 from 当前MDB的表名
------解决方案----------------------try
select A.*,B.*
from 本地库中的表名 AS A
inner join [;database=\\Server\Test.mdb].表名 AS B ON A.id=B.id
------解决方案-------------------- --如果另一个MDB有数据库密码,可以如下:
--try
select A.*,B.*
from 本地库中的表名 AS A
inner join [;database=\\Server\Test.mdb;pwd=000;].表名 AS B ON A.id=B.id