从 64 位 php 网站强制连接到 32 位 Access 数据库

Enforce Connection to a 32bit Access Database from a 64bit php website

我有一个 Joomla 网站,我在其中创建了一个自定义模块,它应该连接到我拥有的这个 Access 数据库。但是,当尝试连接到它时,它找不到该数据库。据我所知,这是因为我注册为 odbc-datasource 的连接字符串是 32 位的,但 PHP 是 64 位版本,因此也在寻找 64 位 odbc-datasource。那么是否有可能强制它采用 32 位数据源?

不同位大小的程序无法相互通信。 Access x32 和 x64 格式文件之间没有区别。所以没有 x32 位 Access 数据库这样的东西。

不同的是您选择的数据库驱动程序。有一个 x32 位驱动程序和一个 x64 位驱动程序。如果您的网站是 运行 x64 位,那么 Access 数据库驱动程序也必须是 x64 位。

Windows 大约有 20 年的时间,它附带一个 Access x32 位驱动程序。因此不需要安装此驱动程序,但它只有 x32 位,并且仅适用于 mdb 文件。如果您使用较新的 accDB 文件格式,则需要安装较新版本的 Access 数据库引擎(旧的称为 JET,较新的称为 ACE)。您需要 ACE 数据引擎来读取 accDB 文件。如果你要阅读 mdb 文件并且还使用 x64 位软件,你还需要 ACE。因此只有 x32 位版本的 JET 存在(仅读取 mdb 文件)。

如果要使用 x64 位并读取 mdb 文件或 accDB 文件,则必须安装 64 位版本。

从计算机诞生之日起?您不能再使用 x32 位软件与 8 位 Atari 计算机通话。您必须匹配您正在使用的所有代码和库的位大小——包括连接到数据库的驱动程序软件。不允许混合和匹配不同位大小的软件,自从第一台计算机进入家庭以来就是这样。