请参照: USE pubs GO SELECT c.*, o.* FROM Northwind.dbo.Customers AS c INNER JOIN OPENROWSET('Microsoft.Jet.OLEDB.4.0', 'c:\MSOffice\Access\Samples\northwind.mdb';'admin';'mypwd', Orders) AS o ON c.CustomerID = o.CustomerID GO
hqhhh(枫叶) 如果可以,这样也可以达到要求了. 我要多次用到access的表,写起来可能比较长. ==== 如果能把access数据库一张表导入到SQL server中,再在SQL中操作,是不是效率会好些,因为SQL中的表的数据量很大.代码怎样写, var username,servername,database,password:string; begin username:='sa'; password:=''; servername:='server'; database:='data_hj'; ADOConnection1.Execute('SELECT * into cam_dh IN [ODBC][ODBC;Driver=SQL Server;UID='+ username+';PWD='+password+';Server='+servername+';DataBase='+database+';] FROM test') end; 这样写,访问ODBC出错?
应该没有必要先导入 1.如果导入,会相应的增加一些判断数据表是否存在,然后再导入这方面的时间, 直接查询出来不是更好,语句长一些有什么关系 2.你可以像上面转换一下不就行了,如:as o
然后可以设置两个数据库连接组件,然后更换这个连接属性就可以实现了吧。关注。
应该就用一条SQL操作不同库的不同表
USE pubs
GO
SELECT c.*, o.*
FROM Northwind.dbo.Customers AS c INNER JOIN
OPENROWSET('Microsoft.Jet.OLEDB.4.0',
'c:\MSOffice\Access\Samples\northwind.mdb';'admin';'mypwd', Orders)
AS o
ON c.CustomerID = o.CustomerID
GO
如果可以,这样也可以达到要求了.
我要多次用到access的表,写起来可能比较长.
====
如果能把access数据库一张表导入到SQL server中,再在SQL中操作,是不是效率会好些,因为SQL中的表的数据量很大.代码怎样写,
var
username,servername,database,password:string;
begin
username:='sa';
password:='';
servername:='server';
database:='data_hj';
ADOConnection1.Execute('SELECT * into cam_dh IN [ODBC][ODBC;Driver=SQL Server;UID='+
username+';PWD='+password+';Server='+servername+';DataBase='+database+';] FROM test')
end;
这样写,访问ODBC出错?
1.如果导入,会相应的增加一些判断数据表是否存在,然后再导入这方面的时间,
直接查询出来不是更好,语句长一些有什么关系
2.你可以像上面转换一下不就行了,如:as o