-
Notifications
You must be signed in to change notification settings - Fork 146
/
book.xml
171 lines (166 loc) · 5.66 KB
/
book.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
<?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>
Nous vous recommandons de ne pas utiliser les fichiers dBase
comme votre base de données de production. Utilisez
<link xlink:href="&url.sqlite;">SQLite</link> ou optez 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 commun en PHP. Le support dBase est présent en PHP
uniquement pour vous permettre d'importer et d'exporter des données
depuis et vers votre 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 vérouillées
via <function>flock</function>. Il n'y avait aucun support pour le vérouillage
précedement, donc deux processus de serveur web concomitant modifiant le même
fichier dBase aurait très probablement ruinné votre base de donnée. Ceci peut se
produire même avec dbase 7.0.0+ sur les systèmes qui implémente le vérouillage
au niveau du processus avec les SAPIs multithreaded.
</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 vous n'appelez pas la fonction
<function>dbase_pack</function>.
</para>
<para>
Seul les fichier dbf levels 3 (dBASE III+) - 5 (dBASE V) sont supportés.
Les types de champs dBase disponibles sont :
<table>
<title>Type de champs disponible</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é sont faite. Disponible à partir de dbase 7.0.0.</entry>
</row>
<row>
<entry><literal>N</literal></entry>
<entry>Number</entry>
<entry>Un nombre</entry>
<entry>
Vous devez 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>
Vous devez déclarer une taille. Lors de la récupération des
données, la chaîne sera complétée d'espace afin d'atteindre la
taille déclarée. Les &string; trop longue 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ées
Précédement, retourneé 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é pour les bases de
données <constant>DBASE_TYPE_FOXPRO</constant>. Si un champ est nullable,
passé &null; définira le drapeau respectif, et lors d'une récupération ultérieur
la valeur du champ sera &null;.
</para>
</note>
<note>
<para>
Il n'y a pas 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
-->