关于Win7 64位系统通过ODBC访问Access的一点经验
来源:互联网 发布:unity3d文件如何打开 编辑:程序博客网 时间:2024/05/20 02:28
最近趁着工作相对清闲,把电脑的操作系统重装了,由原来的XP换成了Win7(64位),结果遇到一系列的应用数据访问问题。
问题1:自己用VS2010编写的很多小程序在Win7下运行出现错误,经过核实,出错的环节都是访问Access数据库。
问题2:自己经常用的分析工具Knime,在读取Access数据库时提示出错(Knime是64位)。
为了解决上述问题,上网搜索了一番,初步弄清楚问题的原因。
因为我安装的Office2007是32位的(一般用户不推荐安装64位的Office,具体参考这篇文章:32位和64位版本的Office异同点),所以Office自带的Access访问驱动是32位的,而我的应用程序默认的编译方式是Any CPU,因此在64位系统默认访问64位的ODBC驱动,结果就找不到驱动。
解决方法1:对程序重新编译,目标平台选择x86就可以了,这个方法可以解决问题1,操作很简单。
存在问题:需要有程序的源代码,能够自己重新编译,因此对于问题2就无能为力了。
为了解决问题2,我又继续搜索解决方法,发现一个新的解决方式,那就是在Win7上安装64位的ODBC驱动。主要参考这篇文章:64位系统安装ODBC驱动的方法
要在Win7上安装64位的ODBC驱动,最简单的办法就是安装64位的Office,但我们前面已经安装了32位的Office,能不能不安装64位Office直接安装ODBC驱动?
方法也有,那就是安装Microsoft Access Engine,这个程序从微软官网下载下来叫AccessDatabaseEngine_x64.exe。
不过新的问题又来了,安装AccessDatabaseEngine_x64.exe时,程序也会检测提示你已安装了32位的Office,不能继续安装。
这个时候你需要对该程序的安装包动动小手术,先去微软下载一个Microsoft Windows SDK for Windows 7 and .NET Framework 3.5 SP1 ,下载下来的程序叫winsdk_web.exe。
安装winsdk_web.exe,然后从安装目录找到Orca.msi,具体的位置忘记了,可以搜索下。我们真正的目的就是要这个Orca,是一个MSI文件编辑器。运行Orca.msi安装。
接下来处理安装程序,先用Winrar把AccessDatabaseEngine_x64.exe解压缩,不能直接右键解压缩,要先运行Winrar,然后把AccessDatabaseEngine_x64.exe拖过去,就可以解压缩了,解完压缩有两个文件,其中一个是msi文件,叫AceRedist.msi,这时运行Orca程序,把AceRedist.msi打开,在左边Tables里面找到LaunchCondition项,然后在右边Condition里找到BLOCKINSTALLATION,把该条删除,然后保存。
接下来再运行AceRedist.msi,这回就不会提示已经安装了32位Office了,顺利安装结束,64位ODBC驱动就有了。
这次再运行Knime就没问题了,方法2的操作比较麻烦一些,不过用到的工具都是微软源生的,而且一次处理好,下次可以直接重用。
- 关于Win7 64位系统通过ODBC访问Access的一点经验
- win7-64位系统添加access的ODBC数据源
- win7 64位系统的odbc设置
- win7-64位系统添加access的ODBC数据源的方法
- 64位win7下vs2010链接access的odbc数据源
- 关于win7 64位系统设置odbc源…
- 关于win7 64位系统无法使用ODBC的处理方法
- 关于在win7 64位系统使用Powerdesigner逆向工程mysql创建ODBC数据源的问题
- win7 64位系统 下的 odbc数据源
- win7 64位系统 下的 odbc数据源
- Win7 64位配置JDBC-ODBC数据源,连接ACCESS数据库
- Access 通过ODBC连接Oracle 数据库 (64位)
- 64位win7系统使用 32位 MySQL ODBC
- 32位的VS通过odbc数据源访问64位Oracle
- WIN7(64位)系统发现数据源ODBC里面没有配置access数据源连接&System, System32, Syswow64 概述
- WIN7(64位)系统发现数据源ODBC里面没有配置access数据源连接&System, System32, Syswow64 概述
- win7(64位)系统安装64位ODBC驱动的方法
- win7的64位系统上使用32位ODBC源
- 编译Qt/E时遇到incorrect register `%rbp' used with `l' suffix问题的解决办法
- Failed to pull selection
- iOS开发UITableView基本使用方法总结
- java中注册图片验证码
- Google Gson 使用简介
- 关于Win7 64位系统通过ODBC访问Access的一点经验
- UNIX高手的20个习惯
- Oracle Database Server Architecture: Overview
- DS1302组件
- Unity3D 一些基础的3D图形学算法
- 11. PHP String 字符串
- 大数乘法(C++)
- FragmentPagerAdapter与FragmentStatePagerAdapter区别
- sql:MySql create FUNCTION,VIEW,PROCEDURE