如何使用连接到db2 db ....
的代码//解析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"].
";";
$conn = db2_connect($conn_string, '', ''); //db connection
...连接到超过1分贝...当然不是在同一时间。
或者......如果可能的话......我可以拥有多个架构吗?
基本上......我会在那里拥有客户端数据......并且每个客户端将具有相同名称的相同表格......以及类似的数据结构。所以我需要将它们分开...在不同的数据库或不同的模式中。但是我得到的代码自动连接到我的db2实例...如何告诉代码连接到哪个实例...如果我有更多......
答案 0 :(得分:1)
假设您有许多绑定到您的应用程序的SQL数据库服务实例。现在如果你跑:
$services_json["sqldb"]
它将返回一个包含每个SQL数据库实例的元素的数组。要指向您可以执行的特定实例:
$sqldb_config = $services_json["sqldb”][i]
其中 i 是您想要的服务的索引。我建议您查看Bluemix上应用程序仪表板中VCAP_SERVICES环境变量的值。在那里,您将看到绑定到您的应用程序的所有SQLDB服务实例的列表。