与 ODBC 系列的 PDO 连接不起作用

PDO connection to ODBC iseries not working

我正在尝试将我的 odbc_connect 转换为 PDO 连接,但我一直收到错误消息。在它是一个驱动程序错误之前,但我修复了我的 php.ini 文件以使用 odbc PDO。

这是我现在成功连接的内容:

//Establish DB2 Connection  
$DB2Conn = odbc_connect("webConn","testuser", "test");

我正在为 PDO 尝试下面的方法,但它说 PHP Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[08S01] SQLDriverConnect: 11001 [IBM][System i Access ODBC Driver]Communication link failure. comm rc=11001 - CWBCO1004 - Remote address could not be resolved' in

连接测试:

//PDO COnnections
$DB2conn = new PDO("odbc:DRIVER={iSeries Access ODBC Driver};SYSTEM=webconn;", $username, $password);

无论如何,我是 DB2 连接的新手,而且我从来没有使用过 PDO。文档有点帮助,但我现在卡住了。

根据 PHP docsodbc_connect 使用以下参数连接到数据源:

resource odbc_connect ( string $dsn , string $user , string $password [, int $cursor_type ] )

由于您没有在 odbc_connect() 中指定 Driver,您使用的是 DSN(即数据源名称).因此,调整 PDO 以连接到相同的 DSN,webConn:

$DB2Conn  = new PDO("odbc:DSN=webConn;", $username, $password);