Sets the database operation

- « oci_set_client_info

- oci_set_edition »

- PHP Manual
- OCI8 Functions
- Sets the database operation

# oci_set_db_operation

(PHP 7 >= 7.2.14, PHP 8, PHP 7 >= 7.3.1, PHP 8, PECL OCI8 >= 2.2.0)

oci_set_db_operation — Sets the database operation

### Description

oci_set_db_operation(resource `$connection`, string `$action`): bool

Sets the DBOP for Oracle tracing.

The database operation name is registered with the database when the next 'round-trip' from PHP to the database occurs, typically when a SQL statement is executed.

The database operation can subsequently be queried from database administration views such as `V$SQL_MONITOR`.

The oci_set_db_operation() function is available when OCI8 uses Oracle 12 (or later) Client libraries and Oracle Database 12 (or later).

### Parameters

`connection`

  An Oracle connection identifier, returned by oci_connect(), oci_pconnect(), or oci_new_connect().

`action`

  User chosen string.

### Return Values

Returns `true` on success or `false` on failure.

### Examples

Example #1 Setting the DBOP

    <?php$c = oci_connect('hr', 'welcome', 'localhost/XE');// Record the operationoci_set_db_operation($c, 'main query');// Code that causes a round-trip, for example a query:$s = oci_parse($c, 'select * from dual');oci_execute($s);oci_fetch_all($s, $res);sleep(30);?>

    // While the script is running, the administrator can see the database operations
    // being performed:

    sqlplus system/welcome
    SQL> select dbop_name from v$sql_monitor;

### Notes

Caution

# Round-trip Gotcha

Some but not all OCI8 functions cause round-trips. Round-trips to the database may not occur with queries when result caching is enabled.

### See Also

- oci_set_action() - Sets the action name
- oci_set_module_name() - Sets the module name
- oci_set_client_info() - Sets the client information
- oci_set_client_identifier() - Sets the client identifier