powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / integer-поля и SET KEY TO
7 сообщений из 7, страница 1 из 1
integer-поля и SET KEY TO
    #32651769
mrSmith
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
вопрос к знатокам по VFP6:

в таблице есть поле типа integer. делаю по нему индекс. устанавливаю SET KEY TO <int> и получаю существенное торможение при попытке вызвать BROWSE.
если делаю индекс по STR(<поле>) и SET KEY TO <chr>, BROWSE открывается моментально.

я чего-то не понимаю?
...
Рейтинг: 0 / 0
integer-поля и SET KEY TO
    #32652350
XAndy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
авторделаю по нему индекс.

Все зависит именно от того, по какому выражению делается индекс.
Если index on <поле> tag <тег>, то set key to <int>
Если index on str(<поле>) tag <тег>, то set key to str(<int>)
Тогда будет все Ok
...
Рейтинг: 0 / 0
integer-поля и SET KEY TO
    #32652433
mrSmith
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
вариант
"Если index on <поле> tag <тег>, то set key to <int>"

почему-то работает существенно медленнее, чем вариант
"Если index on str(<поле>) tag <тег>, то set key to str(<int>)"

не могу понять из-за чего.
...
Рейтинг: 0 / 0
integer-поля и SET KEY TO
    #32652787
Burn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Учитывая, что фокс хранит свои индексные ключи в символьном виде то ничего удивительного - не тратится время на преобразование
...
Рейтинг: 0 / 0
integer-поля и SET KEY TO
    #32653672
mrSmith
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
проверил:

если в качестве индексного выражения беру <int поле> или BINTOC(<int поле>), то размер индексного файла получается одинаковый и при этом меньше, чем размер индексного файла по выражению STR(<int поле>,5) - т.е. индексные ключи для integer-полей хранятся по-видимому в 4-байтовой последовательности как и сами поля.

по идее никаких лишних преобразований быть не должно.
...
Рейтинг: 0 / 0
integer-поля и SET KEY TO
    #32653682
mrSmith
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
забавно еще то, что командой BROWSE KEY <число> окно открывается моментально и не тормозит при просмотре, а последовательностью команд SET KEY TO <число> и BROWSE NORMAL тормозит хуже, чем если использовать SET FILTER
...
Рейтинг: 0 / 0
integer-поля и SET KEY TO
    #32655547
Urri
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторзабавно еще то, что командой BROWSE KEY <число> окно открывается моментально и не тормозит при просмотре, а последовательностью команд SET KEY TO <число> и BROWSE NORMAL тормозит хуже, чем если использовать SET FILTER

Несколько неожиданное поведение... Не верится... Что-то не так.
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / integer-поля и SET KEY TO
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]