在delphi中,怎样用一条词句操作access和sqlserver两个数据库中的两张表?谢谢.

解决方案 »

  1.   

    首先这个SQL必须兼容两个数据库。
    然后可以设置两个数据库连接组件,然后更换这个连接属性就可以实现了吧。关注。
      

  2.   

    他不是这个意思,
    应该就用一条SQL操作不同库的不同表
      

  3.   

    Access和SQLServer的语句还是有些不同的,比如日期值,Access是用#,而SQLServer是用'
      

  4.   

    请参照:
    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
      

  5.   

    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出错?
      

  6.   

    应该没有必要先导入
    1.如果导入,会相应的增加一些判断数据表是否存在,然后再导入这方面的时间,
    直接查询出来不是更好,语句长一些有什么关系
    2.你可以像上面转换一下不就行了,如:as o
      

  7.   

    如果用到的频率很高,先导入还是可以考虑的。要不然每次这样跨数据库查询应该都是要重新连接那个ACCESS文件的