Поиск:

Ответ в темуСоздание новой темы Создание опроса
> имеется файлы DBF 
:(
    Опции темы
gudini
Дата 2.10.2014, 11:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 2.10.2014

Репутация: нет
Всего: нет



 smile 

Это сообщение отредактировал(а) gudini - 2.10.2014, 12:25
PM MAIL   Вверх
Akina (Online)
Дата 2.10.2014, 11:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20393
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 1
Всего: 449



Цитата

      INDEX <ключ. выр> TO <имя файла>/(<вырС>)

Аргументы:

    <ключ.  выр.>  выражение для каждой записи базы данных помещаемое как
    значение  ключа  в  индексный  файл.  Максимальная  длина  индексного
    ключевого выражения 250 символов.

    <имя  файла> имя создаваемого индексного файла, обычно, с расширением
    (.ntx ). Однако, если вы скомпануете программу с модулем  NDX.OBJ  то
    для  того  чтобы  использовать совместимые с dBASE III PLUS индексные
    файлы, у них будет расширение (.ndx ).

Применение:

    При использовании индексного файла записи базы  данных  появляются  в
    порядке  следования  ключевых  выражений для этих записей. Физический
    порядок следования записей в базе данных не изменяется. Это позволяет
    вам создавать и поддерживать  много  логических  порядков  следования
    записей в базе данных.

    Clipper  применяет  вариант схемы В деревьев для индексации записей с
    индексной  страницей  в  1024  байт.  Файл  .ntx  содержит  указатель
    индексов,  сообщающий  системе какое индексное выражение применяется,
    где " вершина дерева " и т.д. К тому же, Clipper имеет  указатель  на
    место  в файле, где находится страница, обрабатываемая последней. Как
    только вы модифицируйте ключевое выражение, старый ключ будет заменен
    на новое значение. Иногда  страницы  становятся  пустыми.  Когда  это
    случается  Clipper  запоминает  указатель  в  блоке  управления,  что
    позволяет  ему  использовать  снова   это   место,   если   возникает
    необходимость создания страницы.

    Записи,  помеченные для уничтожения и отфильтрованные тоже включаются
    в индексный файл.

    Индексирование по дате: Clipper поддерживает индексацию по  дате  для
    обоих  типов  индексных  файлов  (.ntx  )  и  (.ndx  ). Для ключевого
    выражения, содержащего дату, как часть  всего  выражения,  создавайте
    строковые  выражения  с  помощью  функции  DTOS() для перевода даты в
    символьную строку. Например:

                USE Invoices
                INDEX ON Customer + DTOS(Inv_data) TO Invoice

    Индексирование по убыванию: Для  создания  индекса  по  убыванию  или
    убывающего  подмножества  можно  использовать  функцию DESCEND(). Эта
    функция принимает  как  аргумент  данные  любого  типа  и  возвращает
    значение   наоборот.   Например,   этот  фрагмент  программы  создает
    индексный файл счетов в убывающем фронологическом порядке:

                USE Invoices
                INDEX ON Customer+DESCEND(DTOS(Inv_data)) TO Inv_stack

    Помните   о   необходимости   применения    во    время    выполнения
    последовательного  поиска  функции  DESCEND() как части выражения для
    команды SEEK.

    Совместимость  индексных  файлов:   Clipper   поддерживает   создание
    уникальных  индексов  по команде SET UNIQUE. Когда указано UNIQUE ON,
    Clipper добавляет только уникальные индексы в  создаваемый  индексный
    файл.   Помните,  однако,  что  команда  UNIQUE  является  не  только
    атрибутом индексного  файла,  но  и  относится  к  выполнению  других
    команд.  Это  значит,  что когда установлено UNIQUE OFF, то все ключи
    (не только  уникальные  )  будут  добавлены  к  индексам,  даже  если
    индексный  файл  создавался  в  режиме  UNIQUE ON. И, наоборот, когда
    установлено UNIQUE ON, то в открытых индексных файлах исправляются не
    только уникальные ключи.

    Функция TRIM() в ключевом выражени: Размер индексного ключа в Clipper
    вычисляется по оценке ключевого выражения для пустой записи.  Поэтому
    функция  TRIM()  в любой части ключевого выражения, содержащего поля,
    всегда  оценивается  как  нулевая  строка.  Это  может   привести   к
    несоответствию  размеров  между желаемой и определяемой длиной ключа.
    Однако, вы можете построить индексный ключ, используя функцию  TRIM()
    для  полей,  чтобы  убрать  лишние  пробелы до размера ключа, равного
    длине приводимого в порядок поля. Например, пусть вы имеете два  поля
    с   именами   Last   и   Fist   длиной   в  20  символов.  Вы  хотите
    проиндексировать по следующему выражению:

                TRIM(Last) + First

                Действительное же выражение для INDEX ON будет таким:

                SUBSTR(TRIM(Last) + First + SPACE(20), 1, 40 )

    Помните,  TRIM()  в  индексных  файлах  не  экономит  место.  Clipper
    распределяет   место   для   ключей   фиксированного   пририщения   и
    использование функции  TRIM()  только  производит  беспорядок.  Чтобы
    создать  меньшие  по  размеру  индексные  файлы,  использейте меньший
    размер ключа, используя функцию SUBSTR().

Примеры:
                ? TYPE("Branch")
                INDEX ON Branch TO Branch
                *
                ? TYPE("Amount")
                INDEX ON Amount TO Amount
                * TYPE("Date")
                INDEX ON Date TO Date




--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
Google
  Дата 22.5.2019, 12:59 (ссылка)  





  Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Foxpro/Clipper/Dbase"
MoLeX

Запрещается!

1. Публиковать ссылки для чисто рекламных целей.

2. Оффтопить, флеймить, говорить не культурно.

Пожалуйста, адекватно задавайте свой вопрос. Тема должна создаваться с названием характеризующем Вашу проблему.

Задавайте вопросы правильно - как спросите, так вам и ответят.

Разрешено!

Давать ссылки на статьи, обзоры, если это не нарушает первый пункт правил.

Задавая вопрос, давайте нужную информацию касающуюся Вашей проблемы. Этим вы ускорите полезные ответы.

P.S. Размещение рекламы будет строго наказываться!



Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, MoLeX

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Foxpro/Clipper/Dbase | Следующая тема »


 




[ Время генерации скрипта: 0.0706 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.