我使用此代码连接到数据库
//解析VCAP_SERVICES环境变量
$vcap_services = $_ENV["VCAP_SERVICES"];
$services_json = json_decode($vcap_services,true);
$sqldb = $services_json["sqldb"];
if (empty($sqldb)) {
echo "No sqldb service instance is bound. Please bind a sqldb service instance";
return;
}
//Get Credentials object (db,host,port,username,password)
$sqldb_config = $services_json["sqldb"][0]["credentials"];
$conn_string = "DRIVER={IBM DB2 ODBC DRIVER};DATABASE=".
$sqldb_config["db"].
";HOSTNAME=".
$sqldb_config["host"].
";PORT=".
$sqldb_config["port"].
";PROTOCOL=TCPIP;UID=".
$sqldb_config["username"].
";PWD=".
$sqldb_config["password"].
";";
然后我做了#34;我的事情"并用关闭连接
db2_close($conn);
然后当我尝试使用相同的连接代码连接到db2 db的另一个实例但更改此行中的中间参数时:
$sqldb_config = $services_json["sqldb"][0]["credentials"];
连接不起作用。这两部分代码分别工作得很好。当我按顺序将代码放在同一个文件中导致此错误时。
答案 0 :(得分:1)
关闭连接后,您必须打开一个新连接(使用您已经使用的代码)才能再次访问数据库。在每个逻辑'之后关闭连接是正确的。一组查询。