在Windows 7上将PHP DB2_Connect问题发送到AS400

时间:2014-12-08 17:56:27

标签: php windows ibm-midrange db2-connect

新工作,新部门,他们在as / 400上做所有事情。由于我对RPG IV一无所知,所以我希望利用我的PHP知识对团队有用。

我正在尝试让PHP连接到as / 400,这是我的代码:

<?php
$database = '*****';
$user = '*****';
$password = '*****';
$hostname = '*****';
$port = 446;

$conn_string = "DRIVER={IBM DB2 ODBC DRIVER};DATABASE=$database;HOSTNAME=$hostname;".
"PORT=$port;PROTOCOL=TCPIP;UID=$user;PWD=$password;";
$conn = db2_connect($conn_string,'','');

if ($conn) {
echo "Connection succeeded.";
db2_close($conn);
}
else {
echo "Connection failed.<br />";
echo db2_conn_error()."<br />";
echo db2_conn_errormsg()."<br />";
}
?>

我收到的错误消息如下:

  

连接失败。   42968   [IBM] [CLI驱动程序] SQL8002N由于缺少DB2 Connect产品或许可证无效,尝试连接到主机失败。 SQLSTATE = 42968 SQLCODE = -8002

现在,我在笔记本电脑上运行Apache 2.4服务器,使用PHP 5.5,加载的IBM_db2扩展名为1.9.6。该公司的笔记本电脑上安装了IBM i Access for Windows,以及一些IBM开发人员软件包。我想我不会错过笔记本电脑上的任何其他东西......我错过了什么?

1 个答案:

答案 0 :(得分:4)

DB2 for i是一个与DB2 for LUW(或z / os)不同的方言。您需要使用客户端访问驱动程序而不是IBM DB2 ODBC驱动程序。 DRIVER={iSeries Access ODBC Driver};