MYSQLI_CHANGE_USER(3) 1 MYSQLI_CHANGE_USER(3)
mysqli::change_user - Changes the user of the specified database connection
Object oriented style
SYNOPSIS
bool mysqli::change_user (string $user, string $password, string $database)
DESCRIPTION
Procedural style
bool mysqli_change_user (mysqli $link, string $user, string $password, string $database)
Changes the user of the specified database connection and sets the current database.
In order to successfully change users a valid $username and $password parameters must be provided and that user must have sufficient per-
missions to access the desired database. If for any reason authorization fails, the current user authentication will remain.
PARAMETERS
o $
link -Procedural style only: A link identifier returned by mysqli_connect(3) or mysqli_init(3)
o $user
- The MySQL user name.
o $password
- The MySQL password.
o $database
- The database to change to. If desired, the NULL value may be passed resulting in only changing the user and not selecting a
database. To select a database in this case use the mysqli_select_db(3) function.
RETURN VALUES
Returns TRUE on success or FALSE on failure.
NOTES
Note
Using this command will always cause the current database connection to behave as if was a completely new database connection,
regardless of if the operation was completed successfully. This reset includes performing a rollback on any active transactions,
closing all temporary tables, and unlocking all locked tables.
EXAMPLES
Example #1
mysqli::change_user example
Object oriented style
<?php
/* connect database test */
$mysqli = new mysqli("localhost", "my_user", "my_password", "test");
/* check connection */
if (mysqli_connect_errno()) {
printf("Connect failed: %s
", mysqli_connect_error());
exit();
}
/* Set Variable a */
$mysqli->query("SET @a:=1");
/* reset all and select a new database */
$mysqli->change_user("my_user", "my_password", "world");
if ($result = $mysqli->query("SELECT DATABASE()")) {
$row = $result->fetch_row();
printf("Default database: %s
", $row[0]);
$result->close();
}
if ($result = $mysqli->query("SELECT @a")) {
$row = $result->fetch_row();
if ($row[0] === NULL) {
printf("Value of variable a is NULL
");
}
$result->close();
}
/* close connection */
$mysqli->close();
?>
Procedural style
<?php
/* connect database test */
$link = mysqli_connect("localhost", "my_user", "my_password", "test");
/* check connection */
if (!$link) {
printf("Connect failed: %s
", mysqli_connect_error());
exit();
}
/* Set Variable a */
mysqli_query($link, "SET @a:=1");
/* reset all and select a new database */
mysqli_change_user($link, "my_user", "my_password", "world");
if ($result = mysqli_query($link, "SELECT DATABASE()")) {
$row = mysqli_fetch_row($result);
printf("Default database: %s
", $row[0]);
mysqli_free_result($result);
}
if ($result = mysqli_query($link, "SELECT @a")) {
$row = mysqli_fetch_row($result);
if ($row[0] === NULL) {
printf("Value of variable a is NULL
");
}
mysqli_free_result($result);
}
/* close connection */
mysqli_close($link);
?>
The above examples will output:
Default database: world
Value of variable a is NULL
SEE ALSO
mysqli_connect(3), mysqli_select_db(3).
PHP Documentation Group MYSQLI_CHANGE_USER(3)