Задаёт имя для действия

# oci_set_action

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

oci_set_action — Задаёт имя для действия

### Описание

function oci_set_action(resource `$connection`, string `$action`): bool

Присваивает имя действию для трассировки Oracle.

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

Имя действия может быть извлечено из административных представлений (view) базы данных, таких как `V$SESSION`. Его можно использовать для трассировки и мониторинга, например, с помощью `V$SQLAREA` и `DBMS_MONITOR.SERV_MOD_ACT_STAT_ENABLE`.

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

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

`connection`
  Идентификатор соединения Oracle, который возвращают функции oci_connect(), oci_pconnect() или oci_new_connect().
`action`

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

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

Функция возвращает `true`, если выполнилась успешно, или `false`, если возникла ошибка.

### Примеры

Пример #1 Установка действия

    <?php

    $c = oci_connect('hr', 'welcome', 'localhost/XE');

    // Запись действия
    oci_set_action($c, 'Friend Lookup');

    // Код, осуществляющий запрос к БД, например выборка:
    $s = oci_parse($c, 'select * from dual');
    oci_execute($s);
    oci_fetch_all($s, $res);

    sleep(30);

    ?>

    // Пока скрипт выполняется, администратор может наблюдать выполнение действий:

    sqlplus system/welcome
    SQL> select action from v$session;

### Примечания

> Замечание: Требование к версии Oracle
> Эта функция доступна, если PHP слинкован с библиотеками Oracle Database начиная с версии 10g и выше.

Подсказка

# Производительность

В старых версиях модуля OCI8 или базы данных Oracle была доступна установка информации о клиенте средствами пакета `DBMS_APPLICATION_INFO`. Для этого более эффективен вызов функции oci_set_client_info().

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

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

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

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

- oci_set_module_name() - Задаёт имя модулю
- oci_set_client_info() - Задаёт информацию о клиенте
- oci_set_client_identifier() - Задаёт идентификатор клиента
- oci_set_db_operation() - Задаёт операцию базы данных

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