0

我想通过 PHP (7.2.10)、SLE 12.3 连接到我的 MS Access 数据库。为此,我使用了 libmdbodbc1 0.7-3.1 软件包附带的 libmdbodbc.so.1 驱动程序(来源:mdbtools-0.7-3.1)。设置在 unixODBC 配置中完成:/etc/unixODBC/odbcinst.ini。

[MdbToolsOdbc]
Description = MDBTools ODBC Driver
Driver = libmdbodbc.so.1
Setup = libmdbodbc.so.1

可以通过命令行 (isql) 连接到数据库并获取数据,并且不会返回错误。

但是当我试图通过 PHP 执行 SQL 查询时(连接通过:odbc_connect(Driver=MdbToolsOdbc;DBQ=%s, null, null);)

odbc_exec($connection, "SELECT id FROM table");

我收到错误“已用尽 2097152 字节的允许内存大小(尝试分配 140 TB)”。

这里仍然提到了这个问题:

https://github.com/brianb/mdbtools/issues/99

https://bugs.php.net/bug.php?id=75013&thanks=3

有人知道该问题的解决方案或解决方法吗?

很高兴得到一些回应!

谢谢你,最好的!

4

1 回答 1

0

改用 PDO: https ://www.php.net/manual/en/ref.pdo-odbc.php

这适用于我使用与 Filemaker 数据库的连接。

于 2021-03-10T12:21:46.490 回答