1
0
mirror of https://github.com/php/doc-fr.git synced 2026-03-24 07:02:06 +01:00
Files
archived-doc-fr/reference/dbase/book.xml
2026-02-28 22:54:29 +01:00

172 lines
5.7 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: a0ae28d3bc85f927c22649ebd9a590b921534b7d Maintainer: yannick Status: ready -->
<!-- Reviewed: yes Maintainer: yannick -->
<book xml:id="book.dbase" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<?phpdoc extension-membership="pecl" ?>
<title>dBase</title>
<!-- {{{ preface -->
<preface xml:id="intro.dbase">
&reftitle.intro;
<note>
<para>
&pecl.moved-ver;5.3.0.
</para>
</note>
<para>
Ces fonctions permettent d'accéder aux enregistrements des bases
de données au format dBase (dbf).
</para>
<warning>
<para>
Il est recommandé de ne pas utiliser les fichiers dBase
comme la base de données de production. Il est recommandé d'utiliser
<link xlink:href="&url.sqlite;">SQLite</link> ou d'opter plutôt pour un vrai
serveur SQL à la place ;
<link xlink:href="&url.mysql;">MySQL</link> ou
<link xlink:href="&url.pgsql;">PostgreSQL</link>
sont des choix communs en PHP. Le support dBase est présent en PHP
uniquement pour permettre d'importer et d'exporter des données
depuis et vers la base de données, car ce format de fichier
est habituellement compris par les tableurs Windows.
</para>
</warning>
<caution>
<para>
À partir de dbase 7.0.0 les bases de données sont automatiquement verrouillées
via <function>flock</function>. Il n'y avait aucun support pour le verrouillage
précédemment, donc deux processus de serveur web concomitants modifiant le même
fichier dBase auraient très probablement ruiné la base de données. Ceci peut se
produire même avec dbase 7.0.0+ sur les systèmes qui implémentent le verrouillage
au niveau du processus avec les SAPI multithreadés.
</para>
</caution>
<para>
Les fichiers dBase sont de simples fichiers séquentiels, d'un
nombre d'enregistrements fixe. Les enregistrements sont ajoutés
à la fin du fichier et les enregistrements effacés sont
conservés tant que l'on n'appelle pas la fonction
<function>dbase_pack</function>.
</para>
<para>
Seuls les fichiers dbf levels 3 (dBASE III+) - 5 (dBASE V) sont supportés.
Les types de champs dBase disponibles sont :
<table>
<title>Types de champs disponibles</title>
<tgroup cols="3">
<thead>
<row>
<entry>Champ</entry>
<entry>Type dBase</entry>
<entry>Format</entry>
<entry>Informations complémentaires</entry>
</row>
</thead>
<tbody>
<row>
<entry><literal>M</literal></entry>
<entry>Memo</entry>
<entry>n/a</entry>
<entry>Ce type n'est pas supporté par PHP, et sera ignoré</entry>
</row>
<row>
<entry><literal>D</literal></entry>
<entry>Date</entry>
<entry><literal>YYYYMMDD</literal></entry>
<entry>La taille du champ est limitée à 8</entry>
</row>
<row>
<entry><literal>T</literal></entry>
<entry>DateTime</entry>
<entry><literal>YYYYMMDDhhmmss.uuu</literal></entry>
<entry>(FoxPro) Aucune vérification de validité n'est faite. Disponible à partir de dbase 7.0.0.</entry>
</row>
<row>
<entry><literal>N</literal></entry>
<entry>Number</entry>
<entry>Un nombre</entry>
<entry>
Il faut déclarer une taille et une précision (le nombre de chiffres
après le point décimal).
</entry>
</row>
<row>
<entry><literal>F</literal></entry>
<entry>Float</entry>
<entry>Un nombre flottant</entry>
<entry>Identique à <literal>N</literal>.</entry>
</row>
<row>
<entry><literal>C</literal></entry>
<entry>&string;</entry>
<entry>Une chaîne de caractères</entry>
<entry>
Il faut déclarer une taille. Lors de la récupération des
données, la chaîne sera complétée d'espaces afin d'atteindre la
taille déclarée. Les &string; trop longues seront tronquées silencieusement
lors de l'enregistrement.
</entry>
</row>
<row>
<entry><literal>L</literal></entry>
<entry>&boolean;</entry>
<entry>
<literal>T</literal> ou <literal>Y</literal> pour &true;,
<literal>F</literal> ou <literal>N</literal> pour &false;,
<literal>?</literal> pour non initialisée.
</entry>
<entry>
À partir de dbase 7.0.0, retourné en tant que <type>bool</type> (&true; ou &false;),
ou &null; pour les champs non initialisés.
Précédemment, retourné en tant que <type>int</type> (<literal>1</literal> ou <literal>0</literal>).
</entry>
</row>
</tbody>
</tgroup>
</table>
</para>
<note>
<para>
À partir de dbase 7.0.0 les champs nullable sont supportés pour les bases de
données <constant>DBASE_TYPE_FOXPRO</constant>. Si un champ est nullable,
passer &null; définira le drapeau respectif, et lors d'une récupération ultérieure
la valeur du champ sera &null;.
</para>
</note>
<note>
<para>
Il n'y a aucun support des index ou des champs memo.
</para>
</note>
</preface>
<!-- }}} -->
&reference.dbase.setup;
&reference.dbase.constants;
&reference.dbase.reference;
</book>
<!-- 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
-->