(PHP 5.3.2, PECL OCI8 >= 1.4.0)
oci_set_module_name — Sets the module name
$connection
, string $module_name
)Sets the module name for Oracle tracing.
The module name is registered with the database when the next 'roundtrip' from PHP to the database occurs, typically when an SQL statement is executed.
The name can subsequently be queried from database administration views such as V$SESSION. It can be used for tracing and monitoring such as with V$SQLAREA and DBMS_MONITOR.SERV_MOD_ACT_STAT_ENABLE.
The value may be retained across persistent connections.
connection
Oracle 连接标识,由 oci_connect(),oci_pconnect(),或 oci_new_connect() 返回。
module_name
User chosen string up to 48 bytes long.
成功时返回 TRUE
, 或者在失败时返回 FALSE
。
Note: Oracle 版本需求
当 PHP 是与 Oracle 数据库 10g 及更新版本的 扩展库链接时,此函数可用。
使用旧版的 OCI8 或 ORACLE 数据库 ,可使用 Oracle DBMS_APPLICATION_INFO 包来设置客户端信息。这比使用 oci_set_client_info() 较低效。
一些 OCI8 函数会导致 Roundtrips. 对数据库来说当启用结果缓存时,查询可能不产生Roundtrips。
Example #1 Setting the module name
<?php
$c = oci_connect('hr', 'welcome', 'localhost/XE');
// Record the module
oci_set_module_name($c, 'Home Page');
// Code that causes a roundtrip, 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 // modules in use: sqlplus system/welcome SQL> select module from v$session;