PHP PDO ODBC连接

我们正在尝试通过PHP中的ODBC创建与SQL数据库的连接.

这是我们目前的脚本:

$cnx = new PDO("odbc:Driver={EFR};Server=localhost;Port:7004;Database=EFR;Uid=LcLfVJFLTKTCEHRO;Pwd=*********;"); 

该驱动程序正在Qlikview中工作,该Qlikview也连接到此数据库.

这个驱动程序实际上是由PHP发现的,但我们认为它无法登录.

PHP返回以下错误:

Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[IM001] SQLDriverConnect: 0 No transaction control system' in C:\Program Files (x86)\EasyPHP-12.1\www\index.php:2
Stack trace:
#0 C:\Program Files (x86)\EasyPHP-12.1\www\index.php(2): PDO->__construct('odbc:Driver={EF...')
#1 {main} thrown in C:\Program Files (x86)\EasyPHP-12.1\www\index.php on line 2

我们希望有人能帮助我们解决这个问题.

解决方法:

如果您已经定义了ODBC并且存储了密码,则可以直接连接

$conn = new PDO("odbc:DSN_NAME") 

其中DSN_NAME是ODBC数据源的实际名称,无论是MySQL,SQL Server还是DB2.

您可以使用以下方法测试您的连接:

try{
    $conn = new PDO ("odbc:DSN_NAME");

    die(json_encode(array('outcome' => true)));
}
catch(PDOException $ex){
     die(json_encode(array('outcome' => false, 'message' => 'Unable to connect')));
}
上一篇:【STM32】IIC的基本原理(实例:普通IO口模拟IIC时序读取24C02)(转载)


下一篇:mysql – 尝试连接到R中的Microsoft Access数据库的“参数太少”