我刚刚安装了新的IBM DB2 Express C版本。使用CLI命令一切运行良好。这样的db2连接,创建表,数据库和其他任何东西。 (没有更多配置,全新安装)。我使用CLI命令进行的每个测试都不需要用户名和密码,例如
db2 connect to mydb
不
db2 connect to mydb user myuser using mypwd
这就是为什么我没有在php连接中填写用户名和密码的原因。
现在,假设我已经在php驱动程序(php.ini)中安装了db2。然后我想用PHP连接db2。我想使用db2构建应用程序。 我的PHP连接是:
<?php
$database = 'sls'; // the db i created by using CLI command
$user = ''; // i left it blank because no user config when installing
$password = ''; // i left it blank because no pwd config when installing
$hostname = 'localhost';
$port = 50000; // default port ibm db2
$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 "<h1>Connection succeeded.</h1>";
db2_close($conn);
}
else {
echo "<b>Connection failed.</b><br/>";
echo db2_conn_errormsg(). '<br/>';
?>
然后我执行php,总是显示错误,
Connection failed.
[IBM][CLI Driver] SQL10007N Message "0" could not be retrieved. Reason code: "3". SQLCODE=-1390
我只是考虑与mysql相同的db2连接,安装,使用localhost作为主机名并连接!
有人可以帮忙吗?每一个帮助都可以升值。