mirror of
https://github.com/php/doc-ru.git
synced 2026-03-24 07:42:22 +01:00
162 lines
6.6 KiB
XML
162 lines
6.6 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
||
<!-- EN-Revision: a0ae28d3bc85f927c22649ebd9a590b921534b7d Maintainer: aur Status: ready -->
|
||
<!-- Reviewed: no -->
|
||
|
||
<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>
|
||
Эти функции позволяют получить доступ к записям,
|
||
хранящимся в DBase-формате (DBF) баз данных.
|
||
</para>
|
||
<warning>
|
||
<para>
|
||
Мы не рекомендуем использовать файлы DBase файлы для использования в промышленной
|
||
эксплуатации. Лучше выберите <link xlink:href="&url.sqlite;">SQLite</link> или какую-либо
|
||
настоящую базу данных; <link xlink:href="&url.mysql;">MySQL</link> или
|
||
<link xlink:href="&url.pgsql;">Postgres</link> являются наиболее частым выбором
|
||
при работе с PHP. Поддержка dBase больше нужна для импорта и экспорта данных
|
||
вашей базы данных, поскольку формат её файлов понятен большинству пакетов
|
||
электронных таблиц (например, Excel).
|
||
</para>
|
||
</warning>
|
||
<caution>
|
||
<para>
|
||
С версии dbase 7.0.0, база данных автоматически блокируется с помощью
|
||
<function>flock</function>. Ранее поддержки блокировок не было, так что два
|
||
конкурирующих процесса веб-сервера, изменяющие один и тот же файл dBase могли
|
||
с лёгкостью испортить базу. Такое может произойти даже и в dbase 7.0.0+ на системах,
|
||
которые реализуют блокировку на уровне процесса с многопоточными SAPI.
|
||
</para>
|
||
</caution>
|
||
<para>
|
||
База данных dBase является просто последовательностью файлов с фиксированной длиной записи.
|
||
Записи добавляются в конец файла и удалённые записи будут (физически)
|
||
хранится до вызова <function>dbase_pack</function>.
|
||
</para>
|
||
<para>
|
||
Поддерживаются только dbf-файлы уровня 3 (dBASE III+) - 5 (dBASE V).
|
||
Доступные типы полей dBase:
|
||
<table>
|
||
<title>Типы полей</title>
|
||
<tgroup cols="3">
|
||
<thead>
|
||
<row>
|
||
<entry>Поле</entry>
|
||
<entry>dBase тип</entry>
|
||
<entry>Формат</entry>
|
||
<entry>Дополнительная информация</entry>
|
||
</row>
|
||
</thead>
|
||
<tbody>
|
||
<row>
|
||
<entry><literal>M</literal></entry>
|
||
<entry>Memo</entry>
|
||
<entry>n/a</entry>
|
||
<entry>Тип не поддерживается PHP, такое поле будет игнорироваться</entry>
|
||
</row>
|
||
<row>
|
||
<entry><literal>D</literal></entry>
|
||
<entry>Date</entry>
|
||
<entry><literal>YYYYMMDD</literal></entry>
|
||
<entry>Длина поля ограничена 8</entry>
|
||
</row>
|
||
<row>
|
||
<entry><literal>T</literal></entry>
|
||
<entry>DateTime</entry>
|
||
<entry><literal>YYYYMMDDhhmmss.uuu</literal></entry>
|
||
<entry>(FoxPro) Проверка на корректность не производится. Доступно с dbase 7.0.0.</entry>
|
||
</row>
|
||
<row>
|
||
<entry><literal>N</literal></entry>
|
||
<entry>Number</entry>
|
||
<entry>Число</entry>
|
||
<entry>
|
||
Вы должны указать длину и точность (количество цифр
|
||
после десятичной точки).
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry><literal>F</literal></entry>
|
||
<entry>Float</entry>
|
||
<entry>Число с плавающей точкой</entry>
|
||
<entry>То же, что и <literal>N</literal>.</entry>
|
||
</row>
|
||
<row>
|
||
<entry><literal>C</literal></entry>
|
||
<entry>String</entry>
|
||
<entry>A string</entry>
|
||
<entry>Вы должны указать длину. При получении данных, строка
|
||
будет дополнена справа пробелами до заявленной длины. Более длинные строки
|
||
будут обрезаны без предупреждения.</entry>
|
||
</row>
|
||
<row>
|
||
<entry><literal>L</literal></entry>
|
||
<entry>Boolean</entry>
|
||
<entry>
|
||
<literal>T</literal> или <literal>Y</literal> для &true;,
|
||
<literal>F</literal> или <literal>N</literal> для &false;,
|
||
<literal>?</literal> - не инициализировано.
|
||
</entry>
|
||
<entry>
|
||
С dbase 7.0.0, возвращается как <type>bool</type> (&true; или &false;),
|
||
или &null; для не инициализированных полей.
|
||
Ранее возвращалось как <type>int</type> (<literal>1</literal> или <literal>0</literal>).
|
||
</entry>
|
||
</row>
|
||
</tbody>
|
||
</tgroup>
|
||
</table>
|
||
</para>
|
||
<note>
|
||
<para>
|
||
Начиная с dbase 7.0.0 поддерживаются обнуляемые поля
|
||
для баз данных <constant>DBASE_TYPE_FOXPRO</constant>. Если поле
|
||
обнуляемое. При передаче &null; будет установлен
|
||
соответствующий флаг и, при дальнейшем извлечении
|
||
поля, будет возвращено значение &null;.
|
||
</para>
|
||
</note>
|
||
<note>
|
||
<para>
|
||
Поддержки для индексов и 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
|
||
-->
|