(PECL maxdb >= 1.0)
maxdb_select_db -- maxdb->select_db — データベースクエリ用のデフォルトデータベースを選択する
maxdb_select_db() 関数は、 link が表すデータベース接続に対して クエリを実行する際に使用するデフォルトのデータベースを (dbname で指定したものに) 選択します。
注意: この関数は、接続のデフォルトデータベースを変更する場合にのみ使用すべきです。 デフォルトのデータベースは、maxdb_connect() の 4 番目のパラメータで指定することができます。
成功した場合に TRUE を、失敗した場合に FALSE を返します。
例1 オブジェクト指向型
<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");
/* 接続を調べます */
if (maxdb_connect_errno()) {
printf("接続に失敗しました: %s\n", maxdb_connect_error());
exit();
}
/* 現在のデフォルトデータベースの名前を返します */
if ($result = $maxdb->query("SELECT SERVERDB FROM USERS WHERE USERNAME='MONA'")) {
$row = $result->fetch_row();
printf("デフォルトデータベースは %s です。\n", $row[0]);
$result->close();
}
/* 存在しない db に変更します */
$maxdb->select_db("XXXXXXXX");
/* 現在のデフォルトデータベースの名前を返します */
if ($result = $maxdb->query("SELECT SERVERDB FROM USERS WHERE USERNAME='MONA'")) {
$row = $result->fetch_row();
printf("デフォルトデータベースは %s です。\n", $row[0]);
$result->close();
}
$maxdb->close();
?>
例2 手続き型
<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");
/* 接続を調べます */
if (maxdb_connect_errno()) {
printf("接続に失敗しました: %s\n", maxdb_connect_error());
exit();
}
/* 現在のデフォルトデータベースの名前を返します */
if ($result = maxdb_query($link, "SELECT SERVERDB FROM USERS WHERE USERNAME='MONA'")) {
$row = maxdb_fetch_row($result);
printf("デフォルトデータベースは %s です。\n", $row[0]);
maxdb_free_result($result);
}
/* 存在しない db に変更します */
maxdb_select_db($link, "XXXXXXXX");
/* 現在のデフォルトデータベースの名前を返します */
if ($result = maxdb_query($link, "SELECT SERVERDB FROM USERS WHERE USERNAME='MONA'")) {
$row = maxdb_fetch_row($result);
printf("デフォルトデータベースは %s です。\n", $row[0]);
maxdb_free_result($result);
}
maxdb_close($link);
?>
上の例の出力は、 たとえば以下のようになります。
デフォルトデータベースは <...> です。 Warning: maxdb_select_db(): -10709 Connection failed (RTE:database not running) <...> Warning: maxdb_query(): -10821 Session not connected [] <...> Warning: maxdb_close(): -10821 Session not connected [] <...>