mirror of
https://github.com/macintoshplus/doc-fr.git
synced 2026-03-26 01:42:09 +01:00
269 lines
9.7 KiB
XML
269 lines
9.7 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!-- $Revision$ -->
|
|
<!-- EN-Revision: 222b43d6c13467885434244105205542317e3046 Maintainer: yannick Status: ready -->
|
|
<!-- Reviewed: no Maintainer: yannick -->
|
|
|
|
<refentry xml:id="function.dba-open" xmlns="http://docbook.org/ns/docbook">
|
|
<refnamediv>
|
|
<refname>dba_open</refname>
|
|
<refpurpose>Ouvre une base de données DBA</refpurpose>
|
|
</refnamediv>
|
|
<refsect1 role="description">
|
|
&reftitle.description;
|
|
<methodsynopsis>
|
|
<type class="union"><type>resource</type><type>false</type></type><methodname>dba_open</methodname>
|
|
<methodparam><type>string</type><parameter>path</parameter></methodparam>
|
|
<methodparam><type>string</type><parameter>mode</parameter></methodparam>
|
|
<methodparam choice="opt"><type>string</type><parameter>handler</parameter></methodparam>
|
|
<methodparam rep="repeat"><type>string</type><parameter>args</parameter></methodparam>
|
|
</methodsynopsis>
|
|
<para>
|
|
<function>dba_open</function> établit une connexion à
|
|
la base identifiée par <parameter>path</parameter> avec le
|
|
mode <parameter>mode</parameter> et l'identifiant
|
|
<parameter>handler</parameter>.
|
|
</para>
|
|
</refsect1>
|
|
<refsect1 role="parameters">
|
|
&reftitle.parameters;
|
|
<para>
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><parameter>path</parameter></term>
|
|
<listitem>
|
|
<para>
|
|
Chemin sur votre système de fichiers.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><parameter>mode</parameter></term>
|
|
<listitem>
|
|
<para>
|
|
Il vaut <literal>r</literal> pour lecture seule, <literal>w</literal> pour
|
|
lecture/écriture, <literal>c</literal> pour lecture/écriture, et
|
|
création si la base n'existe pas, et <literal>n</literal> pour
|
|
création, écrasement et accès en lecture/écriture.
|
|
La base de données est créée en mode BTree ; les autres modes (comme Hash ou
|
|
Queue) ne sont pas supportés.
|
|
</para>
|
|
<para>
|
|
De plus, vous pouvez choisir la méthode de verrouillage de la base avec le
|
|
caractère suivant. Utilisez <literal>l</literal> pour verrouiller la base avec un
|
|
fichier <filename>.lck</filename>, ou <literal>d</literal> pour verrouiller
|
|
la base elle-même. Il est important que vos application utilisent ces
|
|
options de manière cohérente.
|
|
</para>
|
|
<para>
|
|
Si vous voulez tester la possibilité d'accès, et ne pas attendre la
|
|
disponibilité du verrou, vous pouvez ajouter la lettre <literal>t</literal>
|
|
comme troisième caractère. Lorsque vous êtes absolument certain que votre base
|
|
ne requière pas de verrou, vous pouvez utiliser le tiret <literal>-</literal>
|
|
à la place de <literal>l</literal> ou <literal>d</literal>.
|
|
Lorsque vous n'utilisez ni <literal>d</literal>, ni <literal>l</literal> ni
|
|
<literal>-</literal>, dba va verrouiller en mode <literal>d</literal>.
|
|
</para>
|
|
<note>
|
|
<para>
|
|
Il ne peut y avoir qu'un seul type d'écriture dans la base. Lorsque vous
|
|
utilisez dba sur un serveur web, et que plusieurs requêtes HTTP effectuent
|
|
des écritures, elles ne peuvent être faites que l'une après l'autre. De même,
|
|
la lecture durant l'écriture n'est pas possible. L'extension dba utilise
|
|
un verrou pour éviter ces problèmes. Voici la table de verrouillage :
|
|
<table>
|
|
<title>Verrouillage DBA</title>
|
|
<tgroup cols="9">
|
|
<thead>
|
|
<row>
|
|
<entry>déjà ouverte</entry>
|
|
<entry><parameter>mode</parameter> = "rl"</entry>
|
|
<entry><parameter>mode</parameter> = "rlt"</entry>
|
|
<entry><parameter>mode</parameter> = "wl"</entry>
|
|
<entry><parameter>mode</parameter> = "wlt"</entry>
|
|
<entry><parameter>mode</parameter> = "rd"</entry>
|
|
<entry><parameter>mode</parameter> = "rdt"</entry>
|
|
<entry><parameter>mode</parameter> = "wd"</entry>
|
|
<entry><parameter>mode</parameter> = "wdt"</entry>
|
|
</row>
|
|
</thead>
|
|
<tbody>
|
|
<row>
|
|
<entry>non-ouverte</entry>
|
|
<entry>ok</entry>
|
|
<entry>ok</entry>
|
|
<entry>ok</entry>
|
|
<entry>ok</entry>
|
|
<entry>ok</entry>
|
|
<entry>ok</entry>
|
|
<entry>ok</entry>
|
|
<entry>ok</entry>
|
|
</row>
|
|
<row>
|
|
<entry><parameter>mode</parameter> = "rl"</entry>
|
|
<entry>ok</entry>
|
|
<entry>ok</entry>
|
|
<entry>attente</entry>
|
|
<entry>&false;</entry>
|
|
<entry>illégal</entry>
|
|
<entry>illégal</entry>
|
|
<entry>illégal</entry>
|
|
<entry>illégal</entry>
|
|
</row>
|
|
<row>
|
|
<entry><parameter>mode</parameter> = "wl"</entry>
|
|
<entry>attente</entry>
|
|
<entry>&false;</entry>
|
|
<entry>attente</entry>
|
|
<entry>&false;</entry>
|
|
<entry>illégal</entry>
|
|
<entry>illégal</entry>
|
|
<entry>illégal</entry>
|
|
<entry>illégal</entry>
|
|
</row>
|
|
<row>
|
|
<entry><parameter>mode</parameter> = "rd"</entry>
|
|
<entry>illégal</entry>
|
|
<entry>illégal</entry>
|
|
<entry>illégal</entry>
|
|
<entry>illégal</entry>
|
|
<entry>ok</entry>
|
|
<entry>ok</entry>
|
|
<entry>attente</entry>
|
|
<entry>&false;</entry>
|
|
</row>
|
|
<row>
|
|
<entry><parameter>mode</parameter> = "wd"</entry>
|
|
<entry>illégal</entry>
|
|
<entry>illégal</entry>
|
|
<entry>illégal</entry>
|
|
<entry>illégal</entry>
|
|
<entry>attente</entry>
|
|
<entry>&false;</entry>
|
|
<entry>attente</entry>
|
|
<entry>&false;</entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</table>
|
|
<simplelist>
|
|
<member>ok: Le second appel réussit.</member>
|
|
<member>wait: Le second appel attend que <function>dba_close</function>
|
|
soit appelé par le premier script.</member>
|
|
<member>false: Le second appel retourne &false;.</member>
|
|
<member>illégal: vous ne devez pas mélanger les options
|
|
<literal>"l"</literal> et <literal>"d"</literal> pour le paramètre
|
|
<parameter>mode</parameter>.</member>
|
|
</simplelist>
|
|
</para>
|
|
</note>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><parameter>handler</parameter></term>
|
|
<listitem>
|
|
<para>
|
|
Le nom du <link linkend="dba.requirements">gestionnaire</link>
|
|
qui doit être utilisé pour accéder à <parameter>path</parameter>.
|
|
C'est passé à tous les paramètres facultatifs donnés à
|
|
<function>dba_open</function> et peut agir au nom d'eux.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><parameter>args</parameter></term>
|
|
<listitem>
|
|
<para>
|
|
Paramètre &string; optionnels qui sont transmis au pilote.
|
|
</para>
|
|
<para>
|
|
Les pilotes <literal>cdb</literal>, <literal>cdb_make</literal>,
|
|
<literal>flatfile</literal>, <literal>inifile</literal>,
|
|
<literal>qdbm</literal> et <literal>tcadb</literal>
|
|
ne supportent pas de paramètres additionels.
|
|
</para>
|
|
<para>
|
|
Les pilotes <literal>db1</literal>, <literal>db2</literal>,
|
|
<literal>db3</literal>, <literal>db4</literal>, <literal>dbm</literal>,
|
|
<literal>gdbm</literal>, et
|
|
<literal>ndbm</literal> supportent un paramètre additionel
|
|
<literal>$filemode</literal>, qui a la même signification que le
|
|
paramètre <literal>$mode</literal> de <function>chmod</function>,
|
|
et à comme valeur par défaut <literal>0644</literal>.
|
|
</para>
|
|
<para>
|
|
Le pilote <literal>lmdb</literal> supporte deux paramètres additionels.
|
|
Le premier permet de définir le <literal>$filemode</literal>
|
|
(voir description ci-dessus), et le second permet de définir la
|
|
<literal>$mapsize</literal>, dont la valeur devrait être un multiple de
|
|
la taille de page du système d'exploitation, ou zéro pour utiliser la
|
|
mapsize par défaut.
|
|
La paramètre <literal>$mapsize</literal> est supporté à partir de
|
|
PHP 7.3.14 et 7.4.2, respectivement.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
</para>
|
|
</refsect1>
|
|
<refsect1 role="returnvalues">
|
|
&reftitle.returnvalues;
|
|
<para>
|
|
Retourne un gestionnaire positif en cas de succès&return.falseforfailure;.
|
|
</para>
|
|
</refsect1>
|
|
|
|
<refsect1 role="changelog">
|
|
&reftitle.changelog;
|
|
<informaltable>
|
|
<tgroup cols="2">
|
|
<thead>
|
|
<row>
|
|
<entry>&Version;</entry>
|
|
<entry>&Description;</entry>
|
|
</row>
|
|
</thead>
|
|
<tbody>
|
|
<row>
|
|
<entry>7.3.14, 7.4.2</entry>
|
|
<entry>
|
|
Le pilote <literal>lmdb</literal> supporte désormais un paramètre
|
|
additionel <literal>$mapsize</literal>.
|
|
</entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</informaltable>
|
|
</refsect1>
|
|
|
|
<refsect1 role="seealso">
|
|
&reftitle.seealso;
|
|
<para>
|
|
<simplelist>
|
|
<member><function>dba_popen</function></member>
|
|
<member><function>dba_close</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
|
|
-->
|