maxdb_change_user

maxdb::change_user

(PECL maxdb >= 1.0)

maxdb_change_user -- maxdb::change_user指定したデータベース接続のユーザーを変更する

説明

手続き型

maxdb_change_user ( resource $link , string $user , string $password , string $database ) : bool

オブジェクト指向型

maxdb::change_user ( string $user , string $password , string $database ) : bool

maxdb_change_user() は、パラメータ link で指定したデータベース接続のユーザーを変更し、現在のデータベースを database で指定したものに変更するために使用します。

ユーザーの変更を行うには、username および password に有効な値が指定されていること、 そして指定したデータベースに対する適切なアクセス権がユーザーに与えられていることが必要です。 何らかの理由で認証に失敗すると、現在のユーザー認証のままの状態となります。

注意:

このコマンドを使用すると、その操作が正常に終了したか否かにかかわらず、 新しくデータベースに接続したのと同じように扱われます。つまり、 現在アクティブなトランザクションはすべてロールバックされ、 一時テーブルはすべて閉じられ、テーブルに対するロックもすべて解除されます。

返り値

成功した場合に TRUE を、失敗した場合に FALSE を返します。

例1 オブジェクト指向型

<?php

/* test データベースに接続します */
$maxdb = new maxdb("localhost""MONA""RED""DEMODB");

/* 接続を調べます */
if (maxdb_connect_errno()) {
   
printf("接続に失敗しました: %s\n"maxdb_connect_error());
   exit();
}

if (
$result $maxdb->query("SELECT * FROM dual")) {
   
$row $result->fetch_row();
   
printf("結果: %s\n"$row[0]);
   
$result->free();
}

/* すべてをリセットし、新しいデータベースを選択します */
if (!$maxdb->change_user("DBADMIN""SECRET""DEMODB")) {
  
printf("データベースが稼動していません\n");
} else {
  
printf("データベースが稼動中です\n");
}

/* 接続を閉じます */
$maxdb->close();
?>

例2 手続き型

<?php
$link 
maxdb_connect("localhost""MONA""RED""DEMODB");

/* 接続を調べます */
if (!$link) {
   
printf("接続に失敗しました: %s\n"maxdb_connect_error());
   exit();
}

if (
$result maxdb_query($link"SELECT * FROM dual")) {
   
$row maxdb_fetch_row($result);
   
printf("結果: %s\n"$row[0]);
   
maxdb_free_result($result);
}

/* すべてをリセットし、新しいデータベースを選択します */
if (!maxdb_change_user($link"DBADMIN""SECRET""DEMODB")) {
  
printf("データベースが稼動していません\n");
} else {
  
printf("データベースが稼動中です\n");
}

/* 接続を閉じます */
maxdb_close($link);
?>

上の例の出力は、 たとえば以下のようになります。

結果: a
データベースが稼動中です

参考

  • maxdb_connect() - MaxDB サーバーへの新しい接続をオープンする
  • maxdb_select_db() - データベースクエリ用のデフォルトデータベースを選択する