mysqli_change_user

(PHP 5)

mysqli_change_user

(no version information, might be only in CVS)

mysqli->change_user -- Modifica o usuário para a conexão com o banco de dados especificada

Descrição

Estilo de procedimento:

bool mysqli_change_user ( object link, string user, string password, string database )

Estilo orientado a objeto (metodo):

class mysqli {

bool change_user ( string user, string password, string database )

}

mysqli_change_user() é usado para mudar o usuário na conexão com o banco de dados especificado como indicado pelo parâmetro link e definido para o banco de dados atual para o especificado pelo parâmetro database.

Se desejado, o valor NULL pode ser passado no lugar do parâmetro database fazendo com que seja apenas mudado o usuário e não seja escolhido também um banco de dados. Para escolher um banco de dados neste caso, use a função mysqli_select_db().

Para poder mudar usuários de maneira correta, os parâmetors username e password devem ser válidos e este usuário deve ter permissões suficinte para acessar o banco de dados desejado. Se por alguma razão a autenticação falhar, o usuário atualmente autenticado irá permanecer.

Nota: Usar este comando fará sempre que a conexão atual com o banco de dados funcione como se fosse completamente uma nova conexão, não importando se a operação foi completada de maneira correta. Este reínicio incluí desfazer quaisquer transações ativas, fechar todas as tabelas temporarias e destravar todas as tabelas travadas.

Valores de retorno

Retorna TRUE em caso de sucesso ou FALSE em falhas.

Veja também:

mysqli_connect() mysqli_select_db()

Examplo

Exemplo 1. Estilo orientado a objetos

<?php

/* connect database test */
$mysqli = new mysqli("localhost", "my_user", "my_password", "test");

/* check connection */
if (mysqli_connect_errno()) {
    
printf("Connect failed: %s\n", 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\n", $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\n");
    }
    
$result->close();
}

/* close connection */
$mysqli->close();
?>

Exemplo 2. Estilo de procedimentos

<?php
/* connect database test */
$link = mysqli_connect("localhost", "my_user", "my_password", "test");

/* check connection */
if (!$link) {
    
printf("Connect failed: %s\n", 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\n", $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\n");
    }
    
mysqli_free_result($result);
}

/* close connection */
mysqli_close($link);
?>

Os exempos acima irão produzir a seguinte saída:

Default database: world
Value of variable a is NULL