Define el identificador del cliente

# oci_set_client_identifier

(PHP 5 >= 5.3.2, PHP 7, PHP 8, PECL OCI8 >= 1.4.0)

oci_set_client_identifier — Define el identificador del cliente

### Descripción

function oci_set_client_identifier(resource `$connection`, string `$client_id`): bool

Define el identificador del cliente, utilizado por numerosos componentes de la base de datos para identificar a los usuarios de la aplicación que se autentican con el mismo nombre de usuario de la base de datos.

El identificador del cliente se registra en la base de datos durante el próximo intercambio 'round-trip' desde PHP hacia la base de datos; típicamente, la ejecución de una consulta SQL.

El identificador puede ser consultado posteriormente, por ejemplo, con la consulta `SELECT SYS_CONTEXT('USERENV','CLIENT_IDENTIFIER') FROM DUAL`. Una vista de administración de la base de datos, como la vista `V$SESSION` también contiene el valor. Puede ser utilizado con `DBMS_MONITOR.CLIENT_ID_TRACE_ENABLE` en el contexto de un trazado. Asimismo, puede ser utilizado en el marco de un audit.

El valor puede ser conservado a lo largo de las diferentes consultas de las páginas que utilizan la misma conexión persistente.

### Parámetros

`connection`
  Un identificador de conexión Oracle, devuelto por la función oci_connect(), oci_pconnect() o la función oci_new_connect().
`client_id`

  Cadena de caracteres elegida por el usuario de hasta 64 bytes de longitud.

### Valores devueltos

Esta función retorna `true` en caso de éxito o `false` si ocurre un error.

### Ejemplos

Ejemplo #1 Define el identificador del cliente como el usuario de la aplicación

    <?php

    // Recupera el nombre utilizado para la identificación del usuario de la aplicación
    session_start();
    $un = my_validate_session($_SESSION['username']);
    $c = oci_connect('myschema', 'welcome', 'localhost/XE');

    // Informa a Oracle sobre este usuario
    oci_set_client_identifier($c, $un);

    // El próximo intercambio (round-trip) hacia la base de datos validará este identificador
    $s = oci_parse($c, 'select mydata from mytable');
    oci_execute($s);

    // ...

    ?>

### Notas

Precaución

# Ida y vuelta

Algunas funciones OCI8 requieren ida y vuelta con la base de datos. Estas ida y vuelta pueden ser evitadas al usar consultas cuyo resultado es almacenado en caché.

### Ver también

- oci_set_module_name() - Define el nombre del módulo
- oci_set_action() - Define el nombre de la acción
- oci_set_client_info() - Define la información del cliente
- oci_set_db_operation() - Establece la operación de base de datos

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open