OCI8 (Oracle)
PHP Manual

oci_set_client_identifier

(PHP 5.3.2, PECL OCI8 >= 1.4.0)

oci_set_client_identifier Задает идентификатор клиента

Описание

bool oci_set_client_identifier ( resource $connection , string $client_identifier )

Устанавливает идентификатор клиента, используемый различными компонентами базы данных для идентификации различных пользователей тонких клиентов, которые авторизуются в базе данных как один пользователь.

Идентификатор клиента регистрируется в базе данных во время очередного запроса от PHP, например, когда запускается SQL выражение.

Этот идентификатор может быть извлечен из административных представлений (view) базы данных, таких как V$SESSION. Его можно использовать с помощью DBMS_MONITOR.CLIENT_ID_TRACE_ENABLE для трассировки. Также идентификатор может использоваться в целях аудита.

Значение можно устанавливать и через постоянные соединения.

Список параметров

connection

Идентификатор соединения Oracle, возвращаемый oci_connect(), oci_pconnect(), или oci_new_connect().

client_identifier

Задаваемая пользователем строка до 64 байт.

Возвращаемые значения

Возвращает TRUE в случае успешного завершения или FALSE в случае возникновения ошибки.

Примеры

Пример #1 Установка идентификатора клиента для пользователя

<?php

// Найдем логин пользователя
session_start();
$un my_validate_session($_SESSION['username']);
$c oci_connect('myschema''welcome''localhost/XE');

// Сообщим его базе данных
oci_set_client_identifier($c$un);

// Следующий запрос к БД заодно установит идентификатор
$s oci_parse($c'select mydata from mytable');
oci_execute($s);

// ...

?>

Примечания

Предостережение

Совет по полному сканированию таблицы (roundtrip)

Некоторые, но не все OCI8-функции вызывают полное сканирование таблицы (roundtrip). Полное сканирование таблиц не происходит для тех запросов, в которых включено кэширование результатов в базе данных.

Смотрите также


OCI8 (Oracle)
PHP Manual