SELECT * 
FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0',
  'Data Source="\\本机电脑名\共享目录名\northwind.mdb";Jet OLEDB:Database Password=123;User ID=Admin;Password=;')...产品

解决方案 »

  1.   

    其实问题是这样的,我要做一个把access的数据倒到sqlserver上的程序,但是需要一些查询,就没办法直接倒,只好用openrowset来做,但是sqlserver的连接没办法打开access的数据库
      

  2.   

    Access是文件数据库,怎么可能在其他计算机没有访问文件的权限下被访问呢?
      

  3.   

    你可以在Access端写一个服务程序,专门负责往Sql svr里同步数据
      

  4.   

    但是我需要用access上的表和sqlserver上的表进行联合查询,是不是只能用dts先把所有的数据都拷上去,然后在sqlserver中进行查询??
      

  5.   

    早点说嘛
    如果你只是把ACCESS的数据导到SQL上,没这条麻烦嘛.
    方法1.
    用ACCESS打开你的ACCESS数据库,执行下面的语句就行了:--导入已经存在的表的情况
    insert into [ODBC;Driver=SQL Server;Server=SQL服务器名;Uid=用户名(例如sa);Pwd=密码;database=数据库名].表名
    select * from ACCESS中要导入的表
    --导入并生成的表的情况
    select *  into [ODBC;Driver=SQL Server;Server=SQL服务器名;Uid=用户名(例如sa);Pwd=密码;database=数据库名].表名
    from ACCESS中要导入的表
      

  6.   

    换个思维,不是只有SQL中可以访问ACCESS.
    ACCESS中一样可以访问SQL.联合查询一样.
    如果你要在程序中执行上面的语句,记住,打开的应该是ACCESS数据库,而不是SQL数据库.
      

  7.   

    但是access并不支持openrowset,我应该用什么做联合查询??!
      

  8.   

    我真土!如果用access的连接打开的话就不用openrowset了。
    万分感谢zjcxc(邹建)同志!
    结贴给分!