Files
php-doc-ru/reference/oci8/functions/oci-set-client-identifier.xml
Sergey Panteleev 6d43fd64d7 Исправление форматирования
[skip-spellcheck]
[skip-lint]
2022-12-27 03:42:36 +03:00

140 lines
4.4 KiB
XML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: ed6de1ae20ce16c0c7be0b3fef282b6065bebfac Maintainer: tmn Status: ready -->
<!-- Reviewed: no -->
<refentry xml:id="function.oci-set-client-identifier" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>oci_set_client_identifier</refname>
<refpurpose>
Задаёт идентификатор клиента
</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>bool</type><methodname>oci_set_client_identifier</methodname>
<methodparam><type>resource</type><parameter>connection</parameter></methodparam>
<methodparam><type>string</type><parameter>client_id</parameter></methodparam>
</methodsynopsis>
<para>
Устанавливает идентификатор клиента, используемый различными компонентами
базы данных для идентификации различных пользователей тонких клиентов,
которые авторизуются в базе данных как один пользователь.
</para>
<para>
Идентификатор клиента регистрируется в базе данных во время очередного
запроса от PHP, например, когда запускается SQL выражение.
</para>
<para>
Идентификатор может быть извлечён, например с помощью
<literal>SELECT SYS_CONTEXT('USERENV','CLIENT_IDENTIFIER')
FROM DUAL</literal>. Административное представление базы данных, такое как
<literal>V$SESSION</literal>, также содержит это значение. Его можно использовать совместно
с <literal>DBMS_MONITOR.CLIENT_ID_TRACE_ENABLE</literal>
для трассировки и аудита.
</para>
<para>
Значение может сохраняться между запросами страниц, которые используют одно и то же постоянное соединение.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>connection</parameter></term>
<listitem>
&oci.parameter.connection;
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>client_id</parameter></term>
<listitem>
<para>
Задаваемая пользователем строка до 64 байт.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.success;
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>
Установка идентификатора клиента для пользователя
</title>
<programlisting role="php">
<![CDATA[
<?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);
// ...
?>
]]>
</programlisting>
</example>
</para>
</refsect1>
<refsect1 role="notes">
&reftitle.notes;
&oci.roundtrip.caution;
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>oci_set_module_name</function></member>
<member><function>oci_set_action</function></member>
<member><function>oci_set_client_info</function></member>
<member><function>oci_set_db_operation</function></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->