使用MDBtool linux的PDO连接

Posted

技术标签:

【中文标题】使用MDBtool linux的PDO连接【英文标题】:PDO connection using MDBtool linux 【发布时间】:2015-01-19 11:05:28 【问题描述】:

大家好,只是想知道为什么它不起作用, 我正在尝试将数据插入 MS 访问文件 (.MDB) 操作系统是 GNU-Unix/Linux,

在我的 odbcinst.ini 中

[mdb]
Description = MDB Tools ODBC
Driver = /ble/blee/libmdbodbc.so.0
Setup =
FileUsage =
CPTimeout =
CPReuse =

在我的 odbc.ini 中

[test1]
Description = Microsoft Access Try DB
Driver = mdb
Database = /bla/blaa/blaaa/Yeah.MDB
Servername = localhost

在我的 test.php

$conn = new PDO("odbc:DSN=test1;");
$data = $conn->prepare("select  * from table1");
$data->execute();
$done= $data->fetch();

使用这个脚本我检索数据 但是当我要插入/删除到 .mdb 时

$conn = new PDO("odbc:DSN=test1;");
$data = $conn->prepare("INSERT INTO table1(abcd, efgh, ijkl) values('aaaa', 'bbbb', ccc)");
$data->execute();

什么都没有发生 =); 但不知道为什么我可以检索但不能插入? 感谢阅读嘻嘻~~ 顺便说一句:我不确定如何使用 mdbtools。,我只是使用了 ->libmdbodbc.so.0 并为我的代码设置了 odbc.ini 和 odbcinst.ini :)

如果 mdbtools 只是用于检索?? 我想没有免费工具可以帮助我执行插入语句,就像这个问题一样 --> Access from PHP to .mdb file on Ubuntu

【问题讨论】:

【参考方案1】:

我以前也遇到过同样的问题。在mdbtools 网站上,它指出:

MDB 工具目前具有只读支持

因此,您只能对这个特定的驱动程序使用“SELECT”语句。

【讨论】:

以上是关于使用MDBtool linux的PDO连接的主要内容,如果未能解决你的问题,请参考以下文章

如何通过 PHP 和 Linux 使用 pdo 连接到 mssql?

Linux 上 XAMPP 的 PDO 驱动程序

如何使用 PDO 跨两个数据库运行连接查询

使用 symfony 和 MAMP 时出现 PDO 连接错误

PDO 关闭连接

是否可以将 Doctrine 与持久 PDO 连接一起使用?