问题:使用SQL2005从数据库里导出数据到Access数据库
使用技术:在程序里调用含有OpenDataSource的SQL语句,如下:Dim AccessDrive As String = "OPENDATASOURCE('Microsoft.Jet.OLEDB.4.0','Data Source=" & _
                            "" & strFile & "" & _
                            ";Jet OLEDB:Database Password=" & pwd & "')..."SqlString = "insert into " & AccessDrive & "TblGC_GYS_DLSDZGYS " & _
                    "(FYXH,GCXH,XH,GCFYMC,QFJC,QFJCMS,FL,FYJE,GXZZJ,DWTZ,PXWZ) " & _
                    " select '{'+cast(FYXH as varchar(50))+'}' as FYXH,'1492',XH,GCFYMC,QFJC,QFJCMS,FL,FYJE,GXZZJ,DWTZ,PXWZ " & _
                    " FROM TblGC_GYS_DLSDZGYS " & _
                    " where GCXH = " & GCXH
在32位的系统里没问题,可是64位的系统就缺少了Microsoft.Jet.OLEDB.4.0 这个驱动,也以尝试过安装Office 2007,但64位环境里依然不能用 Microsoft.ACE.OLEDB.12.0 。
客户那边不能更换操作系统,所以请教各位有什么好的解决方法吗?
有没有替换openDataSource的类似函数?请问现在微软官方还没有解决方案吗?
我已尝试下列方法:
安装64位的SQL server oledb了,但是只有SQLNCLI驱动,而且访问ODBC的Access也报错。

解决方案 »

  1.   

    http://www.microsoft.com/downloads/details.aspx?FamilyID=ad2b6698-de73-47dc-911b-50f4f0627ff4&DisplayLang=en
      

  2.   

    http://social.msdn.microsoft.com/Forums/en-US/adodotnetdataproviders/thread/effe1c32-6a45-41d0-9016-0502acec585e
      

  3.   

    惨了,这个补丁在中文版的Windows Server 2003(64)上不能安装。说仅支持另一种硬件平台,我这边服务器的CPU是 intel Xeron 的。
    有那位朋友有这方面的经验?
      

  4.   

    这个问题困扰我也很久了,今天终于搞定 需安装 64位版本的 Microsoft.ACE.OLEDB.12.0
    我测试成功
    select * FROM OpenDataSource('Microsoft.ACE.OLEDB.12.0',
             'Data Source="E:/CLcx.mdb"')...aaa
      

  5.   

    http://download.microsoft.com/download/E/4/2/E4220252-5FAE-4F0A-B1B9-0B48B5FBCCF9/AccessDatabaseEngine_X64.exe64位版本的 Microsoft.ACE.OLEDB.12.0 驱动